簡體   English   中英

PostgreSQL可以為空的外鍵

[英]PostgreSQL nullable Foreign Key

我正在創建一個postgreSQL表,它有一個引用自己的外鍵,所以它是一個類似於樹的結構:

CREATE TABLE Person(
    ID serial PRIMARY KEY,
    Description text,
    Name varchar(5),
    ParentID serial,
    FOREIGN KEY (ParentID) REFERENCES Person(ID)
    );

問題是ParentID自動設置為NOT NULL ,因此該樹中沒有root。 我如何讓它可以為空?

您可能希望將ParentID的類型更改為整數,這是串行的基礎類型。

CREATE TABLE Person(
    ID serial PRIMARY KEY,
    Description text,
    Name varchar(5),
    ParentID integer,
    FOREIGN KEY (ParentID) REFERENCES Person(ID)
);

有關整數和串行數據類型的文檔,請訪問: http//www.postgresql.org/docs/current/static/datatype-numeric.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM