Обсуждение: replacing tables

Поиск
Список
Период
Сортировка

replacing tables

От
Mark Byerley
Дата:
I have one table named temp and another table which I have added a few fields to - let's call it temp_test. It has all the same fields as table temp except it also has a birthdate field just recently added. Table temp has many indexes and sequences created to handle certain fields and what not. What I would like to know is simply if I insert into temp_test select * from temp and then drop table temp and create table temp as select * from temp_test, will I lose the indexes and sequences attributed to the original table temp?
thanks for any help on this one.
M~

Re: replacing tables

От
Joel Burton
Дата:
On Fri, 6 Apr 2001, Mark Byerley wrote:

> I have one table named temp and another table which I have added a few
> fields to - let's call it temp_test. It has all the same fields as table
> temp except it also has a birthdate field just recently added. Table temp
> has many indexes and sequences created to handle certain fields and what
> not. What I would like to know is simply if I insert into temp_test select
> * from temp and then drop table temp and create table temp as select * from
> temp_test, will I lose the indexes and sequences attributed to the original
> table temp?
> thanks for any help on this one.

As long as you don't drop table temp itself, you'll be fine removing its
records and inserting from another table.

(In fact, this is a good way to handle this problem. If you have
referential integrity, you won't want to actually DELETE FROM TABLE
temp, as that would call your ref integrity routines. Instead TRUNCATE
temp, which removes all records very quickly, and ignores ref integrity.)

--
Joel Burton   <jburton@scw.org>
Director of Information Systems, Support Center of Washington