sql语句中创建table的问题~

以下语句不懂:CREATETABLEpublishers(pub_idchar(4)NOTNULLCONSTRAINTUPKCL_pubindPRIMARYKEYCLUS... 以下语句不懂:
CREATE TABLE publishers
( pub_id char(4) NOT NULL CONSTRAINT UPKCL_pubind
PRIMARY KEY CLUSTERED
CHECK (pub_id IN ( '1389', '0736', '0877', '1622', '1756')
OR
pub_id LIKE '99[0-9][0-9]‘ ),
我刚学,请详细解释,谢谢!
这几个参数:CONSTRAINT UPKCL_pubind
PRIMARY KEY CLUSTERED
CHECK
分别代表什么?
通过clustered创建了聚集索引是什么意思?
有什么用?
展开
 我来答
闫干8P
2006-12-21 · 超过38用户采纳过TA的回答
知道小有建树答主
回答量:191
采纳率:0%
帮助的人:0
展开全部
定义表约束。
CONSTRAINT 约束定义的开始
UPKCL_pubind 约束名
PRIMARY KEY
是通过唯一索引对给定的一列或多列强制实体完整性的约束。对于每个表只能创建一个 PRIMARY KEY 约束。
CLUSTERED | NONCLUSTERED
是表示为 PRIMARY KEY 或 UNIQUE 约束创建聚集或非聚集索引的关键字。PRIMARY KEY 约束默认为 CLUSTERED,UNIQUE 约束默认为 NONCLUSTERED。
在 CREATE TABLE 语句中只能为一个约束指定 CLUSTERED。如果在为 UNIQUE 约束指定 CLUSTERED 的同时又指定了 PRIMARY KEY 约束,则 PRIMARY KEY 将默认为 NONCLUSTERED。

CHECK 约束
意思:
创建一个名为publishers表字段名为pub_id长度为4的字符型。
表的约束名为 UPKCL_pubind的聚集索引的关键字约束。
约束内容:pub_id字段值是在('1389', '0736', '0877', '1622', '1756')内或'9900'到‘9999’之间的值。

参考资料: http://hi.baidu.com/fxqj104/blog/item/27c6c2b4325456738ad4b212.html

百度网友5c91d28
2006-12-20 · TA获得超过5084个赞
知道大有可为答主
回答量:1916
采纳率:50%
帮助的人:1715万
展开全部
这个语句是在创建的publishers表上同时创建主键和取值约束,并在主键上创建聚集索引。
CONSTRAINT UPKCL_pubind 是创建名称为UPKCL_pubind的约束,由于其后边还跟着PRIMARY KEY 说明这个约束是一个主键约束,clustered说明是聚集索引。
check后边是对字段pub_id的取值约束,限定所插入的bub_id值必须在给定的值里('1389', '0736', '0877', '1622', '1756')或着取值是以99开头3、4位是数字,如果插入值与上述条件不符,就会无法插入。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式