Using … As New …
VB 2005から新たに使えるようになった Usingステートメントを使って、データベースと接続するサンプルプログラムを作成します。
VB 2005から新たに Using ステートメントが使えるようになりました。Usingステートメントで生成したオブジェクトは、End Usingを抜ける時に自動的に閉じられます。したがって、Finallyブロックで、closeメソッドを明示的に呼び出す必要はありません。
Try Using con As New SqlConnection Dim settings As ConnectionStringSettings ' 接続文字列をapp.configファイルから取得 settings = ConfigurationManager.ConnectionStrings _ ("AdoNet.My.MySettings.sampleDBConStr") If settings Is Nothing Then ' 接続文字列取得エラー MessageBox.Show _ ("app.configに未登録", "接続文字列エラー") Else ' 接続文字列の設定 con.ConnectionString = settings.ConnectionString ' DBを開く con.Open() End If End Using Catch ex As Exception MessageBox.Show(ex.ToString, "例外発生") End Try
Try - Finally
VB.NETでは、コネクションの Openメソッドを呼出したら、Try-Finally ステートメントを使って、Finally ブロックで Closeメソッドを呼出すようにコーディングする必要があります。
Using - End Using のサンプルプログラムを Try - Finally で書き直しました。
Dim con As New SqlConnection Try Dim settings As ConnectionStringSettings ' 接続文字列をapp.configファイルから取得 settings = ConfigurationManager.ConnectionStrings _ ("AdoNet.My.MySettings.sampleDBConStr") If settings Is Nothing Then ' 接続文字列取得エラー MessageBox.Show("app.configに未登録", "接続文字列エラー") Else ' 接続文字列の設定 con.ConnectionString = settings.ConnectionString ' DBを開く con.Open() End If Catch ex As Exception ' 例外が発生した時の処理 MessageBox.Show(ex.ToString, "例外発生") Finally ' DBを閉じる If Not con.State = ConnectionState.Closed Then con.Close() End If End Try