删除一对一关系表

时间:2016-12-08 19:38:26

标签: sql sql-server

我创建了两个1到1的表。 所以一个表有另一个外键。

我怎样才能放下桌子?我在创建表时没有使用删除级联。

所以我要么以某种方式改变它,或IDK ..

我做到了。

CREATE TABLE hotel(
id_hotel
...

)

CREATE TABLE Manager(
ID_Manager
...
id_hotel FOREIGN KEY ...
)

然后我添加了

ALTER TABLE Hotel ADD id_manager INT NOT NULL;
ALTER TABLE Hotel ADD FOREIGN KEY (id_manager) REFERENCES Manager(id_manager);

1 个答案:

答案 0 :(得分:0)

首先必须在列中删除带有外键的表格,例如:如果您有两个实体,一个名为driving_license而另一个人,并且您将人员的ID存储在表driving_license中,则必须先删除表driving_license

或者如果您使用的是MySQL:您可以写:

SET_FOREIGN_KEY_CHECKS=0;

//Drop however you want

SET_FOREIGN_KEY_CHECKS=1

对于MSSQL,您可以使用:

ALTER TABLE <yourtablename> NOCHECK CONSTRAINT ALL

然后放下你的桌子