(アクティブではないかもしれない)、不可能ですplsqlコードが実行され、インデックス定義がtempテーブルに残ることもあります。これは、コードを実行するたびに作成する必要はありません。
グローバル・テンポラリ・テーブルには静的な定義があります。作成するだけで、そこには存在しますが、リドゥ/アンドゥを生成せず、そこに含まれるデータは、
SQL*Plus: Release 10.1.0.4.2 - Production on Wed Oct 26 01:23:17 2011
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
SQL> select * from test;
no rows selected
SQL> insert into test values ('three');
1 row created.
SQL> select * from test;
NAME
--------------------
three
バック最初のセッション SQL>コミット内の別のセッションで次に
SQL*Plus: Release 10.1.0.4.2 - Production on Wed Oct 26 01:22:30 2011
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
SQL> create global temporary table test (name varchar2(20));
Table created.
SQL> insert into test values ('one');
1 row created.
SQL> insert into test values ('two');
1 row created.
SQL> select * from test;
NAME
--------------------
one
two
。
Commit complete.
SQL> select * from test;
no rows selected
SQL> drop table test;
drop table test
*
ERROR at line 1:
ORA-14452: attempt to create, alter or drop an index on temporary table already
in use
私たちは私たちの第二のセッションにデータを挿入しているので、我々は第二のセッションでコミットするまで、我々は一時テーブル に何かを傾けるし、ドロップが
を成功あなたは内容を持っているためのオプションを持っていますコミット(行のコミット時)またはセッションが終了するまでのデータの保持(コミット行の保存時)のいずれかで作成されたセッションに対してクリアされます。