C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: SQLServer2000のトランザクションタイムアウト値


(過去ログ 62 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■35933 / inTopicNo.1)  SQLServer2000のトランザクションタイムアウト値
  
□投稿者/ wao (1回)-(2009/05/15(Fri) 22:10:17)

分類:[.NET 全般] 

【環境】
VS2003(C#)
.net Framework 1.1
SQLServer2000

お世話になります。

現在TableAからTableBに一括でデータコピーした際に、下記のエラーが発生しております。
「タイムアウトに達しました。操作が完了する前にタイムアウト期間が過ぎたか、またはサーバーが応答していません。」
実装方法としては、「Insert Into TableB Select・・・from TableA」というような一般的な
InsertSelectのSQLをExecuteNonQueryで実行しています。
CommandTimeoutは明示的に長く(30000)設定されています。
件数はかなり多く、4000万件ほどが対象となっている状況です。
ただ、実行しているSQLをクエリアナライザから実行すると、約15分ほどで処理が完了します。

今私が考えているのは、トランザクションタイムアウトのほうでひっかかっているのかな、ということです。
別プロジェクトでVS2005 C#2.0 SQLServer2005で開発していた際には、TransactionScopeを使用して
トランザクションタイムアウトをプログラムから設定していたのですが、
今調査しているのはVS2003 SQL2000の環境のためよくわかっておりません。
いろいろと調べているのですが、トランザクションタイムアウトの設定をどのように行うか、
おわかりでしたら教えていただけますか。

宜しくお願いします。
引用返信 編集キー/
■36019 / inTopicNo.2)  Re[1]: SQLServer2000のトランザクションタイムアウト値
□投稿者/ wao (2回)-(2009/05/18(Mon) 17:08:14)
調べてますがなぜか手がかりがみつかりません。。。
SQLServer2000でトランザクションタイムアウトの値は変更できないんでしょうか・・?
引用返信 編集キー/
■36020 / inTopicNo.3)  Re[2]: SQLServer2000のトランザクションタイムアウト値
□投稿者/ オショウ (188回)-(2009/05/18(Mon) 17:32:02)
No36019 (wao さん) に返信
> 調べてますがなぜか手がかりがみつかりません。。。
> SQLServer2000でトランザクションタイムアウトの値は変更できないんでしょうか・・?

  直接的な回答ではありません。

  まず、.NET Framework 1.1 よりも2.0の方が確実によいと考えます。

  次に4000万件を対象にしたコマンドの実行では、タイムアウト云々
  よりも、コマンドの非同期実行方法を採用されるのが得策かと。

  非同期実行が、.NET 1.1 で可能かは未確認です。

以上。
引用返信 編集キー/
■36021 / inTopicNo.4)  Re[1]: SQLServer2000のトランザクションタイムアウト値
□投稿者/ みきぬ (432回)-(2009/05/18(Mon) 17:46:47)
No35933 (wao さん) に返信
> 今私が考えているのは、トランザクションタイムアウトのほうでひっかかっているのかな、ということです。

まずはこれが本当にそうなのかどうか、確認が必要ではないかな、と。
例えば、クエリを簡単にして試してみるとか。

# ちなみにその昔、[管理ツール]-[コンポーネント サービス] から
# [コンピュータ]-[マイコンピュータ] を右クリックして [プロパティ] で
# 「トランザクション タイムアウト」とか「セキュリティの構成」あたりの設定をいじった記憶がかすかに残ってますが、
# どんな問題があってそうしたか、記憶にない(。。;
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -