當前位置:首頁 » 編程語言 » sql中怎麼啟用外鍵約束
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql中怎麼啟用外鍵約束

發布時間: 2022-07-26 09:57:50

『壹』 怎麼在sql中設置外鍵

sql server中建立外鍵約束有3中方式:enterprise manager中,tables,design table,設置table的properties,可以建立constraint, reference key;enterprise manager中,diagrams, new diagrams,建立兩個表的關系;直接用transact sql語句。

1、三個方法都需要先建立數據表。

1)創建表author :

create table [dbo].[author] (
[id] [bigint] not null ,
[authorname] [char] (10) null ,
[address] [char] (480) null ,
[introction] [ntext] null
)

2)創建表mybbs:

reate table [dbo].[mybbs] (
[id] [bigint] identity (1, 1) not null ,
[authorid] [bigint] not null ,
[title] [char] (40) null ,
[date_of_created] [datetime] null ,
[abstract] [char] (480) null ,
[content] [ntext] null
)

2、設置表mybbs中的authorid為外鍵,參照author表的id欄位,直接使用transact sql語句,過程如下:

1)增加表mybbs(authorid)的外鍵約束fk_mybbs_author,表mybbs中的authorid受表author中的主鍵id約束:

begin transaction
alter table dbo.mybbs add constraint fk_mybbs_author
foreign key (authorid)
references dbo.author([id]) on update cascade on delete cascade

2)刪除外鍵約束fk_mybbs_author:
--alter table dbo.mybbs drop constraint fk_mybbs_author
--rollback
commit transaction

上面on update cascade,on delete cascade兩個選項,指明以後author表的id欄位有delete,update操作時,mybbs表中的id也會被級聯刪除或更新。如果沒有選中,是不可以對author表中已被mybbs表關聯的id進行update或者delete操作的。

拓展資料:

SQL的主鍵和外鍵的作用:

1、插入非空值時,如果主鍵表中沒有這個值,則不能插入。

2、更新時,不能改為主鍵表中沒有的值。

3、刪除主鍵表記錄時,你可以在建外鍵時選定外鍵記錄一起級聯刪除還是拒絕刪除。

4、更新主鍵記錄時,同樣有級聯更新和拒絕執行的選擇。

簡而言之,SQL的主鍵和外鍵就是起約束作用。

『貳』 SQL中如何為表添加外鍵約束

-〉INDEX
(category_id),

->
FOREIGN
KEY
(category_id)
REFERENCES
categories
(category_id),

->
CONSTRAINT
fk_member
FOREIGN
KEY
(member_id)
REFERENCES
members
(member_id),

->
PRIMARY
KEY(article_id)
範例中的添加外鍵約束就是這種形式
如果是概念的問題,直接參考書籍,一般添加外鍵約束,主要在創建表中.

『叄』 在SQL中什麼是外鍵,怎樣建立外鍵約束

外鍵約束一般是指這個這個欄位的值只能在另外一個欄位(外鍵)裡面選擇,他的取值范圍只能是另外一個欄位裡面的

『肆』 sql語句添加外鍵約束。

外鍵關系通俗來講就是將兩個表關聯起來用的
以學生和班級來舉例子
新建一個學生表student
新建一個班級表 grade

然後每個學生,都對應一個班級,比如學生A是X班,學生B也是X班,就沒必要在學生表裡面存儲重復的班級名稱,因此需要一個班級表
只要存儲一個班級表的id,就可以記錄該學生班級的所有詳細信息了
關聯起來顯示就是:
select * from student, grade where student.gradeId = grade.id
通過外鍵關聯,顯示學生信息和班級信息的所有數據,並根據外鍵進行一一匹配

『伍』 請問怎麼在SQL中設置外鍵

sql ce表中建立外鍵約束的語法:CREATE TABLE DetectTable(UserID integer,StartTime datetime not null,EndTime datetime not null,MassName nvarchar(10), foreign key (UserID) references UserTable(UserID)),其中,UserID為UserTable表中的主鍵。
也可以在創建資料庫關系圖直接拖
在資料庫關系圖上右鍵--新建關系圖--添加表然後直接用滑鼠拖欄位連接就可以建立外鍵約束了

『陸』 在SQL中如何創建外鍵約束

可以用創建關系圖的方式進行約束,步驟如下
企業管理器中打開資料庫,新建關系圖,選出自己所要的幾張表,然後將對應的外鍵用滑鼠連接到另一張表的主鍵上就行了
ps
環境
sql2000

『柒』 sql創建表時設置外鍵約束

在近幾年的實際的項目中,創建表的時候一般不會使用真正意義上的物理主外鍵來關聯兩個表。而是在業務上通過邏輯上的主外鍵進行關聯。
以前的軟體架構中偏向於使用主外鍵,在創建表的時候就直接指定某個表的某個欄位,引用另外一個表的主鍵。現在很少這樣做了。

『捌』 求助sql sever高手如何創建外鍵並約束!分不是問題

1、可以建立資料庫關系圖,把要關聯的表拖進去,讓後然後把一張表的主鍵拖到另一個張表所要的外鍵上,點擊保存就可以了2,用代碼生成:alter table 外鍵表名字 add constraint 主外間關系名字 foreign key (外鍵欄位) references 主鍵表([主鍵])

『玖』 怎樣在用sql語句創建表的同時添加外鍵約束

像下面這樣就好了,FOREIGN KEY(外鍵) REFERENCES 表名(欄位)
FOREIGN KEY (`operatorid`) REFERENCES `jr_operator` (`id`)