私はDBを設計しなかったので、これについて私を判断してはいけません。Oracle Create Table as Select * Another_Tableから同じテーブルスペース
ログテーブルがあります。LOTのエントリがあります。私はこのログテーブルに1日程度しか保管する必要はありません。私の最初の考えられていた:単一のトランザクションで
: 1.ログテーブルの名前を変更 2.名前を変更したログテーブルから元のログテーブルを作成 3. TRXと人生をコミットは
に二を行きますこの時、私は名前を変更したテーブルをドロップし、それをやり直します。これは、Oracleジョブとして1日に1回実行されます。
元の質問: 私はそうのようなテーブル#1の表スペース名を指定した場合、誰もが知っているだろう:
create table "my_user"."first_table" (pkid number, full_name varchar2(50)) nologging tablespace "my_custom_tablespace";
その後、私はのようなものを実行します。
create table second_table as select * from first_table where 1=2 -- because I only want the structure
は私second_tableがされます同じtable_spaceにありますか?
ご協力いただきありがとうございます。
いいえ 'second_table'は、デフォルトの表スペースが何であれ作成されます。 'first_table'のテーブルスペースが何であるかは気にしません。しかし、なぜそれを試してみませんか?それは質問を書くよりも速かったでしょう。 – sstan
新しいテーブルにどのテーブルスペースが使用されたかを確認する方法がわかりません。しかし、これについてあなたの助けをありがとうございます。 – OneClutteredMind
ここで確認する方法は次のとおりです。 'select tablespace_name from user_tables where table_name = 'SECOND_TABLE'' – sstan