Re: How to rename a table ?

From: Tony DeFelice <tonyd_at_communique.net>
Date: 1997/01/02
Message-ID: <32CC7AAD.4121_at_communique.net>#1/1


Atif Ahmad Khan wrote:
>
> I have a table that is serving data to web users around the clock.
> Its a rather huge table, has a primary key and a couple of indices also.
>
> I figured that instead of trying to update 5,000 rows in the main
> 200,000 rows table, I may be better off doing it all to a temporary
> table while dropping its indices to improve performance and when I am
> done, drop the main table and rename the temporary table as the main table.
>
> Is this possible ? Also is this a good solution ? I looked up the alter
> table command in the SQL Reference manual and did not find a way to rename
> a table.
>
> Thanks in advance for any pointers.
>
> Atif Khan
> aak2_at_ra.msstate.edu

There is no way to rename a table in Oracle...

You can however create a new table with the same definition as an existing table by using an insert into statement such as:

insert into <newtablename>
select * from <existingtablename>

In your case, I would look more closely at your indexing, because updating 5,000 rows out of 200,000 rows is not that much...

1st try to create an index (or a temporary index) on the entire where clause of your update statement.

If this doesn't speed things up enough, you may wish to try inserting new rows into a non indexed table, then creatinging indexes on it. Received on Thu Jan 02 1997 - 00:00:00 CET

Original text of this message