質問

Global Tempテーブルを作成しました。個々のスクリプトとしてコードを実行すると、正常に動作します。しかし、ヒキガエルで単一のスクリプトとして実行すると、レコードは作成されませんでした。空のグローバル温度テーブルがありました。

例えば。

CREATE GLOBAL TEMPORARY TABLE TEMP_TRAN
(
COL1 NUMBER(9),
COL2 VARCHAR2(30),
COL3 DATE
) ON COMMIT PRESERVE ROWS
/

INSERT INTO TEMP_TRAN VALUES(1,'D',sysdate);
/
INSERT INTO TEMP_TRAN VALUES(2,'I',sysdate);
/
INSERT INTO TEMP_TRAN VALUES(3,'s',sysdate);
/
COMMIT;

上記のコード1ステートメントを一度に1つずつ実行すると、正常に動作します。しかし、スクリプトとして実行すると、正常に実行されますが、Tempテーブルにはレコードがありませんでした。

誰かが私を助けてくれますか?

役に立ちましたか?

解決

あなたが明示的に述べたので ON COMMIT PRESERVE ROWS, 、行が「消える」と思われる唯一の理由は、ヒキガエルが複数のセッションを使用していることです(つまり、セッションAでスクリプトを実行し、セッションBでテーブルをクエリします - 空のテーブルが表示されます)。

私はToadをあまり使いませんが、このツールでいくつかの独立したセッションを開くことができることは知っています。

クエリを置くとどうなりますか SELECT * FROM TEMP_TRAN; コミットの直後にスクリプトの最後に?

他のヒント

Tabpageデータの下にあるテーブル内の変更が表示されるように、Toad内のデータ表示を更新する必要がある場合があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top