更改类型:添加属性(如果尚不存在)

时间:2010-09-07 14:43:15

标签: oracle plsql types

是否有办法改变对象类型以仅在尚不存在的情况下添加属性?我正在编写一个将在多个数据库上运行的脚本。我试图避免不必要的PLS-00410错误(不允许在RECORD,TABLE或参数列表中重复字段)。

如下所示:

ALTER TYPE employee
ADD ATTRIBUTE --IF NOT EXISTS
  (address2 VARCHAR2(30))
CASCADE;

如果没有如上所述的优雅内联解决方案,是否有我可以查看的系统表? ALL_TYPES仅列出每种类型的属性数,而不是特定属性。

1 个答案:

答案 0 :(得分:3)

ALL_TYPE_ATTRS似乎是您正在寻找的。对于OBJECT类型,它是ALL_TYPES的孩子。