oracle调整表中列顺序
当前显示
SQL> select * from test; A B C -------------------- -------------------- -------------------- you pig are
通过修改sys.col$表来改变表中列的顺序
SQL> SELECT owner,object_name,object_id FROM ALL_OBJECTS WHERE OBJECT_NAME='TEST'; OWNER OBJECT_NAME OBJECT_ID ------------------------------ ------------------------------ ---------- SYS TEST 88842 SQL> select obj#,col#,name from sys.col$ where obj# =88842 order by col#; OBJ# COL# NAME ---------- ---------- ------------------------------ 88842 1 A 88842 2 B 88842 3 C SQL> update sys.col$ set col#=2 where obj# =88842 and name='C'; 1 row updated. SQL> update sys.col$ set col#=3 where obj# =88842 and name='B'; 1 row updated. SQL> commit; Commit complete. SQL> select * from test; A C B -------------------- -------------------- -------------------- you are pig SQL> -----------------------------------