La línea:
FOREIGN KEY (pk_studentID ) REFERENCES student(pk_studentID ),
Está Mal. No puedes usar pk_studentID
así, este es solo el nombre de la restricción PK en la tabla principal. Para usar una clave principal compuesta como clave externa, deberá agregar la misma cantidad de columnas (que componen el PK) con los mismos tipos de datos a la tabla secundaria y luego usar la combinación de estas columnas en FOREIGN KEY
definición:
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 ;