• ベストアンサー

【VB2005】DB接続時の一般的なタイムアウト時間

23歳男性です。 SQL Serverに接続してデータを書き込むなどの処理を行う場合、タイムアウト時間を設定しています。 私は「1000秒」にしているのですが、これは長すぎるでしょうか?一般的にはどれくらいにすべきなのでしょうか? また、設定時間が長すぎる、短すぎる場合、どのような弊害が生じるのでしょうか? ご理解されている方がいらっしゃいましたら、ご回答願います。 ちなみに設定しているのは「CommandTimeout」です。

質問者が選んだベストアンサー

  • ベストアンサー
noname#259269
noname#259269
回答No.1

利用し終わった時に、コネクションをクローズさえしておけば、長すぎて困ることはないでしょう。 短すぎる場合には、処理の途中で接続が切れる必要がありますので、設定する際には、処理時間を考慮して長めに設定しておくのが一般的かと思います。

hacker_d
質問者

お礼

なるほど! ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • データ読込時のタイムアウト

    SQL-Serverのデータ(約30万件)を関数で処理した結果、約1000件くらいを、VS2005のレポートサービスで出力したいと思います。 その際、大体50:50の確立でタイムアウトを起こしてしまいます。 エラーを起こす場所は、 Me.××TableAdapter.Fill(Me.▲▲DataSet.××) です。 SQLコマンドに対しては、CommandTimeoutで対処するのは解りますが、テーブルアダプタを介してのデータの読込に関するタイムアウトの時間設定が解りません。どうしたらよろしいでしょうか?

  • VBタイムアウト

    タイムアウト、プールサイズの制限値 VB2010で業務アプリケーションの集計ツールを作成しています。 仕組みは単純で、下記の様にDateTimePicker(カレンダー)から日付を選び ボタンクリックでフォーム内のデータグリッド内に集計値が入っていく仕組みです。 'カレンダー日付選択 Sub Aggregate() '日付の取得 DateTimePicker1.Format = DateTimePickerFormat.Custom DateTimePicker1.CustomFormat = "yyyy-MM-dd 1つのフォームにデータグリッドが10個ほどあるので画面遷移までに5秒くらいかかってしまいます。 1度目の表示は問題ないのですが、日付を選択し直し2度、3度と実行すると ”タイムアウトに達しました。プールから接続を制限する前にタイムアウト期間が過ぎました。 プールされた接続がすべて使用中で、プールサイズの制限値に達した可能性があります。” と表示されてしまいます。開放も行っているつもりで原因がわかりません。 原因がわかれば教えていただきたいです。処理をスピードアップできる方法があればそれもお願いします。 接続文字は以下の通りです。 Function CONNECT(ByVal SqlText As String) As String Dim St As String Dim Cn As New System.Data.SqlClient.SqlConnection Dim SQL As New System.Data.SqlClient.SqlCommand Dim ServerName As String = "AAAAAAAAA" Dim UserID As String = "BBBBBBBBB" Dim Password As String = "CCCCCCC" Dim DatabaseName As String = "DB" Dim Adapter As New System.Data.SqlClient.SqlDataAdapter Dim Table As New DataTable Adapter.SelectCommand = SQL SQL.Connection = Cn SQL.CommandTimeout = 120 St = "Server=" & ServerName & ";" St &= "User ID=" & UserID & ";" St &= "Password=" & Password & ";" St &= "Initial Catalog=" & DatabaseName Cn.ConnectionString = St SQL.CommandText = SqlText Cn.Open() Return SQL.ExecuteScalar SQL.Connection = Nothing SQL.Transaction = Nothing SQL.Dispose() Cn = Nothing Cn.Dispose() Cn.Close() End Function データグリッドの転記は下記の様なコードをずらっと書いています。 DataGridView10(2, 3).Value = CONNECT("SELECT COUNT(*)" & _ " FROM dbo.IOTBL, dbo.APLTBL" & _ " WHERE APLTBL.APLID=IOTBL.APLID" & _ " And (APLTBL.APLTYPE='JA01')" & _ " And (APLTBL.DELETED<>'1')" )

  • C#~SQL2005で勝手にタイムアウト

    C#とSQL Server2005との連携でConnectionStringに connection timeout=60 を設定していますが、 30秒程度でタイムアウトしてしまいます。 タイムアウトの設定はソースコード上以外に、 SQL Server上でも設定が必要なのでしょうか?

  • 長時間処理のタイムアウトの問題

    VS2005 ASP.NET SQL Server こんにちは。 現在、あるページをアクセスした時の ページロードの時に呼ばれる関数で、 DBの内容の変更を行っています. ただ、この処理が少し重い処理で、 処理中にタイムアウトしてしまい 処理が途中で止まってしまいます. この処理をサーバーの設定を変えずに解決する方法はないでしょうか? 処理だけをサーバー上に残してページを表示したり、 意図的にタイムアウトをさせないように動作させることなど なんでも構いません. お力添えをお願い致します.

  • ACCESS97, 2000のODBCリンクでのインポート時のタイムアウト回避

    ACCESS97, 2000のODBCリンクでのSQL6.5へデータをインポートしています。 大き目のデータをインポートする場合、タイムアウトしてしまいますが タイムアウト時間をクエリーの様に設定できないのでしょうか?  

  • セッションタイムアウトの設定時間通りにならない

    C#によるWebアプリケーションを開発しています。 セッションタイムアウトの設定を240分としていますが、 240分前にタイムアウトになってしまいます。 設定時間通りにタイムアウトにならない事象が発生しており、 原因を究明しています。 【状況】 Web.configとIISにて、セッションタイムアウトの時間を 設定しております。 (1)Web.configの設定 Web.config内にて、 <sessionState timeout = "240" /> のタグを設けて、セッションタイムアウトの時間を240分としています。 (2)IISの設定 IISにて、アプリケーションの構成の【オプション】タブにて、 「セッションのタイムアウト」を240分としています。 【環境】 OS:Windows Server 2003 Webサーバ:IIS6.0 DBサーバ:SQL Server 2005、 セッションタイムアウトが指定時間に行われない原因について、 ご教授の程お願い致します。

  • ODBCタイムアウトエラー

    WindowsXP環境でACCESS2003を使用して、ODBCリンクでSQL SERVER2005に接続し、データーを取得後ローカルテーブルにデーターを置く処理を作って運用していたのですが、 Windows7でACCESS2003に移行し、システム内容は変更していないのですが Windows7になってリンクテーブルを開くと「ODBC タイムアウトエラー」が発生します。 WindowsXPのときはタイムアウトが出ずに1分くらいで結果が返ってきます。 多分、SQL SERVER ドライバーの影響と思うのですが分かりません。 どなたか教えてください。 Windows7 SQLSERVER(ODBC)ドライバー バージョン:6.01.7601.17514 windowsXP ドライバー バージョン:200.85.1132.00

  • タイムアウト時間の設定

    http://www32.ocn.ne.jp/~chi/FreeBSD/HowTo/mail/viaisp.html の下のほうに、「メールサーバ自身がタイムアウト等で接続状態を解除するまで 待ちましょう」 とあるのですが、タイムアウトと判断する時間を設定するには、sendmailではどのファイルのどこをいじったらいいのでしょうか?

  • mechanizeのタイムアウト処理について

    いつもお世話になります。 perl+mechanizeで、スクレイピングスクリプトを書いております。 $mech->reload(); にて、44秒~2分程度、サーバーから反応がない場合があります。この場合$mech->contentからは、"500 Server closed connection without sending any data back"というエラーを得ることができます。 この$mech->reload()時に、例えば、5秒待って、サーバーから反応がない場合は、次の処理に進ませる実装方法はありますでしょうか? $mechの生成時に、 $mech = WWW::Mechanize->new(timeout => 5); などとして、タイムアウト時間を5秒に設定することも出来るようですが、前記$mech->reload()時の時のみ5秒間のタイムアウト時間としたいのです。というのも、その他の箇所で、$mechは時間をかけてもよいからです。 以上、すみませんが、ご存知の方がいらっしゃいましたら、ご教示願います。

    • ベストアンサー
    • Perl
  • セッションのタイムアウト時間変更

    PHP4.4.1+ホスティング セッションのタイムアウト時間を、サーバ設定の変更なしで、 変更することは可能でしょうか? 変更する関数とかって無いでしょうか? ホスティングなので、サーバ設定の変更ができなくて。 ちなみに、今は初期値の1440秒になっています。 よろしくお願いします。

    • ベストアンサー
    • PHP