我的患者表中有一个名为“紧急”的varchar属性。我希望此属性为“是”或“不是”,而不是其他任何属性。我做了一些事情,但是我无法验证它是否有效,因为Postgres无法在我的计算机上运行,并且在网上也找不到任何东西。因此,我想确认我所做的是否正确。这是我所做的:
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;
答案 0 :(得分:3)
您的代码有效。但是,为什么不使用内置的boolean
数据类型呢?而不是“ yes” /“ no”?
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。