如何限制 Teradata table 中的字符串和日期值

How to restrict string and date values in a Teradata table

有没有办法对 Teradata table 字段施加限制,像这样

栏目教育只能包含:High SchoolBSMSPhD,不能包含任何其他内容。如果有人试图 INSERT 任何其他字符串,Referential Integrity 机制将抛出异常


此外,有没有办法对 DATE 字段施加限制,使得新插入的日期必须 >= CURRENT_DATE

谢谢专家

它与任何其他 RDBMS 相同(除了 COMPRESS 部分,它是 Teradata 仅用于节省磁盘 space):

datecol DATE CHECK(datecol >= CURRENT_DATE)

也许添加一个 NOT NULL 约束。

education VARCHAR(11) CHECK (education IN ('High School', 'BS', 'MS', 'PhD'))

在 Teradata 中,您应该添加 COMPRESS ('High School', 'BS', 'MS', 'PhD') 以节省磁盘 space。

当然,您也可以在 table 中插入四个值,添加一个主键,然后添加一个引用该列的外键...