2011-04-30 51 views
0

例如,如果你有这样的行如何删除一行,如果有外键? SQL

create table table1 
(
column1 int primary key, 
column2 varchar(50), 
column3 varchar(50), 
column4 varchar(50), 
) 

create table tabla2 
(
col1 int primary key, 
col2 int, 
col3 varchar(50), 
foreign key(col2) references table1(column1) 
) 

和例如我有一排

insert into table1(column1,column2,column3,column4) values (1,'a','b','c'); 

insert into table2(col1,col2,col3) values (1,1,'xxx'); 

,我想删除所有这些行(只是)

delete from table1 where colum1=1; 

不起作用,

我知道我可以先删除另一个,之后,b我有一个数据库有很多表 ,他们有一个外键,因为另一个表,我想删除该行,对于所有行都与此有关,也删除

回答

1

ON DELETE CASCADE添加到您的外键约束。

+0

是怎么回事?我从来没有听过 – angel 2011-04-30 00:23:14

+0

'外键(col2)引用table1(column1)删除级联' – Vache 2011-04-30 00:24:42

+0

是不是还有其他任何形式容易吗?为我不编辑数据库我的朋友告诉一个代码,删除所有行关系我不知道代码是什么@ domsterr – angel 2011-04-30 00:26:38