【问题标题】:Oracle PLSQL Alter/Drop Attributes of Object TypeOracle PLSQL 更改/删除对象类型的属性
【发布时间】:2017-07-15 12:54:57
【问题描述】:

我是 Oracle PLSQL 的新手,必须更改对象类型。我在新列的数据类型上犯了很多错误,所以我不得不删除它们并再次更改它们。

例如,我是这样做的:

ALTER TYPE testObjectType ADD ATTRIBUTE (Prename VARCHAR2(50))

ALTER TYPE testObjectType DROP ATTRIBUTE Prename

ALTER TYPE testObjectType ADD ATTRIBUTE (Prename VARCHAR2(50 CHAR))

现在在“创建或替换” - 对象代码下面有很多关于添加和删除属性的代码行。我必须尝试简单地删除这些行,但更改根本不起作用。如何整理我的对象类型? (我使用的是 Oracle SQL Developer)。

【问题讨论】:

    标签: oracle plsql user-defined-types


    【解决方案1】:

    您需要重置它,使其不再被视为进化类型:

    alter type testobjecttype reset;
    

    然后你可以重建它:

    create or replace type testobjecttype as object
    ( prename varchar2(50 char) );
    

    (加上它应该具有的任何其他属性等)。

    顺便说一句,在 CamelCase 中命名数据库对象并没有什么意义,因为数据库会忽略它,并且模式浏览器只会以大写形式列出它(因为这是字典存储名称的方式),如果没有单词分隔符,这可能会变得难以阅读。 (不应该是TestObjectType 吗?)在命名程序变量时有一个更好的案例,尽管它们也不区分大小写,所以只用小写编码可能是最简单和最干净的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-11
      • 1970-01-01
      • 2017-03-04
      • 2021-06-19
      • 1970-01-01
      • 2016-08-28
      相关资源
      最近更新 更多