Oracle:为对象类型列指定默认值

Oracle:为对象类型列指定默认值,第1张

Oracle:为对象类型列指定默认

看起来这是不可能的。

一种解决方法是使用触发器:

CREATE OR REPLACE TRIGGER test_trigger  BEFORE INSERT OR UPDATEON test_table  FOR EACH ROWWHEN ( new.test_attr IS NULL )BEGIN  :new.test_attr := NEW test_t();END test_trigger;/

顺便说一句,它不会完全忽略非默认构造函数,而会覆盖默认构造函数

ConSTRUCTOR FUNCTION test_t(in_val NUMBER)RETURN SELF AS RESULT

尝试使用以下命令定义表时导致异常

DEFAULT NEW test_t(1)

ORA-06553:PLS-307:太多的“ TEST_T”声明与该调用匹配



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5673883.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存