oracle怎么重构表,oracle表重建
Oracle 中对于大表是怎样更改表结构并且在
修改表名:
镇原网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、响应式网站设计等网站项目制作,到程序开发,运营维护。创新互联自2013年起到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。
alter table 表名 rename to 新名
添加字段:
alter table 表名 add 字段名 字段类型
删除字段:
alter table 表名 drop column 字段名
修改字段:
alter table 表名 rename column 原字段名 to 新名;
修改字段类型(前提:表中无数据)
alter table 表名 modify 字段名 新类型;
例如:String deleteColumn="alter table t_user drop column sname";
oracle数据库,结果集拆分重构。
with sleest as(
select 1 rn,1111111111 a, 1 b, 'c1' c ,'d1' d from dual
union all
select 2,222222 , 3 , 'c2' ,'d2' from dual
)
--select * from sleest;
select distinct
--new_rn第一条存值,后续为空
case when levels.column_value 1 then null else t.rn end as new_rn,
t.rn,
levels.column_value as sub_order,
--4可以通过参数传递
trim(regexp_substr(t.a, '(.{1,4})', 1, levels.column_value)) as a,
t.b,
--c第一条存值,后续为空
case when levels.column_value 1 then null else t.c end as c ,
t.d
from sleest t,
table(
cast(
multiset(
--4可以通过参数传递
select level from dual connect by level = length(regexp_replace(trim(regexp_replace(t.a,'(.{4})','\1 ')), '[^ ]+')) + 1
) as sys.OdciNumberList
)
) levels
order by rn, sub_order
构造临时数据:
根据需求参数4进行划分:
参考stackover上的一个解决方案改的,原文地址如下:
oracle如何重建表的id列
create sequence seq_id start with 1000 increment by 1 ;
update t set id=seq_id.nextval ;
1000w可能会稍微慢点,正常,看你的存储如何了,
标题名称:oracle怎么重构表,oracle表重建
标题URL:http://cdiso.cn/article/dscedjh.html