主要目的:监听一个表字段的修改监听判断语句的写法:
IF :NEW.service_id<>:OLD.service_id
THEN
……问题:如果对所监听字段的修改出现这种情况:由某一具体值改为一个空值或者由一个空值改为某一个具体的值,这个判断语句将不能正常工作,因为系统对NULL理解为unknow。请问这个判断语句怎么写比较合适?谢谢!
IF :NEW.service_id<>:OLD.service_id
THEN
……问题:如果对所监听字段的修改出现这种情况:由某一具体值改为一个空值或者由一个空值改为某一个具体的值,这个判断语句将不能正常工作,因为系统对NULL理解为unknow。请问这个判断语句怎么写比较合适?谢谢!
解决方案 »
- 在线等,急急急
- 为什么建了同义词却在应用时候总是出错误,总是识别不出来呢?
- 求C#大文本导入oracle方法,或使用工具导入
- Oracle对字段名大小写敏感?还要加引号?
- 为何我的作业提交总是不成功
- 我在ORACLE恢復時出錯(高分等待回答)
- 高分求助:Oracle 如何快速入门!
- 一个SQL语句的问题
- 数据库设计问题,设计表时要指定锁吗?比如informix可以设置锁级别(表锁,行锁,页锁)?
- 实例不能起来,报ORA-03113: end-of-file on communication channel,请问知道是什么原因吗
- 请教:如果判断一条记录已经被其他人进行过操作???
- 如何同步更新两个表的数据
如果用NVL(:NEW.service_id,'a')<>NVL(:OLD.service_id,'a'),后面就必须有一个替换的值,这样就很有可能假如旧值为空,新值为与你替换的那个值相同的情况,例如那上面的那个来说,旧值为空,新值为a,这样的话判断就不是很严密。
请问还有什么方法,或者说这种方法应该如何改进?
谢谢!