Oracle修改表结构

--新增单个字段
alter table table_A add item_a varchar2(10) default '默认值' not null;
--新增多个字段
alter table table_A 
add(item_a varchar2(10) default '默认值' not null,
item_b varchar2(10) default '默认值' not null);

--删除字段
alter table table_A drop column item_a;

--修改表字段属性
alter table table_A modify item_a varchar2(100);

--添加主键
ALTER TABLE table_A ADD CONSTRAINT tb_a_pk PRIMARY KEY(item_a);
--添加索引
ALTER TABLE table_A ADD CONSTRAINT tb_a_un UNIQUE(item_b);
--删除约束
alter table table_A drop constraint tb_a_pk;

--新增索引
Create index idx_tb_a_a on table_A(item_a,item_b);
--修改索引
alter index idx_tb_a_a rebuild table_A(item_a);
--删除索引
drop index idx_tb_a_a;
--重建索引
alter index idx_tb_a_a rebuild online;

--删除序列
drop sequence tb_a_sq;

--分区拆分(Range类型使用at,List使用Values;全局索引会失效)
alter table table_A 
split partition tb_a_p values('1') into (
partition tb_a_p_1 tablespace system, 
partition tb_a_p_2 tablespace system);

--合并分区(全局索引会失效)
alter table table_A 
merge partitions tb_a_p_1,tb_a_p_2 into partition tb_a_p;

--移动分区(全局索引会失效)
alter table table_A move partition tb_a_p tablespace system;

--truncate分区(全局索引会失效)
alter table table_A truncate partition(tb_a_p);

--drop分区(全局索引会失效)
alter table table_A drop partition tb_a_p;

发表评论

电子邮件地址不会被公开。 必填项已用*标注

9 + 7 =