データベース開発においてExecuteReaderメソッドの使い方

データベース開発では、ExecuteReaderメソッドはSQLクエリーを実行し、クエリー結果を読み取るDataReaderオブジェクトを返します。

ExecuteReaderメソッドを使用する手順は次のとおりです。

  1. 接続文字列を使って、SqlConnection オブジェクトを作成し、初期化する。接続文字列には、データベース名、サーバー名、その他接続に関連する情報が含まれる。
  2. データベース上で実行するSQL文やストアードプロシージャを表すSqlCommandオブジェクトを作成し、SQLクエリ文とSqlConnectionオブジェクトで初期化する
  3. SqlCommandオブジェクトのExecuteReaderメソッドを呼び出すと、SQLクエリが実行され、SqlDataReaderオブジェクトが返されます。SqlDataReaderオブジェクトはクエリ結果の各行を読み出すために使用されます。
  4. SqlDataReaderオブジェクトのReadメソッドを利用して、取得したクエリ結果を1行ずつ読み込んでいく。Readメソッドは、さらに読み込む行が残っている場合はTrueを返し、残っていない場合はFalseを返す。ReadメソッドがTrueを返した場合、SqlDataReaderオブジェクトのGetXXXメソッド(GetString、GetInt32など)を使用して、行の各列の値を読み込むことができる。
  5. クエリ結果の読み込みが完了したら、SqlDataReader オブジェクトと SqlConnection オブジェクトを閉じてリソースを解放します。

クエリーを実行し、結果を読み取るExecuteReaderメソッドの使用例を示すコードサンプルを次に示します。

string connectionString = "连接字符串";
string query = "SELECT 列1, 列2 FROM 表名";

using (SqlConnection connection = new SqlConnection(connectionString))
{
    connection.Open();

    using (SqlCommand command = new SqlCommand(query, connection))
    {
        using (SqlDataReader reader = command.ExecuteReader())
        {
            while (reader.Read())
            {
                string column1Value = reader.GetString(0);
                int column2Value = reader.GetInt32(1);

                // 处理每一行的数据
            }
        }
    }
}

上の例の接続文字列は、有効な接続文字列に置き換える必要があり、query変数はSQLクエリー文に置き換える必要があります。whileループでは、readerのGetXXXメソッドを呼び出すことで、各行の列の値を取得します。なお、GetXXXメソッドのパラメータは列のインデックスであり、0から数えます。

bannerAds