本文为您介绍迁移 Oracle 数据库的数据至 OceanBase 数据库 Oracle 租户时,ALTER TABLE DDL 的支持转换范围。
总览
ALTER TABLE [ schema. ] table
[ memoptimize_read_clause ]
[ memoptimize_write_clause ]
[ alter_table_properties
| column_clauses
| constraint_clauses
| alter_table_partitioning
| alter_external_table
| move_table_clause
| modify_to_partitioned
| modify_opaque_type
| immutable_table_clauses
| blockchain_table_clauses
]
[ enable_disable_clause
| enable_disable_other_clause
] ...
;
memoptimize_read_clause:
[ { (MEMOPTIMIZE FOR READ) | (NO MEMOPTIMIZE FOR READ) } ]
memoptimize_write_clause:
[ { (MEMOPTIMIZE FOR WRITE) | (NO MEMOPTIMIZE FOR WRITE) } ]
alter_external_table:
{ add_column_clause
| modify_column_clauses
| drop_column_clause
| parallel_clause
| external_table_data_props
| REJECT LIMIT { integer | UNLIMITED }
| PROJECT COLUMN { ALL | REFERENCED }
}
[ add_column_clause
| modify_column_clauses
| drop_column_clause
| parallel_clause
| external_table_data_props
| REJECT LIMIT { integer | UNLIMITED }
| PROJECT COLUMN { ALL | REFERENCED }
]...
move_table_clause:
MOVE
[ filter_condition ]
[ ONLINE ]
[ segment_attributes_clause ]
[ table_compression ]
[ index_org_table_clause ]
[ { LOB_storage_clause | varray_col_properties }... ]
[ parallel_clause ]
[ allow_disallow_clustering ]
[ UPDATE INDEXES
[ ( index { segment_attributes_clause
| update_index_partition }
[, index { segment_attributes_clause
| update_index_partition } ]...
)
]
]
modify_to_partitioned:
MODIFY table_partitioning_clauses
[ filter_condition ]
[ ONLINE ]
[ UPDATE INDEXES [ ( index { local_partitioned_index | global_partitioned_index | GLOBAL }
[, index { local_partitioned_index | global_partitioned_index | GLOBAL } ]... )
]
]
modify_opaque_type:
MODIFY OPAQUE TYPE anydata_column
STORE ( type_name [, type_name ]... ) UNPACKED
immutable_table_clauses:
[ immutable_table_no_drop_clause ]
[ immutable_table_no_delete_clause ]
blockchain_table_clauses:
blockchain_drop_table_clause
blockchain_row_retention_clause
blockchain_hash_and_data_format_clause
enable_disable_clause:
{ ENABLE | DISABLE }
[ VALIDATE | NOVALIDATE ]
{ UNIQUE (column [, column ]...)
| PRIMARY KEY
| CONSTRAINT constraint_name
}
[ using_index_clause ]
[ exceptions_clause ]
[ CASCADE ]
[ { KEEP | DROP } INDEX ]
enable_disable_other_clause:
{ ENABLE | DISABLE }
{ TABLE LOCK | ALL TRIGGERS | CONTAINER_MAP | CONTAINERS_DEFAULT }
支持的范围
支持
alter_table_properties
子句,详情请参见 修改、删除和新增表属性。支持
column_clauses
子句,详情请参见 修改、删除和新增列属性。支持
constraint_clauses
子句,详情请参见 修改、删除和新增约束。支持
alter_table_partitioning
子句,详情请参见 修改、删除和新增分区。
不支持的范围
不支持
alter_external_table
子句修改外部表的特征,会报错。不支持
move_table_clause
子句将非分区表的数据或分区表的分区的数据重定位至新 segment,会报错。不支持
modify_to_partitioned
子句将非分区或分区表更改为指定特性的分区或复合分区表,会报错。不支持
modify_opaque_type
子句指示数据库存储指定的抽象数据类型或使用解压缩存储,会报错。不支持
immutable_table_clauses
子句修改不可变表的定义,会报错。不支持
blockchain_table_clauses
子句修改区块链表的定义,会报错。不支持
memoptimize_read_clause
子句提高高频数据查询操作的性能,会报错。不支持
memoptimize_write_clause
子句启用快速写入,会报错。不支持
enable_disable_clause
子句定义数据库如何使用约束,会报错。不支持
enable_disable_other_clause
子句定义启用或禁用与表关联的所有触发器、启用禁用表锁、启用或禁用查询CONTAINER MAP
映射后的表、启用或禁用该 CONTAINERS 的表,会报错。