我想为Check
列编写一个例外。如果没有输入“确定”或“不好”,我想提出应用程序错误。我该怎么写这个?
答案 0 :(得分:0)
这是提出定制PL / SQL异常的最简单方法:
begin
if p_check not in ('Ok', 'Not Ok') then
raise_application_error(-20999,
'Invalid value for CHECK '|| p_check);
end if;
....
用户定义的例外的数字必须在-20999到-20000的范围内。
顺便提一下,您将check
描述为“列”。 PL / SQL异常用于变量和参数。如果您的意思是确实在验证表列,则需要检查约束:
alter table whatever
add constraint col23_ck
check ( col23 in ('Ok', 'Not Ok'));
答案 1 :(得分:0)
如下所示?
ALTER TABLE [TableName]
ADD CONSTRAINT [CheckName] CHECK (Check IN ('Ok', 'Not Ok'));
如果列中输入了任何其他值,则会引发数据库错误,