VB中如何ADODB 实现查询后显示在DATAGRID

VB中如何ADODB 实现查询后显示在DATAGRID,第1张

VB使用ADODB的Recordset 对象,将SQL查询字符串传递给 Recordset 对象的 Open 方法,来获取查询结果于记录集。使用Set 语句将查询的记录集赋给DataGrid控件的DataSource属性来实现显示于DataGrid控件中。

Recordset 对象 (ADO),表示的是来自基本表或命令执行结果的记录全集。任何时候,Recordset 对象所指的当前记录均为集合内的单个记录。

在打开 Recordset 之前设置 CursorType 属性来选择游标类型,或使用 Open 方法传递

CursorType 参数。部分提供者不支持所有游标类型。请检查提供者的文档。如果没有指定游标类型,ADO 将默认打开仅向前游标。

Set 语句,将对象引用赋给变量或属性。

SQL, Structured Query

Language(结构化查询语言 (SQL)),一种数据查询和编程语言。

代码实例:

Private Sub Command1_Click()

  Dim cn As New ADODBConnection '定义数据库的连接

  Dim rs As New ADODBRecordset

  Dim sql As String

  sql = "select from jishijilu" '

  cnConnectionString = "Provider=MicrosoftJetOLEDB40;Data Source=" & AppPath & "\wdmdb;Persist Security Info=False"

  cnOpen

  rsCursorLocation = adUseClient

  rsOpen sql, cn, adOpenDynamic, adLockOptimistic

  Set DataGrid1DataSource = rs

End Sub

VBA是VB的一个只集,但是运行平台不一样。所以要移植到VB中理论上只要复制一下就行。

但是里面涉及到的数据库的链接,对office的 *** 作要换成VB的函数和语法。

下面是VB用ADODBConnection链接数据库的例子,楼主可以参考一下

Private Sub Command1_Click()

    Dim cn As New ADODBConnection '定义数据库的连接

    Dim rs As New ADODBRecordset

    Dim sql As String

    sql = "select  from jishijilu" '

    cnConnectionString = "Provider=MicrosoftJetOLEDB40;Data Source=" & AppPath & "\wdmdb;Persist Security Info=False"

    cnOpen

    rsCursorLocation = adUseClient

    rsOpen sql, cn, adOpenDynamic, adLockOptimistic

    Set DataGrid1DataSource = rs

End Sub

使用ADO数据数据对象或控件,参考以下代码。

Private Sub Form_Load()

    Dim cnn As New Connection

    Dim rs As New Recordset

    Dim sql As String

    Dim ARR

    cnnOpen "Provider=MicrosoftJetOLEDB40;Data Source=C:\wdOldmdb;Persist Security Info=False"

    sql = "select 故障名称 from guzhang_bm"

    rsOpen sql, cnn

    Combo1Text = "故障名称"

    Do While Not rsEOF

        Combo1AddItem rs("故障名称")

        rsMoveNext    '打开表

    Loop

    rsClose

    cnnClose

End Sub

Private Sub Command1_Click()

    Dim sqlstr As String

    sqlstr = "select  from jishijilu"

    Adodc1ConnectionString = "Provider=MicrosoftJetOLEDB40;Data Source=C:\wdOldmdb;Persist Security Info=False"

    Adodc1RecordSource = sqlstr

    Adodc1Refresh

    Set DataGrid1DataSource = Adodc1

    Text1 = Adodc1RecordsetRecordCount

VB读取Mdb数据库一个表的数据可使用ADO数据对象或ADO数据控件实现。

通过选择“工程”菜单中的“引用”来为 ADO 对象库添加一个引用,然后在“引用”对话框中选择 Microsoft ActiveX Data Objects 20 Library

点上图确定。工程就引用了ADO。

运行代码示例:

Private Sub Command1_Click()

  Dim cn As New ADODBConnection '定义数据库的连接

  Dim rs As New ADODBRecordset '声明一个 Recordset 对象变量

  Dim sql As String

  sql = "select from jishijilu"

cnConnectionString = "Provider=MicrosoftJetOLEDB40;Data Source=" & AppPath & "\wdmdb;Persist Security Info=False"

  cnOpen

  rsCursorLocation = adUseClient

  rsOpen sql, cn, adOpenDynamic, adLockOptimistic

  Set DataGrid1DataSource = rs

End Sub

可以将DataGrid控件的属性DataSource与Ado Data控件绑定。使用Ado Data控件的Recordset 属性的AddNew 方法添加新行。Update 方法来保存对 Recordset 对象的当前记录所做的所有更改。    

DataSource 属性,返回或设置一个数据源,通过该数据源,数据使用者被绑定到一个数据库。

ADO Data 控件使您能使用 Microsoft ActiveX Data Objects (ADO)

快速地创建一个到数据库的连接。

通过将 DataSource 属性设置为 ADO Data 控件,把 ADO Data 控件连接到一个数据绑定的控件,例如

DataGrid、DataCombo、或 DataList 控件。

以下代码是将输入在文本框的数据添加到数据表,在绑定的DataGrid控件后添加一行。

Private Sub Command1_Click()

    Adodc1RecordsetAddNew

    Adodc1Recordset(0) = Text1

    Adodc1Recordset(1) = Text2

    Adodc1Recordset(2) = Text3

    Adodc1Recordset(3) = Text4

    Adodc1RecordsetUpdate

End Sub

Private Sub Form_Load() '建立数据库表连接,绑定DataGrid控件

    Adodc1ConnectionString = "Provider=MicrosoftJetOLEDB40;Data Source=" & AppPath & "\Data\wdmdb;Persist Security Info=False"

    Adodc1RecordSource = "select  from jishijilu"

    Adodc1Refresh

    Set DataGrid1DataSource = Adodc1

End Sub

以上就是关于VB中如何ADODB 实现查询后显示在DATAGRID全部的内容,包括:VB中如何ADODB 实现查询后显示在DATAGRID、VBA关于access编辑的宏,如何移植到VB当中、你好,我想用VB做个查询界面,怎么将SQL语句嵌入进去等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9294209.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存