2011-04-30 4 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 유타 나는 테이블 의 많은 데이터베이스를 가지고 있고 다른 테이블 이후 외래 키를 가지고 있고, 나는 모든 행이 함께 relationed되어 들어 너무

답변

1

당신의 외래 키 제약 조건에 ON DELETE CASCADE을 추가, 삭제, 행을 삭제하려면 . 이 방법

+0

입니까? 나는 그것에 대해 결코 들어 본 적이 없다 – angel

+0

'외래 키 (col2) 참조 테이블 1 (column1) 삭제 캐스케이드 ' – Vache

+0

다른 형태가 쉽게 없습니까? 나는 데이터베이스를 편집하지 않는다. 친구는 코드와 관련하여, 모든 행을 삭제했다. 나는 코드가 무엇인지 모른다. @domsterr – angel

관련 문제