• 更改表


    使用ALTER TABLE语句更改非分区表、分区表、表分区或表子分区的定义。对于对象表或具有对象列的关系表,在更改类型后,使用ALTER TABLE将表转换为其引用类型的最新定义。

    注意:Oracle建议您尽可能使用ALTER MATERIALIZED VIEW LOG语句,而不是ALTER TABLE来对物化视图日志表进行操作。

    先决条件

    该表必须在您自己的架构中,或者您必须具有该表的ALTER对象权限,或者您也必须具有ALTER ANY table系统权限。

    分区操作的其他先决条件

    如果您不是表的所有者,那么您需要DROP ANY table特权才能使用DROP_table_partition或truncate_table_partification子句。

    为了使用add_table_partition、modify_table_pPartition、move_table_partition和split_table_ppartition子句,还必须在要获取空间的表空间中设置空间配额。

    当分区操作级联到引用已分区的子表时,不需要对引用已分区子表拥有特权。

    在使用exchange_partition_subpart子句时,如果要交换的表数据包含标识列,并且您不是交换中涉及的两个表的所有者,那么您必须具有ALTER ANY SEQUENCE系统权限。

    不能对具有对象类型的未分区表进行分区。

    约束和触发器的其他先决条件

    要启用唯一键或主键约束,您必须具有在表上创建索引所需的权限。您需要这些权限,因为 Oracle 数据库会在包含表的模式中的唯一键或主键的列上创建索引。

    要启用或禁用触发器,触发器必须在您的架构中,或者您必须具有ALTER ANY TRIGGER系统权限。

    更改表

    注意:必须在表后指定一些子句。表后的子句都不是必需的,但必须至少指定其中一个。

    memoptimize_read_clause

     memoptimize_write_clause

    alter_table_properties

     注意:如果指定MODIFY CLUSTERING子句,则必须至少指定一个子句CLUSTERING_when或zonemap_clause。

    physical_attributes_clause

     logging_clause

    table_compression

    inmemory_table_clause

    inmemory_attributes

     inmemory_memcompress

     inmemory_priority

     inmemory_distribute

     inmemory_duplicate

     inmemory_column_clause

     略。。。。。https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/ALTER-TABLE.html#GUID-552E7373-BF93-477D-9DA3-B2C9386F2877

  • 相关阅读:
    模式匹配算法Index
    模式匹配算法Index
    模式匹配算法Index
    css中“~”(波浪号)、“,”(逗号)、 “ + ”(加号)和 “ > ”(大于号)是什么意思?
    ACM向:关于优先队列priority_queue自定义比较函数用法整理
    ACM向:关于优先队列priority_queue自定义比较函数用法整理
    Bootstrap 插件轮播
    Bootstrap 插件轮播
    ASP.NET 控件中AutoPostBack属性
    ASP.NET 控件中AutoPostBack属性
  • 原文地址:https://www.cnblogs.com/wonchaofan/p/16755442.html
Copyright © 2020-2023  润新知