Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: Alter Table to Specify Column Ordering

Re: Alter Table to Specify Column Ordering

From: Thomas Kyte <tkyte_at_oracle.com>
Date: 20 Dec 2004 04:56:12 -0800
Message-ID: <113547372.0000c82d.052@drn.newsguy.com>


In article <41c69a0b$1_2_at_rain.i-cable.com>, <tncc> says...
>
>I am using Oracle. When I define the new tables, I need to add one column
>at a time (or a few columns at a time for large table) using 'alter table
>add column_name...'. Is there any way I can modify the ordering of the
>columns using the 'alter table' command? Because later on, I have some old
>scripts using insert which rely on pre-defined column ordering in table
>definition:
>
>insert into table_name
>values (...);
>-- without explicit column names specified which means the ordering of
>columns is important
>
>Thx for advising
>
>
>

as the other person pointed out -- relying on the order of columns like that is hugely bad. It would be preferable to fix the scripts.

But, you can use views

rename table T to t_table;

create view T as select <columns in whatever order you like> from t_table;

alter table t_table add foobar number;

create or replace view T as select <columns in whatever order you like> from t_table;

-- 
Thomas Kyte
Oracle Public Sector
http://asktom.oracle.com/
opinions are my own and may not reflect those of Oracle Corporation
Received on Mon Dec 20 2004 - 06:56:12 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US