2010-08-03 68 views
0

我在使用我們的某臺服務器上的Oracle全局臨時表時遇到問題。這是我想要完成的細節。第一次連接打開並關閉後,ADO.NET事務不會登記命令

  1. 創建OracleConnection。
  2. 從該連接開始OracleTransaction。
  3. 創建一個OracleCommand以將單個值插入Oracle全局臨時表(GTT)中。例如插入到MY_GTT(SOME_FIELD)值(123);
  4. 在transaction和ExecuteNonQuery中列出上面的命令。
  5. 創建另一個OracleCommand以從Oracle GTT中讀取該值。 例如從MY_GTT中選擇SOME_FIELD;
  6. 在transaction和ExecuteReader中列出上面的命令。
  7. 提交交易。

這種情況適用於除我們之外的所有服務器。甚至更奇怪的是, 這個測試用例在工作人員 進程被回收之後在服務器上工作,但後續請求不起作用。

所以,也許服務器不能正常循環的連接或東西 這樣...

+0

我剛剛從控制檯應用程序中測試了這一點,它的行爲是相同的。所以,這從可能的嫌疑人名單中消除了IIS。也許這是一個.NET配置... – 2010-08-03 14:32:31

回答

0

我無法追查本次交易被維持在一個服務器上,但不能在其他。

但是,當我使用Oracle ODP.NET驅動程序時,一切正常。不工作的驅動程序是Microsoft棄用的System.Data.OracleClient驅動程序。

相關問題