日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

我对外键的回忆

發布時間:2025/3/15 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 我对外键的回忆 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
添加外鍵:(注意:constraint前面沒得add,add是alter的時候才會有的)
CONSTRAINT stu_class_fk
FOREIGN KEY(stu_id)
REFERENCES stu_class(id)
ON UPDATE CASCADE
ON DELETE CASCADE


在添加外鍵的時候,必須保證外鍵到的主表的字段為unique的,或者是primary key。






CREATE TABLE stu_class(
id INT ?UNIQUE

);


CREATE TABLE student(
class_id INT,
CONSTRAINT stu_class_fk
FOREIGN KEY(class_id)
REFERENCES stu_class(id)
ON UPDATE CASCADE
ON DELETE CASCADE
);




INSERT INTO stu_class VALUE(1), (2), (3);
INSERT INTO student VALUE(1), (1), (2), (2), (3), (3);?


-- 刪除主表中的數據,因為級聯刪除,從表中的數據沒有了。
DELETE FROM stu_class WHERE id = 1;


-- 刪除從表中的數據,主表并不會受到影響
DELETE FROM student WHERE class_id = 2;


-- 修改主表中的數據,因為級聯修改,從表中的數據一起修改了。
UPDATE stu_class SET id = 5 WHERE id = 3;


-- 從表中的數據是不能修改的!
UPDATE student SET id = 2 WHERE id = 5;
-- 包括很多時候我們設置了主鍵自增長,沒有辦法truncate從表中的自增長記錄
-- 只能通過先設置外鍵為0,再設置外鍵為1
-- 額外補充:其實在mysql中是沒有boolean 類型的,所有boolean的值都是被轉化成0和1:0f,1t。
SET FOREIGN_KEY_CHECKS = 0;
SET FOREIGN_KEY_CHECKS = 1;

轉載于:https://www.cnblogs.com/mzywucai/p/11053494.html

總結

以上是生活随笔為你收集整理的我对外键的回忆的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。