【正确答案】CREATE TABLE课程(
课程号INT IDENTITY(10000,1) PRIMARY KEY,
课程名VARCHAR(20) NOT NULL UNIQUE,
学分TINYINT CHECK(学分>=1 AND 学分<=6)
)
【答案解析】[解析] 对各列分析如下。
(1)课程号:整型且值大于10000,可选择数据类型为bigint、int或smallint,考虑到存储空间,一般选择int型或smallint型;由于是主码,因此要定义主码约束;要求初始值为10000,且每次递增1,在SQLServer中可以使用:IDENTITY来创建一个标识列,其格式为IDENTITY(seed,increment),,其中seed表示初始值,increment表示每次的增量;如果定义某列为标识列(IDENTITY),则不需要再在该列上定义主码约束。
(2)课程名:普通编码变长字符型,数据类型为varchar,长度为20;要求非空且唯一,需要定义非空约束和单值约束。
(3)学分:整型,取值在1~6之间,使用tinyint型;要求值在1~6之间,需要定义检查约束。