当前位置: 代码迷 >> SQL >> SQL Server入门-ADO 简介
  详细解决方案

SQL Server入门-ADO 简介

热度:223   发布时间:2016-05-05 14:12:13.0
SQL Server入门------ADO 简介

ADO(ActiveX Data Object), 是一种用以实现访问关系或非关系数据库的数据应用程序接口  .

ADO通过OLEDB实现对不同类型数据源的访问.OLEDB则是一种底层的编程接口,他支持关系或非关系的数据源.Such as 数据库  ,电子表格,电子邮件,和文本文件等


OLEDB包含三个部分:



①数据提供者


数据提供者:DataProvider。指任何数据的提供者 例如:

'建立数据库连接objCn.ConnectionString= "Provider=Microsoft.Jet.OLEDB.3.51;" & "Data Source="& App.Path & "\1.mdb "


此处为数据库提供了数据源 

 

②数据消费者:


数据消费者:指使用数据提供者提供数据的应用程序。使用ADO的应用程序都是OLEDB的消费者 

③服务组件


服务组件:就是数据消费者和数据提供者之间沟通的桥梁

           下面是数据消费者,ADO ,OLEDB数据提供者和服务组件之间的关系

 




ADO对象模型


ADO 数据库的访问




  1. 使用Data控件访问数据库


Data 控件


Dim objRsAs New Recordset, objCn As New Connection, intPage As IntegerPublic SubShowData(ByVal intPage As Integer)'实现分页记录显示功能DimintPageCount As Integer, intRecord As IntegerDimobjDataSource As New Recordset'创建一个局部Recordset对象保存objRs当前记录页数据ForintRecord = 0 To objRs.Fields.Count - 1       objDataSource.Fields.AppendobjRs.Fields(intRecord).Name, adVarChar, objRs.Fields(intRecord).DefinedSize       Next       objDataSource.Open  '打开局部Recordset 对象       objRs.PageSize = Val(txtPageSize)'重新设置objRs每页显示的记录条数       objRs.AbsolutePage = intPage'重新设置objRs的当前记录页       For intRecord = 1 To objRs.PageSize  '将当前记录页中的数据写入objDataSource       objDataSource.AddNew       objDataSource!用户名 = objRs!用户名       objDataSource!口令 = objRs!口令       objDataSource!身份 = objRs!身份       objRs.MoveNext       If objRs.EOF Then Exit For       Next       Set DataGrid1.DataSource = objDataSource'设置为数据网格的数据源       txtPageMsg = intPage & "/"& objRs.PageCount '刷新当前记录页信息End Sub


  1. 使用DAO对象访问数据库
  2. 使用ADO Data控件访问数据库

 


ADO 控件

Private Sub Adodc1_MoveComplete(ByVal adReason AsADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus AsADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)'使ADO Data 控件显示当前记录编号和总记录数Adodc1.Caption = "当前记录:" &Adodc1.Recordset.AbsolutePosition & "/" &Adodc1.Recordset.RecordCount End Sub


 

  1. 使用ADO对象访问数据库

Private Function Check_PassWord(ByVal UserName As String, ByValPassword As String) As ByteOn Error GoTo gpErrorDim objCn As New Connection, objRs As New Recordset, strCn AsString, strSQL As String'建立数据库连接objCn.ConnectionString ="Provider=Microsoft.Jet.OLEDB.3.51;" & "Data Source="& App.Path & "\1.mdb "objCn.Open '执行查询命令,获得用户登录口令'strSQL = "SELECT 口令 FROM 系统用户 WHERE 用户名='" &UserName & "'"Set objRs.ActiveConnection = objCnobjRs.Open (strSQL



  相关解决方案