Tôi có 2 bảng như bạn sẽ thấy trong mã posgresql của tôi bên dưới. Bảng đầu tiên sinh viên có 2 cột, một cột dành cho student_name và student_id còn lại là khóa chính. Trong bảng thứ hai của tôi được gọi là các bài kiểm tra, bảng này có 4 cột, một cột cho subject_id, một cột cho tên_tối_từ, sau đó một cột cho học sinh có điểm cao nhất trong môn học là Student_id. tôi đang cố gắng làm cho highStudent_id tham chiếu đến student_id trong bảng sinh viên của tôi. Đây là mã tôi có dưới đây, tôi không chắc cú pháp có đúng không:
CREATE TABLE students ( student_id SERIAL PRIMARY KEY,
player_name TEXT);
CREATE TABLE tests ( subject_id SERIAL,
subject_name,
highestStudent_id SERIAL REFERENCES students);
cú pháp có highestStudent_id SERIAL REFERENCES students
đúng không? bởi vì tôi đã thấy một cái khác giống nhưhighestStudent_id REFERENCES students(student_id))
Xin vui lòng cho biết cách chính xác để tạo khóa ngoại trong postgresql là gì?
serial
nó phải được định nghĩainteger
.serial
được không phải là một "thực" kiểu dữ liệu, đó là một tay viết tắt của Populating giá trị mặc định từ chuỗi