데이터베이스에 다음과 같은 두 가지 관계가있는 경우 :
CREATE TABLE Courses (
CourseID int NOT NULL PRIMARY KEY,
Course VARCHAR(63) NOT NULL UNIQUE,
Code CHAR(4) NOT NULL UNIQUE
);
CREATE TABLE BookCourses (
EntryID int NOT NULL PRIMARY KEY,
BookID int NOT NULL,
Course CHAR(4) NOT NULL,
CourseNum CHAR(3) NOT NULL,
CourseSec CHAR(1) NOT NULL
);
다음과 같이 둘 사이에 외래 키 관계를 설정합니다.
ALTER TABLE BookCourses
ADD FOREIGN KEY (Course)
REFERENCES Courses(Code)
ON DELETE CASCADE;
그러면 관계의 속성 Course
이 BookCourses
관계 의 속성을 참조 함을 알 수 있습니다 .Code
Courses
내 질문은 두 관계 중 하나에서 삭제가 발생하면 삭제는 어떻게 진행됩니까? Courses
관계 에서 튜플을 삭제하면 관계의 모든 참조 튜플이 삭제 BookCourses
됩니까 아니면 다른 방법입니까?
혼동을 피하고 DB 구조를 명확하게하려면 적절한 열 이름을 사용하십시오.
—
Gunjan Shah
Categories
테이블이CourseID
기본 키로 왜 테이블을 갖는지 궁금Courses
합니다EntryID
. 네이밍 선택을 진지하게 재고해야합니다.