c#中executereader执行查询示例分享

下面我将详细讲解“c#中executereader执行查询示例分享”的完整攻略。

标题

什么是executereader

executereader是c#中执行查询操作的方法之一,通过该方法可以将SQL语句查询到的数据以DataReader的形式返回给我们,读取和处理数据十分方便。

如何使用executereader

使用executereader方法需要创建SqlConnection连接对象,并且在该对象的连接字符串中指定数据库的详细信息,代码如下:

string connStr = "Data Source=数据源;Initial Catalog=数据库名称;User ID=用户名;Password=密码;";
SqlConnection conn = new SqlConnection(connStr);

创建SqlCommand对象,设置SQL语句并指定相应参数,代码如下:

string sql = "SELECT * FROM user WHERE age > @age";
SqlCommand command = new SqlCommand(sql, conn);
SqlParameter parameter = new SqlParameter("@age", SqlDbType.Int);
parameter.Value = 18;
command.Parameters.Add(parameter);

使用executereader方法执行查询语句并将查询结果返回给SqlDataReader对象,代码如下:

SqlDataReader reader = command.ExecuteReader();

最后,通过对SqlDataReader对象进行遍历,读取出查询结果中的每一行数据,代码如下:

while(reader.Read())
{
    string name = reader["name"].ToString();
    int age = Int32.Parse(reader["age"].ToString());
    string gender = reader["gender"].ToString();
    Console.WriteLine("name:{0}, age:{1}, gender:{2}", name, age, gender);
}

示例1:查询用户信息

下面通过一个查询用户信息的示例,来演示如何使用executereader方法执行查询操作。

string connStr = "Data Source=数据源;Initial Catalog=数据库名称;User ID=用户名;Password=密码;";
SqlConnection conn = new SqlConnection(connStr);

string sql = "SELECT * FROM user WHERE age > @age";
SqlCommand command = new SqlCommand(sql, conn);
SqlParameter parameter = new SqlParameter("@age", SqlDbType.Int);
parameter.Value = 18;
command.Parameters.Add(parameter);

SqlDataReader reader = command.ExecuteReader();

while (reader.Read())
{
    string name = reader["name"].ToString();
    int age = Int32.Parse(reader["age"].ToString());
    string gender = reader["gender"].ToString();
    Console.WriteLine("name:{0}, age:{1}, gender:{2}", name, age, gender);
}

reader.Close();
conn.Close();

示例2:查询订单信息

下面通过一个查询订单信息的示例,来演示如何使用executereader方法执行查询操作。

string connStr = "Data Source=数据源;Initial Catalog=数据库名称;User ID=用户名;Password=密码;";
SqlConnection conn = new SqlConnection(connStr);

string sql = "SELECT * FROM order WHERE orderDate > @date";
SqlCommand command = new SqlCommand(sql, conn);
SqlParameter parameter = new SqlParameter("@date", SqlDbType.DateTime);
parameter.Value = DateTime.Now.AddDays(-7);
command.Parameters.Add(parameter);

SqlDataReader reader = command.ExecuteReader();

while (reader.Read())
{
    string orderNumber = reader["orderNumber"].ToString();
    DateTime orderDate = DateTime.Parse(reader["orderDate"].ToString());
    decimal totalAmount = Decimal.Parse(reader["totalAmount"].ToString());
    Console.WriteLine("orderNumber:{0}, orderDate:{1}, totalAmount:{2}", orderNumber, orderDate, totalAmount);
}

reader.Close();
conn.Close();

以上就是使用executereader方法执行查询操作的完整攻略,希望对您有所帮助。

营销型网站