[SQL] sqlite3를에서 DELETE CASCADE ON
SQLsqlite3를에서 DELETE CASCADE ON
나는 다음과 같은 구조를 가지고 : (아직 해제되지 않습니다 내 아이폰의 애플 리케이션을위한 SQLite는 데이터베이스이기 때문에 죄송 어색한 이름을, 그것이)
CREATE TABLE klb_log (
id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
log_comment varchar(512)
)
CREATE TABLE klb_log_food_maps (
uid integer,
did integer,
PRIMARY KEY (uid,did),
FOREIGN KEY (uid) references klb_log(id) ON DELETE CASCADE,
FOREIGN KEY (did) references klb_food(id) ON DELETE CASCADE
)
CREATE TABLE klb_food (
id integer,
description varchar(255),
PRIMARY KEY (id)
)
내가 klb_log에서 행을 삭제할 때 klb_log_food_maps에서 행이 제거되지 않는 이유가 있습니까?
해결법
-
==============================
1.외래 키 지원은 기본적으로 SQLite는에 사용할 수 없습니다. 당신은 수동으로이 프라그를 사용하여 데이터베이스에 연결할 때마다 그것을 활성화해야합니다 :
외래 키 지원은 기본적으로 SQLite는에 사용할 수 없습니다. 당신은 수동으로이 프라그를 사용하여 데이터베이스에 연결할 때마다 그것을 활성화해야합니다 :
PRAGMA foreign_keys = ON
-
==============================
2.당신은 외래 키 지원을 활성화해야합니까?
당신은 외래 키 지원을 활성화해야합니까?
쿼리 PRAGMA의 foreign_keys = ON; 를 켭니다
from https://stackoverflow.com/questions/5890250/on-delete-cascade-in-sqlite3 by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] pgAdmin에서 ER 다이어그램을 작성 [폐쇄] (0) | 2020.06.05 |
---|---|
[SQL] MySQL은 : 다른 날짜 필드에 삽입 날짜 (0) | 2020.06.05 |
[SQL] 데이터 정렬 충돌을 해결할 수 없습니다 (0) | 2020.06.05 |
[SQL] 매개 변수가 null 또는 비어있는 저장 프로 시저에 있는지 확인 (0) | 2020.06.05 |
[SQL] 많은 관계로 많은 EntityFramework 같은 표 (0) | 2020.06.05 |