在C#中,ExecuteReader方法用于执行一个查询命令并返回一个DataReader对象,该对象用于读取查询结果的数据行。
使用ExecuteReader方法的一般步骤如下:
using (SqlConnection connection = new SqlConnection(connectionString))
{
// ...
}
using (SqlCommand command = new SqlCommand(query, connection))
{
// ...
}
其中,query为要执行的查询命令,connection为已经打开的SqlConnection对象。
using (SqlDataReader reader = command.ExecuteReader())
{
// ...
}
while (reader.Read())
{
// 读取数据行的各个列的值
string column1Value = reader.GetString(0); // 获取第一个列的字符串值
int column2Value = reader.GetInt32(1); // 获取第二个列的整数值
// ...
}
reader.Close();
需要注意的是,在执行完查询后,需要及时关闭DataReader对象和SqlConnection对象,以释放相关的资源。
完整的示例代码如下:
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
string query = "SELECT * FROM TableName";
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); // 获取第二个列的整数值
// ...
}
}
}
}
这就是C#中ExecuteReader方法的基本用法。注意在实际使用中,还需要添加适当的异常处理和资源释放。