修改Oracle 12g中的类型 - 在修改完成后询问DDL输出
问题描述:
这是运行alter类型后的TYPE代码片段。我想知道,如果最后一行(新属性)正确显示或是否需要另一步编译属性:修改Oracle 12g中的类型 - 在修改完成后询问DDL输出
-- academic status code
ACADEMIC_STATUS_CODE VARCHAR2(2),
-- constructor
constructor function TESTTEST_TYPE return self as result,
-- function to keep versions sync'ed
member function fast_version return varchar2,
--member method to put everything to dbms_output
MEMBER PROCEDURE PRINT_TO_DBMS_OUT,
--member method to put everything to dbms_output
MEMBER PROCEDURE PRINT_TO_DBMS_OUT_HELPER(
spaces_to_indent_in__ IN number, recursion_level_in__ IN number)
) INSTANTIABLE NOT FINAL
alter type testtest_type
add attribute (STUDENT_PREFERRED_PRONOUN VARCHAR2(50)) cascade
/
答
你的类型的定义之外发出“改变类型”命令(你不“t将其附加到的类型本身)
alter type testtest_type add attribute (STUDENT_PREFERRED_PRONOUN VARCHAR2(50));
结束时,如果你的类型是终局的,你需要的不是最终(的亚型和这样的)发出以下命令:
alter type testest_type not final cascade;
+0
是的,就是这样做的,但是当看着蟾蜍的脚本时,命令被追加到原始的类型主体。该属性与其他人一起出现在显示屏中,但编译的脚本就是我所质疑的内容。 –
+0
复制已编译的脚本并执行它(最好在另一个数据库上)会告诉你是否有语法错误。 Toad可能存在问题。我们没有足够的信息。 –
咦?不明白。你有错误吗? – OldProgrammer