oracle判断空值的函数 oracle触发器怎么判断条件?
oracle触发器怎么判断条件?
oracle判断为空是用is null不是=null;
在oracle中=null一直都是返回false的。
另外最好加上exception判断:
IF :new.s_ID IS NULL THEN
BEGIN
SELECT c_id into :new.s_ID from classs where c_sid=:NEW.s_cid
EXCEPTION
WHEN no_data_found THEN
SELECT 0 INTO :new.s_ID FROM dual --或者其他操作
END
END IF
当在classs表中没有找到对应的记录时不至于出错,看你要怎么设计咯。
ORACLE中触发器的判断IF语句?
加一行NULL即可例如:SQL>DECLARE2testvalueINT3BEGIN4testvalue:=20056IFtestvalue>100THEN78ELSIFtestvalue=100THEN9dbms_output.put_line("100")10ELSE11dbms_output.put_line("100-")12ENDIF1314END15/ELSIFtestvalue=100THEN*ERROR位于第8行:ORA-06550:第8行,第9列:PLS-00103:出现符号"TESTVALUE"在需要下列之一时::=.(@%ORA-06550:第14行,第4列:PLS-00103:出现符号""在需要下列之一时:if上面的例子,可以看出,如果IFELSE里面,没有内容,那么编译不通过。下面是加一行NULL通过的例子:SQL>DECLARE2testvalueINT3BEGIN4testvalue:=20056IFtestvalue>100THEN7NULL8ELSIFtestvalue=100THEN9dbms_output.put_line("100")10ELSE11dbms_output.put_line("100-")12ENDIF1314END15/PL/SQL过程已成功完成。
oracle判断空值的函数 Oracle删除触发器 oracle循环语句怎么写
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。