2013-04-24 67 views
0

我有一個存儲過程,其中「刪除保留行」臨時表是動態創建和數據插入,當我嘗試執行任何其他動態SQL語句時,臨時表中的數據被刪除。但我需要一個數據進一步處理。動態Sql VS臨時表

任何人都可以告訴我爲什麼數據丟失,這是什麼解決方案。

謝謝。此

+0

它是「在提交保留行」,而不是「在刪除」。 – 2013-04-24 07:00:27

+0

爲什麼你*創建*這些表動態(大概每次)? Oracle中的(全局)臨時表通常只創建一次*,然後由不同的會話使用。 – 2013-04-24 07:01:44

+0

@大衛奧爾德里奇 - 我已經改變爲提交保留行,同樣的事情正在發生 – user1990383 2013-04-24 08:25:01

回答

0

三種可能的原因:

  1. 有一個明確的承諾。
  2. 存在隱式提交(通常是DDL語句)。
  3. 您正在關閉會議並開始新會議。

如果你不能避免這些,那麼你將不得不創建一個永久表。