oracle按顺序新增字段,Oracle 修改字段顺序的两种方法

--(1)备份目标表数据

create table 临时表 as select * from 目标表;

--(2)drop 目标表

drop table 目标表;

--(3)再重新按照要求的字段顺序建表;

create table 临时表 (col1,................coln);

--(4)之后用select将数据从临时表导回。

此外,还可以通过修改sys的数据字典来实现。

以下是自己的亲身测试记录

--第1步 创建测试表

create table TEST (A VARCHAR2(10),B VARCHAR2(10),C VARCHAR2(10),D VARCHAR2(10));

--第2步 查询出表的id,注意:owner和object_name的值要大写

--DBA用户使用

select object_id from all_objects where owner=‘CHINAJFK‘ and object_name=‘TEST‘;--本例结果为52206

--表归属用户可以使用

select object_id from obj where object_name=‘TEST‘;--本例结果为52206

--第3步 通过id查出该表所有字段的顺序

select obj#,col#,name from sys.col$ where obj#=52206 order by col#;

--第4步 更新字段顺序,需要sys用户或是System用户 as sysdba登录,或是其他拥有sysdba权限的用户,但是这里的操作一定要小心。

--(1)更新目标字段的col#

update sys.col$ set col#=4 where obj#=52206 and name=‘A‘;

--(2)更新受影响字段的col#,自己根据情况自己组织语句

update sys.col$ set col#=col#-1 where obj#=52206 and name!=‘A‘;

--(3)提交

commit;

--第5步 重启Oralce服务

--第6部 检查是否生效

select obj#,col#,name from sys.col$ where obj#=52206 order by col#;

select * from chinajfk.test;

Oracle 修改字段顺序的两种方法

标签:sysdba   oralce   通过   family   class   system   varchar2   and   操作

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:http://www.cnblogs.com/aipan/p/7147316.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值