ADO.NET连接数据源的步骤:
- 使用连接对象Connection连接数据库
- 使用命令对象Command执行SQL语句
- 使用数据读取器对象DataReader读取数据
- 使用数据集对象DataSet和数据适配器对象DataAdapter访问数据库
Connection的操作
SqlConnection myconn = new SqlConnection();
//定义并实例化一个此对象
myconn.ConnectionString = "Server=数据库服务器名;DataBase=数据库名;Uid=用户名;Pwd=密码";
//使用SqlServer用户登录验证方式连接数据库
myconn.Open();
myconn.Close();
注意:若使用Windows验证方式连接数据库
myconn.ConnectionString="DataSource=数据库服务器名;InitialCatalog=数据库名;Integrated Security=SSPI";
Command 执行Sql语句
- 三个属性
1 、CommandText——要做的事情
2 、Connection——要连接的对象
3 、CommandType——事情的类型(默认即执行SQL语句) - 方法
1、ExecuteNonQuery(); ——增删改操作,返回int型,表示受影响的项
2、ExecuteScalar(); ——聚合函数常用,查询结果只有单行单列
3、ExecuteReader(); ——查询结果有多条,返回DataReader对象
String strsql = "select * from user where username='xzx'";
SqlCommand mycmd = new SqlCommand(strsql,myconn);
mycmd.ExecuteReader();
使用数据读取器对象DataReader读取数据(在线访问)
DataReader如何产生?
——Command对象在调用ExecuteReader()时,返回一个DataReader对象
如何读取?
——Read();//返回布尔值
SqlDataReader dr = mycmd.ExecuteReader();
if(dr.Read())
{
strpw=dr.GetString(2);
……
}else
{
//没有读到数据
}
在线式访问优缺点:1、节省资源,效率高 2、增加服务器负荷,缺乏灵活性
使用数据集对象DataSet和DataAdapter访问数据库(离线访问)
- DataSet对象 主要是Table的集合
1、Tables(序号)
2、Tables(表名) - DataAdapter对象
1、Fill(); ——Fill(数据集名,表名)
2、Update();——Update(数据集名,表名
|____CommandBuilder对象