【发布时间】:2016-02-10 10:04:21
【问题描述】:
列的字段应为“cl”、“sl”或“el”。 oracle sql中如何添加这样的约束?
【问题讨论】:
标签: sql oracle11g ddl check-constraints
列的字段应为“cl”、“sl”或“el”。 oracle sql中如何添加这样的约束?
【问题讨论】:
标签: sql oracle11g ddl check-constraints
您可以尝试像这样使用CHECK constraint:
CREATE TABLE myTable
(
id int NOT NULL,
col varchar(10)
CONSTRAINT chk_col CHECK (col IN ('cl', 'sl', 'el' ))
)
或使用类似的 ALTER 命令
alter table mytable
add col varchar(10)
constraint chk_col check(col IN ('cl', 'sl', 'el' ))
【讨论】:
如果列只包含“cl”、“sl”或“el”,那么这些字符串肯定有含义。你可以简单地在你的表中添加一个检查约束,但这会使事情没有记录。
因此,您可能希望添加一个小型查找表:
离开说明 cl 临时休假 sl 病假 el 带薪休假在您现有的表中,您只需将外键约束放入该查找表即可。
【讨论】: