ADO.NET SqlCommand一.创建SqlCommand对象的方法 1.cmd=new SqlCommand(); //直接创建 2.cmd=new SqlCommand(strSQL,cn); //调用构造函数创建 3.cmd=cn.CreateCommand(); //使用SqlConnectiion对象的CreateCommand方法 二.执行查询 (基于SqlDataReader的操作方式) 读取方法: A.读取几列值 B.读取单一值 以上语句可以用一句语句代替: decimal decOrderTotal=(decimal)cmd.ExecuteScalar(); 2.执行不返回结果集的查询 cmd.ExecuteNonQuery() 可根据ExecuteNonQuery()方法的返回值来判断执行的结果。 3.其它 使用Using块 using (SqlCommand cmd=new SqlCommand(strSQL,cn)) { try{ using (SqlDatareader rdr=cmd.ExecuteReader())
} } 基于序号 int intcustomerIDOrdinal=rdr.GetOrdinal(“CustomerID”); rdr[intcustomerIDOrdinal]; 强类型getter int intcustomerIDOrdinal=rdr.GetOrdinal(“CustomerID”); rdr.GetString(intcustomerIDOrdinal) 应当总是使用适当的强类型getter,它们与结果集中列所返回的数据相对应,如果不能确定调用哪种类型getter,可以调用GetFieldType方法,传递需要的列的序号为参数。 处理Null值 在处理字符串内容之前,需确定该字符串已被初始化。 如果正在从一个可能包含Null值的列中获取数据,请在尝试访问前检查其值。 使用isDBNull方法(只接受一个表示列序号的整数) while (rdr.Read()) { order=new Order() order.OrderID=rdr.GetInt32(0); … if(rdr.IsDBNull(3)) order.ShippedDate=null; else order.ShippedDate=rdr.GetDateTime(3); } |
|
来自: deargem > 《asp.net学习》