博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle 之 表新增字段后修改字段顺序
阅读量:5998 次
发布时间:2019-06-20

本文共 979 字,大约阅读时间需要 3 分钟。

工作中遇到:在为一个表新增字段后,新增字段在最后,想调整新增字段的位置。

1、原始方法:

--新建临时表以存储正确的顺序create table A_2  as select (column1,colum2,……A表中的顺序) from A_1 ;--删除表A_1drop table A_1;--新建A_1并从A_2表中赋予其正确的顺序和值create table A_1 as select * from A_2;--删除临时表A_2drop table A_2;

  这种方法对字段较少的表来说还不会显得太麻烦,但是对于字段较多的表来说就吃力了。

2、利用系统数据库

  [1] 首先,以sys用户的身份登录PL/SQL

      [2] 查询出你要更改的表的ID,以我本地的数据为例,我要改'FINACE'用户下'INCOME'这张表。注:ORACLE中的表要用大写。

select     object_id         from        all_objects        where     owner = 'FINACE' and object_name = 'INCOME' ;

        得到INCOME这张表的i,如图所示:

  

      [3] 根据id去查询该表中的字段以及字段序号

select     obj#,col#,name        from        sys.col$                 where     obj#=73626;

        结果如下图所示:

  

      [4] 第二列便是字段的序号,就可以用update语句来任意调整字段的顺序了。

SQL示例:

    

update sys.col$

set col# = decode(name,
'CODE',
1,
'MESSAGE',
2,
'INFO',
3,
'ORACLE_USER',
4,
'ERROR_DATE',
5)
where obj# = (select object_id
from all_objects a
where owner = 'EMPTRAIN'
and object_name = upper('SYS_ERROR_LOG'))

 

转载于:https://www.cnblogs.com/jtcr/p/10893206.html

你可能感兴趣的文章
centos修改主机名
查看>>
LVS集群的基础概念篇
查看>>
python中read() readline()以及readlines()用法
查看>>
网络知识汇总(1)-朗文和牛津英语词典网址
查看>>
选择排序(C语言实现) 分类: 数据结构 2015-...
查看>>
Java设计模式学习
查看>>
Quartz_1_简单编程式任务调度使用(SimpleTrigger)
查看>>
web api 初体验 解决js调用跨域问题
查看>>
centos 安装docker
查看>>
互联网架构的三板斧
查看>>
阿里巴巴MySQL DBA面试题答案[转]
查看>>
JS乘法口诀表(一行代码)
查看>>
网络、会话建立与信任
查看>>
系统级性能分析工具perf的介绍与使用
查看>>
spring remoting源码分析--Hessian分析
查看>>
phpMyAdmim和Yii 连接Mysql报错。
查看>>
基于爬山算法求解TSP问题(JAVA)
查看>>
shell语法简单介绍
查看>>
ARP缓存记录种类动态条目和静态条目
查看>>
MyEclipse 6.5 代码自动提示功能配置教程
查看>>