ASP.NET学习笔记(八)SQL Server外键约束与唯一约束

现在有三个表:dbo.Admin,dbo.News和dbo.Class,现在dbo.News的username列需要要引用dbo.Admin中的username列为外键,dbo.News的class列则需要引用dbo.Class中的Name列为外键。在建立外键约束前,必须先建立唯一(UNIQUE)约束(UNIQUE),否则就算数据类型相同也不能成功。下面的例子是以dbo.News的class列引用dbo.Class中的Name列为外键为例:

先打开VS2010中菜单栏里的“工具”-“选项”,展开“数据库工具”-“表设计器和数据库设计器”-“表和工具选项”,把“防止保存需要重新创建表的更改一项去掉”(这真是个坑爹的设计,不然,先建好数据库和表,后面的修改都是徒劳的),参考文章:《SQL Server 2008可视化设置外键 》

21101_o

然后再右击dbo.Class的Name列,如下图所示,“添加”,在右侧“类型”一栏选择“唯一键”,然后在紧挨着的“列”中选择Name列名,确定。这样就先建立了唯一(UNIQUE)约束。

21102_o

21103_o

接下来可以建立外键约束了,右击dbo.News中的class列,选择“关系”:

21104_o

然后再“外键关系”窗口中“添加”新项,在右侧“表和列规范”中选择dbo.Class的Name列。

21105_o

21106_o

 

0 Likes
你目前的身份是游客,评论请输入昵称和电邮!

CAPTCHA