SQLServer外键约束与建立外键约束的方案

我们今天主要向大家介绍的是SQL Server外键约束与SQL Server建立外键约束的3种方案的介绍,我前两天在相关网站看见SQL Server建立外键约束的3种方案的资料,觉得挺好,就拿出来供大家分享。

1.Enterprise Manager中,Tables,Design Table,设置Table的properties,

可以建立constraint, reference key;

2.Enterprise Manager中,Diagrams, new Diagrams,建立两个表的关系。

3.直接用transact sql语句。

三个方法都需要先建立数据表。

创建表author :

 
 
 
  1. CREATE TABLE [dbo].[author] (  
  2. [ID] [bigint] NOT NULL ,  
  3. [AuthorName] [char] (10) NULL ,  
  4. [address] [char] (480) NULL ,  
  5. [introduction] [ntext] NULL   
  6. )  

创建表myBBS:

 
 
 
  1. REATE TABLE [dbo].[myBBS] (  
  2. [ID] [bigint] IDENTITY (1, 1) NOT NULL ,  
  3. [authorId] [bigint] NOT NULL ,  
  4. [Title] [char] (40) NULL ,  
  5. [Date_of_Created] [datetime] NULL ,  
  6. [Abstract] [char] (480) NULL ,  
  7. [Content] [ntext] NULL   
  8. )  

设置表myBBS中的authorId为外键,参照author表的Id字段,直接使用transact sql语句,过程如下:

增加表mybbs(authorId)的SQL Server外键约束FK_mybbs_author,表myBBS中的authorId受表author中的主键ID约束:

 
 
 
  1. BEGIN TRANSACTION  
  2. alter table dbo.mybbs add constraint FK_mybbs_author  
  3. foreign key (authorId)  
  4. references dbo.author([id]) ON UPDATE CASCADE ON DELETE CASCADE 

删除SQL Server建立外键约束FK_mybbs_author:

 
 
 
  1. alter table dbo.mybbs drop constraint FK_mybbs_author  
  2. rollback   
  3. commit transaction 

上面ON UPDATE CASCADE,ON DELETE CASCADE两个选项,指明以后author表的id字段有delete,update操作时,myBBS表中的id也会被级联删除或更新。如果没有选中,是不可以对author表中已被myBBS表关联的id进行update或者delete操作的。

网页名称:SQLServer外键约束与建立外键约束的方案
网站地址:http://www.shufengxianlan.com/qtweb/news24/376024.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联