[英]SQL Alter Table Foreign key On Delete
我的數據庫中有一個名為 trains 的表,其中包含以下列:
id
號、 name
、 station
。
站是其他表stations
的外鍵。 當我從stations
中刪除某些特定行時,由於trains
引用了該表,因此出現錯誤。 因此,我嘗試做的是在trains
上執行alter table
並將on delete set null
屬性添加到station
列,如下所示:
alter table trains alter column station on delete set null;
但是,這似乎是錯誤的語法,我找不到正確的語法,這樣就可以在不刪除整個表並再次創建它的情況下做到這一點(所以我需要使用這個alter
命令)。
如果您使用的是 SQL 服務器,則無法更改外鍵約束以添加刪除。 首先刪除約束,然后創建一個新約束。
ALTER TABLE trains
DROP CONSTRAINT constraintname;
ALTER TABLE trains
ADD CONSTRAINT fk_station
FOREIGN KEY (child_column_name)
REFERENCES stations(parent_column_name)
ON DELETE CASCADE;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.