2017-06-05 6 views
-1

私はVB.netを使用してウィンドウプロジェクトに取り組んでいます。私のプロジェクトのすべてのフォームで、フォームロード時にMicrosoft Accessデータベース接続を開き、フォーム終了イベントを閉じました。だから私は、これはすべてのフォームでデータベース接続を開いたり閉じたりするのがよい方法であることを伺いたいと思います。VB.Netウィンドウプログラミングデータベースの連結を閉じる

答えて

0

は、以下のことを考えてみましょう:

  1. は、DB接続が更新またはのみ照会するために使用されますか?
  2. フォームを開いて同時にdbに接続するユーザーは何人ですか?

ユーザーが多く、データベースを更新する場合は、フォームを開いている間も接続を維持することはお勧めできません。通常は、開いた時点でいくつかのデータを照会し、直ちにその接続を閉じることができます。

0

クエリを実行するたびにdb接続を作成/オープン/クローズすることをお勧めします。
create/open/closeによって、SqlConnectionの新しいインスタンスをインスタンス化することに注意してください。
ADO.NETは、コードで新しい接続を開くたびに、データベースサーバーへの実際の物理接続を1回だけ開いて再利用します。

だから、すべてのクエリはで開く接続した場合自身の新しい接続

Using connection As SqlConnection = new SqlConnection(yourConnectionString) 
    Using command As SqlCommand = new SqlCommand(sqlQuery, connection) 
     return command.ExecuteNonQuery(); 
    End Using 
End Using 

で実行し、例外がスローされたときに、フォームが開いている間、あなたの接続が開かれたままになる可能性がForm_Closingでそれをそれを閉じるべきです。接続はあなたがUsingキーワードを使用してこの状況に対処し、「醜い」try .. catchどこでも

の使用を避けることができ、あなたのコード内で「開かれた」そして、私はあなたがSQLパラメータを使用している願っているときの時間の量を減らすことにより

SqlParameter )を照会します。

関連する問題