sqlserver外键约束的例子

sqlserver外键约束的例子

ID:34725957

大小:86.68 KB

页数:7页

时间:2019-03-10

sqlserver外键约束的例子_第1页
sqlserver外键约束的例子_第2页
sqlserver外键约束的例子_第3页
sqlserver外键约束的例子_第4页
sqlserver外键约束的例子_第5页
资源描述:

《sqlserver外键约束的例子》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、SQLServer外键约束的例子外键约束的测试表与测试数据-- 创建测试主表. ID 是主键.CREATE TABLE test_main (id      INT,value   VARCHAR(10),PRIMARY KEY(id) ); -- 创建测试子表. CREATE TABLE test_sub (id      INT,main_id INT,value   VARCHAR(10),PRIMARY KEY(id) ); -- 插入测试主表数据.INSERT INTO test_main(id, value) VALUES (1, 'ONE');INSERT INTO test_m

2、ain(id, value) VALUES (2, 'TWO'); -- 插入测试子表数据.INSERT INTO test_sub(id, main_id, value) VALUES (1, 1, 'ONEONE');INSERT INTO test_sub(id, main_id, value) VALUES (2, 2, 'TWOTWO'); 默认外键约束方式1> ALTER TABLE test_sub ADD CONSTRAINT main_id_cons FOREIGN KEY (main_id) REFERENCES test_main;2> go1> DELETE2>   t

3、est_main3> WHERE4>   ID = 1;5> go消息 547,级别 16,状态 1,服务器 HOME-BED592453CSQLEXPRESS,第 1 行DELETE 语句与 REFERENCE 约束"main_id_cons"冲突。该冲突发生于数据库"Stock",表"dbo.test_sub", column 'main_id'。语句已终止。测试完毕后,删除 外键约束ALTER TABLE test_sub DROP CONSTRAINT main_id_cons;   DELETE CASCADE 方式1> -- 创建外键(使用 ON DELETE CASCADE 选

4、项,删除主表的时候,同时删除子表)2> ALTER TABLE test_sub3>   ADD CONSTRAINT main_id_cons4>     FOREIGN KEY (main_id) REFERENCES test_main ON DELETE CASCADE;5>6> -- 测试删除主表数据. 将成功地执行.7> DELETE8>   TEST_MAIN9> WHERE10>   ID = 1;11>12> -- 测试检索子表,应该只有一条 main_id = 2 的数据.13> SELECT14>   *15> FROM16>   test_sub;17>18> go(1

5、 行受影响)id          main_id     value----------- ----------- ----------          2           2 TWOTWO(1 行受影响)测试完毕后,删除 外键约束 ALTER TABLE test_sub DROP CONSTRAINT main_id_cons;   UPDATE CASCADE方式-- 创建外键(使用 ON UPDATE CASCADE 选项,更新主表的主键时候,同时更新子表外键)1> ALTER TABLE test_sub2>    ADD CONSTRAINT main_id_cons3> 

6、     FOREIGN KEY (main_id) REFERENCES test_main ON UPDATE CASCADE;4> go-- 测试更新主表数据. 将成功地执行.1> UPDATE test_main SET id = 5 where id = 12> go(1 行受影响)-- 检查 子表 数据是否被同步更新1> select * from test_sub2> goid          main_id     value----------- ----------- ----------          1          5 ONEONE          2  

7、         2 TWOTWO测试完毕后,删除 外键约束 ALTER TABLE test_sub DROP CONSTRAINT main_id_cons;    SET NULL方式1> -- 创建外键(使用 ON DELETE SET NULL 选项,删除主表的时候,同时将子表的 main_id 设置为 NULL)2> ALTER TABLE test_sub3>   ADD CONST

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。