一、连接模式
1)定义:
指直接与数据库进行连接操作,在操作数据库过程中不允许关闭连接。
2)常用的对象
SqlConnection对象:主要负责连接数据库
SqlCommand对象: 主要负责生产并执行SQL语句或存储过程
DataReader对象:主要负责读取数据库中的数据
3)对象使用
Command 方法
ExecuteNonQuery() : 执行不返回行的命令,返回影响的行数,类型为int
ExecuteReader() :执行返回行的命令,返回一行数据,类型为DataReader对象
ExecuteScalar(): 检索数据库单个列的数据库信息,返回值为Object对象,需要进行类型转换
如 总数,总价,平均价等等 eg:Count(*),Sum(Price),AVG(Quantity)
int count = (int32)cmd.ExecuteScalar(); //类型转换
DataReader 对象,使用完要关闭(close)
Read() : 从查询结果中获取行,
SqlDataReader dr = cmd.ExecuteReader(); //cmd :SqlCommand 对象
① dr.Read();
dr.["Sname"]
② if(dr.HasRows) //判断是否有行数
{
string name = dr["Sname"].ToString(); //输出数据中 Sname 字段
}
NextResult() : 按顺序访问这些结果集
do
{
while( dr.Read() )
Console.WriteLine(dr.GetString(0)) ; //已知字段类型
}while( dr.NextResult() )
关闭:DataReader将独占Connection资源,必须close()关闭