Ras*_*wla 18 sql-server sql-server-2008
Create table FavoriteDish
(
FavID int identity (1,1) primary key not null,
DishID int references Dishes(DishID) not null ,
CelebrityName nvarchar(100) nonclustered not null
)
Run Code Online (Sandbox Code Playgroud)
这导致了
关键字'nonclustered'附近的语法不正确.
我提到了创建表语法的MSDN帮助.我不确定这里有什么不对.
edo*_*oft 19
实际上,在线图书中的帮助确实提到了关键字CLUSTERED,但它仅与UNIQUE或PRIMARY KEY约束相关.这两个约束都会创建索引,您可以指定该索引是集群还是非集群.
您无法使用该语法来创建标准的非聚集索引.
Create table FavoriteDish
(
FavID int identity (1,1) primary key not null,
DishID int references Dishes(DishID) not null ,
CelebrityName nvarchar(100) constraint ux_CelebrityName unique NONCLUSTERED not null
)
Run Code Online (Sandbox Code Playgroud)
Svi*_*ack 14
擦除此非聚集关键字并使用CREATE INDEX语句向此表添加索引,此文档可以读入:
http://msdn.microsoft.com/en-us/library/ms188783.aspx
语法在这里:
CREATE [ UNIQUE ] [ CLUSTERED | NONCLUSTERED ] INDEX index_name
ON <object> ( column [ ASC | DESC ] [ ,...n ] )
[ INCLUDE ( column_name [ ,...n ] ) ]
[ WHERE <filter_predicate> ]
[ WITH ( <relational_index_option> [ ,...n ] ) ]
[ ON { partition_scheme_name ( column_name )
| filegroup_name
| default
}
]
[ FILESTREAM_ON { filestream_filegroup_name | partition_scheme_name | "NULL" } ]
[ ; ]
Run Code Online (Sandbox Code Playgroud)
代码在这里:
CREATE NONCLUSTERED INDEX index_clustered ON FavoriteDish(CelebrityName asc)
Run Code Online (Sandbox Code Playgroud)