我想将默认值设置为现有表的列,
例如:create table t(a Number(22), b NUMBER(22)
;
我想设置column B as column A
的默认值。
我知道我们不能这样做,任何人都可以提出另一种方法。
答案 0 :(得分:0)
为什么不直接在代码中设置默认值?
if(Obj.B == null)
Obj.B = Obj.A
我认为数据库的作用不是表达这种规则。
答案 1 :(得分:0)
您可以使用ON INSERT触发器:
CREATE OR REPLACE TRIGGER T_BI
BEFORE INSERT ON T
FOR EACH ROW
BEGIN
IF :NEW.B IS NULL THEN
:NEW.B := :NEW.A;
END IF;
END T_BI;
分享并享受。