簡體   English   中英

Postgres vachar 檢查約束

[英]Postgres vachar check constraint

我的 Patient 表中有一個名為“Urgent”的 varchar 屬性。 我希望這個屬性是“是”或“不是”而不是其他任何東西。 我做了一些事情,但我無法驗證它是否有效,因為 Postgres 在我的計算機上不起作用,而且我在 web 上沒有找到任何東西。 所以我想確認我所做的是否正確。 這是我所做的:

CREATE TABLE public.Examen(
    NumExamen         VARCHAR (50) NOT NULL ,
    SignesCliniques   VARCHAR (1000) NOT NULL ,
    Urgent            VARCHAR (50) NOT NULL ,
    DateExamen        DATE  NOT NULL ,
    NumInfirmier      VARCHAR (50) NOT NULL  ,
    CONSTRAINT Examen_PK PRIMARY KEY (NumExamen),
    Urgent CHECK (Urgent='Yes' or Urgent='No')
)WITHOUT OIDS;

你的代碼有效。 但是,為什么不使用內置的boolean數據類型,而不是“是”/“否”呢?

CREATE TABLE public.Examen (
    NumExamen         VARCHAR(50) NOT NULL PRIMARY KEY,
    SignesCliniques   VARCHAR(1000) NOT NULL ,
    Urgent            BOOLEAN NOT NULL ,
    DateExamen        DATE  NOT NULL ,
    NumInfirmier      VARCHAR(50) NOT NULL  
) WITHOUT OIDS;

順便說一句,您可以在 web 上的多個站點上測試您的代碼,包括 DB Fiddle、SQL Fiddle 和 Rextester。

暫無
暫無

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

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