Jika saya memiliki dua relasi dalam database, seperti ini:
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
);
dan saya membangun hubungan kunci asing antara keduanya, seperti ini:
ALTER TABLE BookCourses
ADD FOREIGN KEY (Course)
REFERENCES Courses(Code)
ON DELETE CASCADE;
Kemudian Anda dapat melihat bahwa Course
atribut dalam BookCourses
relasi merujuk Code
atribut dalam Courses
relasi.
Pertanyaan saya adalah kapan penghapusan terjadi di salah satu dari dua hubungan tersebut, ke arah mana penghapusan akan terjadi? Jika saya menghapus tuple dalam Courses
relasi, apakah ini akan menghapus semua tupel referensi dalam BookCourses
relasi, atau sebaliknya?
Categories
tabel memilikiCourseID
sebagai Kunci Utama sementaraCourses
tabel memilikiEntryID
. Anda serius perlu memikirkan kembali pilihan penamaan Anda.