1. 程式人生 > >mySql資料庫外來鍵約束條件

mySql資料庫外來鍵約束條件

[CONSTRAINT symbol] FOREIGN KEY [id] (index_col_name, ...)
    REFERENCES tbl_name (index_col_name, ...)
    [ON DELETE {RESTRICT | CASCADE | SET NULL | NO ACTION | SET DEFAULT}]
    [ON UPDATE {RESTRICT | CASCADE | SET NULL | NO ACTION | SET DEFAULT}]
該語法可以在 CREATE TABLE 和 ALTER TABLE 時使用,如果不指定CONSTRAINT symbol,MYSQL會自動生成一個名字。
ON DELETE、ON UPDATE表示事件觸發限制,可設引數:
RESTRICT(限制外表中的外來鍵改動)
CASCADE(跟隨外來鍵改動)c
SET NULL(設空值)
SET DEFAULT(設預設值)
NO ACTION(無動作,預設的)

相關推薦

mySql資料庫外來約束條件

[CONSTRAINT symbol] FOREIGN KEY [id] (index_col_name, ...)     REFERENCES tbl_name (index_col_name, ...)     [ON DELETE {RESTRICT | CASCADE | SET NULL | NO

MySQL資料庫--外來約束外來使用

什麼是主鍵、外來鍵 關係型資料庫中的一條記錄中有若干個屬性,若其中某一個屬性組(注意是組)能唯一標識一條記錄,該屬性組就可以成為一個主鍵。 比如: 學生表(學號,姓名,性別,班級) 其中每個學生的學號是唯一的,學號就是一個主鍵 課程

mysql外來約束條件及注意事項

在使用mysql的外來鍵約束時,很多人都會在建立外來鍵時失敗,究其原因,有以下四種: 1.建立外來鍵時,你的儲存引擎應該支援外來鍵並且外表(含有外來鍵的表)和從表(引用外來鍵列的表)的列所使用的儲存引

mysql外來約束

1.什麼是外來鍵   A表的主鍵,在B表中欄位出現,就是外來鍵。 2.什麼是約束:約束是一種限制,它通過對錶的行貨列的資料做出限制,來確保表的資料的完整性、唯一性。   3.以上1和2結合一起就是外來鍵約束。即:foreign key   4.具體操作 4.1建立表時,同時建

【轉】MySQL資料庫 外來、檢視、儲存過程、觸發器的優缺點

https://www.yiibai.com/mysql/introduction-sql-views.html 檢視 使用資料庫檢視的優點 資料庫檢視允許簡化複雜查詢:資料庫檢視由與許多基礎表相關聯的SQL語句定義。 您可以使用資料庫檢視來隱藏終端使用者和外部應用

mysql 新增外來約束報錯 1452

利用MySQL WorkBench為一張表的欄位新增一個外來鍵約束: INSERT INTO `se`.`book` (`ISBN`, `Title`, `AuthorID`, `Publisher`, `PublishDate`, `Price`) VAL

關閉資料庫外來約束

本文的測試環境是: MySQL 5.5.16 Microsoft SQL Server 2008 R2 (SP2) Oracle Database 11g Enterprise Edition Release 11.2.0.1.0

使用Navicat for mysql新增外來約束

先介紹一下基本情況: 現在有兩個表一張是t_blog表(部落格表),一張是t_blogType表(部落格類別) 現在我想把t_blog表中的typeID屬性設定為外來鍵,關聯t_blogType表中的

mysql 設定外來約束(foreign key)

   建立外來鍵約束可以採用列級約束語法和表級約束語法,如果僅僅對單獨的一個數據列建立外來鍵約束,則使用列級約束語法即可;如果需要對多個列組合建立外來鍵約束,或者需要為外來鍵約束指定名字則必須使用表級約束語法。        使用列級約束語法建立外來鍵約束直接使用ref

mysql 新增外來約束時,提示語法錯誤

對於mysql新增外來鍵約束時,提示語法錯誤的很令人抓狂,這裡我將我遇到的情況分享一下,因為截至發稿,好像還見有人遇過 首先我們要確認一下新增外來鍵約束格式 ALTER TABLE 從表名 ADD CONSTRAINT 外來鍵名 FOREIGN KEY (從表外來鍵)

mysql新增外來約束的兩種方式(重要)

-- 新增外來鍵約束 CREATE TABLE stu(     sid INT PRIMARY KEY,     NAME VARCHAR(50) NOT NULL ); -- 新增外來鍵約束方式一

資料庫MySQL之如何使用外來約束

資料庫MySQL之如何使用外來鍵約束? 文章目錄 1. 外來鍵約束的使用要求: 2. 測試: 1. 外來鍵約束的使用要求: 父表和子表必須使用相同的儲存引擎,不能使用臨時表 資料儲存引擎必須為INNODB型別 外

資料庫MySQL之如何刪除主、唯一和外來約束

如何刪除主鍵、唯一和外來鍵約束? 文章目錄 如何刪除主鍵、唯一和外來鍵約束? 刪除約束 1. 刪除主鍵約束: 2. 刪除唯一約束: 3. 刪除外來鍵約束: 刪除約束 約束的 index_n

MySQL資料庫外來約束時使用truncate命令的辦法

MySQL資料庫操作中,Delete與Truncate兩個命令都可以刪除一個數據表中的全部資料,使用辦法分別是: DELETE FROM t_question  TRUNCATE TABLE t_question 但兩種命令對資料表操作後,當新增資料時,實際效果還是不同的。Delete命令只是刪除裡面的

mysql中新增外來約束失敗(cannot add foreign key constraint)

mysql中新增外來鍵約束遇到一下情況:  cannot add foreign key constraint  出現這個問題一般是開發工作者對外來鍵的使用出現了疏忽,我們先清晰一下外來鍵的使用:  1. 外來鍵欄位不能為該表的主鍵;  2. 外來鍵欄位參考欄

建立表、修改表、刪除表的方法 ,建立主約束外來約束、使用者自定義約束的方法 ,建立查詢表的方法及使用截斷表的方法,理解約束資料庫中的作用

撰寫人——軟工二班——陳喜平 – 實驗內容: – 一、建立表 – 建立圖書館管理系統所涉及的表 – 建立產品銷售系統所涉及的表 – 圖書表book(bid,bname,price,qty) – 書庫表lib(lid,lname,address) – 讀者表reader

Mysql外來約束之CASCADE、SET NULL、RESTRICT、NO ACTION

Mysql中有目前只有InnoDB引擎支援外來鍵約束,InnoDB中外來鍵約束定義的語法如下: ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_NAME] (index_col_name, ...

聊聊:資料庫中為什麼不推薦使用外來約束

參考文獻:database.51cto.com/art/201811/587914.htm     想起大學剛畢業的時候,在一家做保險系統二次開發的公司做軟體工程師,那時候我接觸到了他們系統的資料庫,查看了下他們系統使用到的表,並瞭解到他們表之間的關係,發現根

資料庫中為什麼不推薦使用外來約束

原文: https://www.itcodemonkey.com/article/11317.html 外來鍵約束是一種約束,這個約束的存在,會保證表間資料的關係“始終完整”。因此,外來鍵約束的存在,並非全然沒有優點。 比如使用外來鍵,可以 保證資料的完整性和一致性 級聯操

MySQL外來約束_ON DELETE CASCADE/ON UPDATE CASCADE

MySQL通過外來鍵約束實現資料庫的參照完整性,外來鍵約束條件可在建立外來鍵時指定,table的儲存引擎只能是InnoDB,因為只有這種儲存模式才支援外來鍵。 外來鍵約束條件有以下4種: (1)restrict方式:同no action,都是立即檢查外來鍵約束; -