次の汎用データ アクセス関数 (ADO.NET、C# または VB、SQLServer または OLEDB) をコーディングする最良の方法は何ですか?
- 接続で SQL を実行する
- DataReader を開く
- DataSet を開きます (これに関するアイデアはありますか?)
プログラムのどこからでもこれらの関数を呼び出すことができるようにします。これらの機能に直接適用されない限り、データ アクセス パターンやデータ アクセス レイヤーには興味がありません。(つまり、接続またはリーダー/データセットを自動的に閉じるパターン)
使用例
ExecuteSQL("UPDATE tblTest SET x = 5 WHERE [ID] = 4")
rdr を OleDb.OleDbDataReader = OpenReader("SELECT * FROM tblExecute") として使用する
rdr.Read() 中
終了
使用終了
関数の例
Public Function ExecuteSQL(ByVal strSQL As String) As Boolean
cn を新しい OleDb.OleDbConnection(strConn) として使用する
cn.Open()
cmd を新しい OleDb.OleDbCommand(strSQL, cn) として使用する
cmd.ExecuteNonQuery() > 0 を返します
使用終了
使用終了
偽を返す
終了機能
Public Function OpenReader(ByVal strSQL As String) As OleDb.OleDbDataReader
Dim cn As New OleDb.OleDbConnection(strConn)
cn.Open()
cn.State = ConnectionState.Open の場合
Dim cmd As New OleDb.OleDbCommand(strSQL, cn)
cmd.ExecuteReader(CommandBehavior.CloseConnection) を返します。
そうしないと
新しい例外をスロー ("データベースに接続できません。")
終了条件
終了機能