在建立数据库的时候如何创建一个非唯一性索引?最好是具体操作

做计算机作业崩溃了、、

第1个回答  2011-11-01
一个外键也可以被指定引用一个没有命名目标列的目标表。在这种情况下,目标表的主键列被用作引用列。任何外键中的一对引用和被引用的列应该具有相同的数据库类型。当声明了一个外键时,主键表被引用的列必须具有一个唯一性约束(或主键),而在引用列里会自动创建一个非唯一性索引。例如:

CREATE TABLE child(c1 INTEGER, c2 VARCHAR, FOREIGN KEY (c1, c2) REFERENCES parent(p1, p2));

parent表中的 (p1,p2) 列一定存在一个唯一性约束。child表中的(c1,c2)列会自动生成一个非唯一性索引。p1和c1列一定具有相同的类型(INTEGER),p2和c2列一定具有相同的类型(VARCHAR)。
第2个回答  2020-04-24
语法:
CREATE
[索引类型]
INDEX
索引名称
ON
表名(列名)
WITH
FILLFACTOR
=
填充因子值0~100
GO
/*实例*/
USE
库名
GO
IF
EXISTS (SELECT
*
FROM
SYSINDEXES
WHERE
NAME='IX_TEST_TNAME')--检测是否已经存在IX_TEST_TNAME索引
DROP
INDEX TEST.IX_TEST_TNAME--如果存在则删除
--创建索引
CREATE
NONCLUSTERED
INDEX IX_TEST_TNAME --创建一个非聚集索引
ON
TEST(TNAME) --为TEST表的TNAME字段创建索引
WITH
FILLFACTOR
=
30 --填充因子为30%
GOSELECT
*
FROM
TEST(INDEX
=
IX_TEST_TNAME)
WHERE
TNAME
=
'A' --指定按‘IX_TEST_TNAME’索引查询
相似回答