在已建有的表中插入主键约束:
(1)
ALTER TABLE priduct1
WITH CHECK ADD
CONSTRAINT pro_id PRIMARY KEY
CLUSTERED (product_id)
go
(2)
ALTER TABLE shiyan1
WITH CHECK ADD
CONSTRAINT pu_id_primary PRIMARY KEY (pu_id)
go
(3)
ALTER TABLE shiyan2 ADD
CONSTRAINT pu_id PRIMARY KEY (pu_id)
go
(4)
alter table shiyan
add primary key (pu_id)
go 以上四种增加主键的方法中 有什么区别,请高手帮忙分析下,谢谢!
请最好以关键字的字眼却别来解析!
(1)
ALTER TABLE priduct1
WITH CHECK ADD
CONSTRAINT pro_id PRIMARY KEY
CLUSTERED (product_id)
go
(2)
ALTER TABLE shiyan1
WITH CHECK ADD
CONSTRAINT pu_id_primary PRIMARY KEY (pu_id)
go
(3)
ALTER TABLE shiyan2 ADD
CONSTRAINT pu_id PRIMARY KEY (pu_id)
go
(4)
alter table shiyan
add primary key (pu_id)
go 以上四种增加主键的方法中 有什么区别,请高手帮忙分析下,谢谢!
请最好以关键字的字眼却别来解析!
解决方案 »
- 高分!!!看上去很简单的问题,但我不会
- 基础问题
- 请教有没有比这更好的SQL语句?有空进来看看
- ALTER PROCEDURE dbo.sp_SearchArticleByTitle对像名无郊是什么意思呢?
- 查询分析器调用EXCEL文件的错误
- 菜鸟诚心求助--关于远程访问SQL及导出EXCEL
- 如何生成这种序号20040801*****,也就是前面是日期,后面是每日增长的序号?
- 求一条SQL语句(在线等)
- mssql server 中 有没有 类似 orcle的select for update wait的语句?
- 唯一編號
- 在将varchar值 'select COUNT(1) from page'转换成数据类型bit时失败
- 请教执行计划的问题
CLUSTERED 聚集
大家想一想,如果我知道这个语法怎么用,那么我也就能区分出来了,呵呵~
还请高手帮忙解析下,关于这个问题 书上没有,是我自己从第一个代码上面分离出来的!
WITH CHECK | WITH NOCHECK指定表中的数据是否用新添加的或重新启用的 FOREIGN KEY 或 CHECK 约束进行验证。如果没有指定,对于新约束,假定为 WITH CHECK,对于重新启用的约束,假定为 WITH NOCHECK。WITH CHECK 和 WITH NOCHECK 子句不能用于 PRIMARY KEY 和 UNIQUE 约束。如果不想用新 CHECK 或 FOREIGN KEY 约束对现有数据进行验证,请用 WITH NOCHECK,除了个别情况,不建议这样使用。新约束将在以后的所有更新中生效。任何在添加约束时由 WITH NOCHECK 抑制的约束违规都可能导致将来的更新失败,如果这些更新操作要更新的行中包含不符合约束条件的数据。查询优化器不考虑用 WITH NOCHECK 定义的约束。将忽略这些约束,直到使用 ALTER TABLE table CHECK CONSTRAINT ALL语句重新启用这些约束为止。
我记得是创建 check 和 foreign key 约束时使用 with check 选项,用于在创建约束时验证表中原有的数据是否满足约束的条件,如果不满足会禁止创建约束。对应的是 with nocheck 选项,表示在创建约束时不验证表中原有的数据。
老兄辛苦了 不过 复制了一大堆东东,貌似还是没有看见讲 集类CLUSTERED这个关键字的代码