ADO执行多条sql语句

 string connstr = "data source=WIN-10AFVI27V7T;initial catalog=School;user id=sa;password=admin;";
              using (SqlConnection conn = new SqlConnection(connstr))
              {
                  string sql = "select * from T_Class;select * from T_Student";
                  using (SqlCommand cmd = new SqlCommand(sql, conn))
                  {
                      conn.Open();
                      using (SqlDataReader reader = cmd.ExecuteReader())
                      {

 


                        #region 读取多个结果集的方法
                          //do···while    do先来读取第一个结果集  while(reader.NextResult())中判断是否还有一个结果集,如果有在do中再次读取第二个结果集,依次类推···
                          do
                          {
                              if (reader.HasRows)
                              {
                                  while (reader.Read())
                                  {
                                      for (int i = 0; i < reader.FieldCount; i++)
                                      {
                                          Response.Write(reader.GetValue(i));
                                      }
                                      Response.Write("<br/>");
                                  }
                              }
                          }
                          while (reader.NextResult());
                          #endregion

 

 

 

                          #region 读取一个结果集的方法
                          //if (reader.HasRows)
                          //{
                          //    while (reader.Read())
                          //    {
                          //        //内层循环获取列

                          //        for (int i = 0; i < reader.FieldCount; i++)
                          //        {
                          //            Response.Write(reader.GetValue(i));
                          //        }
                          //        Response.Write("<br/>");
                          //    }
                            
                          //    Response.Write("有查询结果集!");
                          //}
                          #endregion
                      }
                  }
              }

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: `ADO.NET` 是一种在 .NET 框架中用于访问和操作数据库的技术。`Command.Parameters.Add` 方法是用于向 ADO.NET 中的 SqlCommand 对象添加参数的方法。 通过使用参数,可以避免 SQL 注入攻击,因为参数的值将被视为单独的数据,而不是 SQL 语句的一部分。此外,使用参数可以提高代码的可维护性和可读性,因为 SQL 语句和参数的值将分开存储。 语法示例: ``` SqlCommand cmd = new SqlCommand(); cmd.CommandText = "SELECT * FROM Employees WHERE EmployeeID = @EmployeeID"; cmd.Parameters.Add("@EmployeeID", SqlDbType.Int).Value = 1; ``` 在这个例子中,我们创建了一个名为 `cmd` 的 SqlCommand 对象,并为它设置了一条 SQL 语句。然后,我们使用 `Parameters.Add` 方法添加了一个名为 "@EmployeeID" 的参数,并为它设置了一个整数类型的值。 总之,使用 `Command.Parameters.Add` 方法可以方便地在 ADO.NET 中添加参数,并使用它们来更安全地执行 SQL 查询。 ### 回答2: 在ADO.NET中,Command.Parameters.Add方法的作用是向数据库命令对象的参数集合中添加参数。参数集合中存储了在执行数据库命令时使用的参数信息。 使用命令参数可以将数据值传递给数据库命令,提供了一种将变量值绑定到查询或存储过程的方式。它可以用于设置查询条件、更新或插入数据,以及执行存储过程等。通过参数化查询,可以提高应用程序的安全性,防止SQL注入攻击。 Command.Parameters.Add方法用于向参数集合中添加新的参数。它接受多个参数,用于设置参数的名称、数据类型、长度、方向和值等。常用的参数设置有ParameterName、DbType和Value。 ParameterName属性用于设置参数的名称,以在SQL语句中引用它。DbType属性用于指定参数的数据类型,确保传递给数据库的数据与数据库表列的数据类型匹配。Value属性用于设置参数的值,该值将被传递给命令对象的执行。 通过Command.Parameters.Add方法创建的参数对象将被自动添加到参数集合中,并在执行数据库命令时被使用。参数集合中的参数可以通过索引或名称进行访问和设置。通过索引访问参数能够提高性能,而通过名称访问参数则更易读和维护。 总之,ADO.NET中的Command.Parameters.Add方法允许我们通过参数化查询方式向数据库命令传递参数值,提高应用程序的安全性和性能。它提供了一种灵活的方法来设置、访问和管理数据库命令的参数。 ### 回答3: ADO.NET是一种用于连接数据库的技术,它提供了一系列的类和方法用于执行数据库操作。在ADO.NET中,Command.Parameters.Add方法是一个用于向指定的SqlCommand对象中添加参数的方法。 SqlCommand是ADO.NET中用于执行SQL命令的类,通过Command对象我们可以向数据库发送SQL语句并获取执行结果。在发送SQL语句之前,我们通常需要将一些值作为参数传递给SQL语句,以便进行相应的操作。Command.Parameters.Add方法就是用于向SQL命令中添加这些参数的。 使用Command.Parameters.Add方法可以将参数的名称、数据类型和值添加到SqlCommand对象中。参数的名称用来在SQL命令中标识该参数,数据类型用于指定参数的数据类型,值用来为参数赋值。添加参数后,我们可以在SQL语句中以参数的形式引用这些参数,而不需要直接将值写入SQL语句中。 通过使用参数化查询,我们可以有效地防止SQL注入攻击,并提高了查询的执行效率。此外,参数还使我们的代码更具可读性和可维护性,使得修改SQL语句或更改参数值变得更加方便。 总结来说,SqlCommand.Parameters.Add方法的作用就是将参数添加到SqlCommand对象中,以便在执行SQL命令时使用。通过参数化查询,我们可以提高应用程序的安全性、执行效率和可读性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值