Dòng:
FOREIGN KEY (pk_studentID ) REFERENCES student(pk_studentID ),
là sai. Bạn không thể sử dụng pk_studentID
như vậy, đây chỉ là tên của ràng buộc PK trong bảng cha. Để sử dụng Khóa chính kết hợp làm Khóa ngoại, bạn sẽ phải thêm cùng một số cột (tạo PK) với cùng kiểu dữ liệu vào bảng con và sau đó sử dụng kết hợp các cột này trong FOREIGN KEY
định nghĩa:
CREATE TABLE files
(
files_name varchar(50) NOT NULL,
batch_id varchar(4) NOT NULL, --- added, these 3 should not
dept_id varchar(6) NOT NULL, --- necessarily be NOT NULL
student_id varchar (25) NOT NULL, ---
files_path varchar(50),
files_data varchar(max), --- varchar(max) ??
files_bookmarks xml, --- xml ??
--- your question is tagged MySQL,
--- and not SQL-Server
CONSTRAINT pk_filesName
PRIMARY KEY (files_name),
CONSTRAINT fk_student_files --- constraint name (optional)
FOREIGN KEY (batch_id, dept_id, student_id)
REFERENCES student (batch_id, dept_id, student_id)
) ENGINE = InnoDB ;