- PR -

SQLServerでのコネクションタイムアウト

1
投稿者投稿内容
つばさ
会議室デビュー日: 2005/02/10
投稿数: 2
投稿日時: 2005-02-10 10:52
初めて質問させていただきます。

これから開始するプロジェクトの、DB関連の共通クラスを作成することになりましたが、以下の要望を満たす簡単な方法がありましたら、教えていただけますでしょうか。

「コネクションを生成、接続し、一定時間DBにアクション(Select,Insert等)を起こさなかった場合、自動的に接続を切断する」

DBはSQLServer2005、言語はC#を用いる予定です。
調べてはみたのですが、なかなかこれといったものが見つからず、最終手段としては、Win32 APIを使用し、別スレッドでタイムアウトを監視するしかないのかと考えております。

ご指導よろしくお願いいたします。
いーた
大ベテラン
会議室デビュー日: 2004/07/12
投稿数: 154
お住まい・勤務地: 東京
投稿日時: 2005-02-10 13:33
「ユーザが一定時間操作していない場合は接続を切断する。」
といった用途を考えているのでしょうか?
であれば、操作(検索・登録等)の都度、DBに対して接続/切断をするようにしてみてはいかがでしょうか。

@ITの他スレッドで
・アプリ起動時に接続、終了時に切断を行う
・処理の都度、接続/切断を行う
という2択の投票スレッドがあり、結果は後者の得票数のほうが多かったと記憶しています。
スレッド内ではそのメリットについても記述されておりました。

色々検索してみたのですが...すみません。
ご存知の方がいらっしゃればフォローお願いします。

見つかりました。
このスレッドです。

[ メッセージ編集済み 編集者: いーた 編集日時 2005-02-10 13:39 ]
つばさ
会議室デビュー日: 2005/02/10
投稿数: 2
投稿日時: 2005-02-14 12:36
こんにちは、つばさです。
いーたさん、ご返答ありがとうございました。
教えていただいたスレッドを参照させていただきました。

「処理の都度、接続/切断を行う」方法よりも「アプリ起動時に接続、終了時に切断を行う」方法の方がサーバー負荷やレスポンスの面でもよいのではないかと考えておりましたので、大変驚きました。そして勉強になりました。

このスレッドを参考に、「処理の都度、接続/切断を行う」方法で提案していきたいと思います。
ご指導ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)