在数据字典中直接修改Oracle表列名

  Oracle数据库没有提供直接修改表中列名称的功能,但在实际使用时常需要修改表的列名和列顺序,不得已有些Oracle的使用人员用重新创建一个新的具有正确列名和顺序的数据库表,再将旧表的数据转储进来,最后删除旧表并将新表重命名为旧表的方法来完成此功能。此方法的最大问题是要求有双倍的存储空间、较大的回滚段和较长的时间,如果表中数据量较大,这项工作开销会很大。实际上我们可以从数据字典中直接修改表列的名称和顺序。下面是具体的实现步骤:

  1.以internal用户名登录Oracle数据库,并创建一测试表。
引用:
  SQL>CREATE TABLE SCOTT.TEST AS SELECT EMPNO,ENAME FROM SCOTT.EMP;
  
  SQL>DESC SCOTT.TEST
  
  Name Type Nullable Default Comments
  
  ------- ------------ -------
  
  EMPNO NUMBER(4) Y
  
  ENAME VARCHAR2(10) Y