怎麼修改外來鍵

2021-09-19 04:30:03 字數 819 閱讀 2708

設定完外來鍵後,突然想起來應該不應該設成on delete cascade on update cascade的應該是set null的所以就寫篇文章記錄一下這個錯誤。

一般來說只要先刪除外來鍵

alter table 表名 drop foreign key 約束名;
然後再建立外來鍵約束就好了:

alter table sc add constraint foreign_sc_course foreign key(cno) refernces course(cno) on delete set null on update cascade;
然而問題來了我定義外來鍵的時候沒有定義約束名,沒有定義約束名,沒有定義約束名。

最後發現

show create table sc;
| sc    | create table `sc` (

`cno` char(1) not null,

`sno` char(4) not null,

`grade` int(11) default null,

primary key (`cno`,`sno`),

constraint `scc` foreign key (`cno`) references `course` (`cno`) on delete cascade on update cascade

) engine=innodb default charset=utf8 |

接下來就照上面的做就好了。

oracle 外來鍵修改

場景 有時候我們經常需要修改一下資料,但是這個字段關聯著外來鍵,這個時候我們需要首先清楚外來鍵所在的表的數值,然後再修改這個字段值。這時候我們就需要外來鍵查詢了。錯誤如下 根據所報的錯誤,我們查詢資料庫 select from dba constraints t where t.constraint...

mysql設定外來鍵 mysql怎麼增加外來鍵

mysql增加外來鍵的方法 1 在create table語句中,通過foreign key關鍵字來新增外來鍵 2 在alter table語句中,通過add和foreign key關鍵字來新增外來鍵。mysql 外來鍵約束 foreign key 是表的乙個特殊字段,經常與主鍵約束一起使用。對於兩...

mysql怎麼定義外來鍵

建立外來鍵的前提 本表的列必須與外來鍵型別相同 外來鍵必須是外表主鍵 外來鍵作用 使兩張表形成關聯,外來鍵只能引用外表中的列的值!指定主鍵關鍵字 foreign key 列名 引用外來鍵關鍵字 references 外來鍵表名 外來鍵列名 事件觸發限制 on delete和on update 可設引...