0
我是新與PostgreSQL和我想創建3個表:PostgreSQL的 - 至少一個需求
Students(id, name)
Courses(num, name)
and Register(id, num)
CREATE TABLE Students (sid integer, name text,PRIMARY KEY (sid))
CREATE TABLE Courses(num integer,name text, PRIMARY KEY (num))
CREATE TABLE Register(sid integer, num integer, FOREGIN KEY (sid, num) REFERENCES (Students, Register))
我想強制每個學生註冊到至少一門課程的需求,如何我可以在不改變上述表格的屬性的情況下做到嗎? TNX
您可以創建一個'CHECK'約束,但它必須推遲,你將不得不使用交易。延遲約束在插入/更新時不檢查,而是在提交時檢查。一旦進入交易,您也可以更改模式。通過屬性https://www.postgresql.org/docs/current/static/sql-set-constraints.html – coladict
- 你指的是列? –
@VaoTsun是的,我不想改變架構。 – cbdes