1、OleDbConnection 和 SqlConnection 对象,用于数据库连接,有ConnectionString和Open等属性 类似于 ADO 的 Connection 对象。
2、OleDbCommand 和 SqlDbCommand 对象,利用这两个对象,有ExecuteNonQuery和ExecuteReader等属性 可以通过sql语句对数据库进行直接操作,类似与Ado中的Connection.execute操作。
3、DataSet 对象,他包含实际数据的副本,类似于断开连接的 ADO中的Recordset 对象。。
DataRelation 对象和 Contraint 对象,这两个对象分别代表数据表之间的关系和这些表中数据的约束。
DataSet 对象还可以包含 DataTable 对象,该对象又可以包含 DataColumn 和 DataRow 对象
使用 DataTableMapping 对象和 DataColumnMapping 对象,数据集可以将数据库中的表和列映射为相应 的DataTable 对象和 DataColumn 对象。
4、OleDbDataAdapter 和 SqlDataAdapter 对象
根据我的理解这两个对象类似于数据库和 DataSet 对象之间的中介,有点像Ado中的Adodc的作用,可以从
数据库中取得数据集,再使用 Fill 方法填充 DataSet 对象,这时候可以同数据库断开连接,然后使用 Update 方法重新连接到数据库,并将在 DataSet 对象中所做的更改保存回数据库。
OleDbDataAdapter 和 SqlDataAdapter 对象 中有InsertCommand,DeleteCommand,SelectCommand和
UpdateCommand四个集合,可以保存数据库的select,insert,delete和update命令用以实现对数据库的操作。
5、SqlDataReader 对象和 OleDbReader 对象
代表连接的、仅向前移动的、只读数据读取器,如果能够保持与数据库的持续连接,并且只希望读取数据而不进
行更改,这是非常有用的。在这种情况下,无需创建 DataSet 对象。数据读取器类似于连接的、只读 ADO Recordset 对象。
二、ADO.NET的一般工作流程:
注意:
建立完毕各个对象后,务必要将定义的DataAdapter对象Fill到需要的DataSet中,尤其是直接使用控件
连接数据库的时候,由于DataSet是从DataAdapter中Generate出来的,比较容易忽略,切记。
三、使用DataSet的数据库连接代码:
Sub DbConnection()
Dim cn As New OleDb.OleDbConnection()
Dim DataAdt as New OleDb.OleDbDataAdapter()
Dim DataSet As New DataSet()
Dim cnstr As String
Dim sql As String
‘Database connection string
cnstr = "XXXXXXXXX”
‘the Sql String used in your application
sql = "XXXXXXXXXX"
‘open connection
cn.ConnectionString = cnstr
cn.Open()
‘open DataAdapter
OleDbDataAdt.SelectCommand.Connection = cn
OleDbDataAdt.SelectCommand.CommandText = sql
‘Fill DataSet
OleDbDataAdt.Fill(DataSet, "XXXX")\*将定义的DataAdapter对象Fill
到需要的DataSet*\
End sub
可以使用数据接收控件如DataGrid来显示DataSet中的数据
如果需要对数据库进行修改,有两种主要的方式:
一个是通过command对象直接使用sql对数据库进行修改,如:
Dim cmd As New OleDb.OleDbCommand()
‘cn与sql定义参考上段代码
cmd.Connection = cn
sql=”XXXXXX(insert,delete,update)”
cmd.CommandText = sql
cmd.ExecuteNonQuery()
另一种方式是使用OleDbDataAdapter的insertcommand等对象和DataSet的tables中的add等属性进行修改(未实验)
上一篇:ADO.NET内容简介
下一篇:asp.net用DataSet从数据库中获取数据