У мене є дві таблиці, як ви побачите в моєму коді posgresql нижче. Студенти першої таблиці мають 2 стовпчики, один для імені студента, а інший student_id, який є первинним ключем. У моїй другій таблиці під назвою тести, вона має 4 стовпчики, один для теми_ід, один для імені предмета, потім один для студента з найбільшою оцінкою в предметі, який є найвищим Студент_ід. я намагаюся зробити так, щоб найвищий_Student_id посилався на student_id у таблиці моїх студентів. Це код, який у мене є нижче, я не впевнений, що синтаксис правильний:
CREATE TABLE students ( student_id SERIAL PRIMARY KEY,
player_name TEXT);
CREATE TABLE tests ( subject_id SERIAL,
subject_name,
highestStudent_id SERIAL REFERENCES students);
highestStudent_id SERIAL REFERENCES students
правильний синтаксис ? тому що я бачив ще одного подібногоhighestStudent_id REFERENCES students(student_id))
Який би був правильний спосіб створення зовнішнього ключа у postgresql будь ласка?
serial
слідinteger
.serial
не є "реальним" типом даних, це коротка рука для заповнення значення за замовчуванням із послідовності