VB怎么调用数据库数据

VB怎么调用数据库数据,第1张

VB可将Sql结构化查询语句赋值Ado(ActiveX 数据对象)或ADO Data 控件,访问和 *** 作数据库。

ADO (ActiveX 数据对象),这项新的数据访问技术的特性包括:更简单的对象模型;与其它 Microsoft 和非 Microsoft 的技术更好的集成;为本地和远程数据数据提供的通用接口;可远程访问的和断开的记录集;用户可访问的数据绑定接口;以及层次结构的记录集。

ADO Data 控件, 这是一种新的、OLEDB 识别的数据源控件,其功能与内部的 Data 控件和 Remote Data 控件十分相似,通过这种方式允许用户用最少的代码来创建数据库应用程序。

Visual Basic 60 中,已经可以将任何 ADO/OLE DB 数据源绑定到任何 ADO/OLE DB 数据使用者上。在运行时,可以设置控件的 DataSource 属性来将控件动态地绑定到数据源。可以创建用作数据源和数据使用者的类,并且通过新的 BindingsCollection 对象将这些类绑定在一起。可以创建与 ADO 数据控件相似的、用作数据源的用户控件。还可以创建与 DataGrid 控件相似的、复杂绑定的用户控件。

以下是经ADO (ActiveX 数据对象)访问Access数据库的实例代码:

    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

以下是使用ADO Data 控件访问Access数据库德实例代码:

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

    Adodc1RecordSource = "select  from jishijilu" ' where shijian like'%8112%' And gyh_riqi like'%10%'"

    Adodc1Refresh

    Set MSHFlexGrid1DataSource = Adodc1

    MSHFlexGrid1Row = 1

    MSHFlexGrid1ColSel = MSHFlexGrid1Cols - 1

Option Explicit

'需要添加一个webbrowser控件 和一个按钮

'引用两个库,在菜单的工程-引用里,找到Microsoft HTML object library和 Microsoft activex data object 25/26两个库,然后粘贴如下代码

'不明白的百度HI我

Private Sub Command1_Click()

WebBrowser1Navigate "http://wwwszsecn/main/disclosure/news/xxlb/indexshtmltxtStockCodeORname="

End Sub

Private Sub Form_Load()

WebBrowser1Stop

End Sub

Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)

Dim doc As MSHTMLHTMLDocument

Set doc = WebBrowser1Document

Dim table As MSHTMLHTMLTable

Dim lrow As MSHTMLHTMLTableRow

Dim cel As MSHTMLHTMLTableCell

Set table = docgetElementById("REPORTID_tab1")

Dim Conn As ADODBConnection

Dim FLD() As String

Set Conn = CreateObject("ADODBConnection")

Connopen "provider=microsoftjetoledb40;data source=d:\DB1MDB"

Set lrow = tablerows(0)

ReDim FLD(0 To lrowcellslength) As String

Dim i As Integer

Dim tbname As String

Dim sql As String

tbname = InputBox("输入导入数据库的新建的表的名字", "table1")

For i = 0 To lrowcellslength - 1

FLD(i) = Replace(Replace(Replace(lrowcells(i)innerText, "/", ""), "(", ""), ")", "")

sql = sql & FLD(i) & " varchar(255),"

Next i

sql = Left(sql, Len(sql) - 1)

ConnExecute "create table " & tbname & " (" & sql & ")"

Dim j As Integer

sql = ""

For i = 0 To lrowcellslength - 1

sql = sql & FLD(i) & ","

Next i

sql = Left(sql, Len(sql) - 1)

Dim vlist As String

For i = 1 To tablerowslength - 1

vlist = ""

Set lrow = tablerows(i)

For j = 0 To lrowcellslength - 1

vlist = vlist & "'" & lrowcells(j)innerText & "',"

Next j

vlist = Left(vlist, Len(vlist) - 1)

ConnExecute "insert into " & tbname & " (" & sql & ") values (" & vlist & ")"

Next i

ConnClose

Set Conn = Nothing

End Sub

保存按钮是在网页里,还是程序里

你可用

MsgBox WebBrowser1DocumentAlltags("table")Item(表序号,从0开始)RowsItem(行序号)CellsItem(列序号)innerText

这语句来获取表格里的值。“表序号,从0开始”若只有一个,一般填0;

行序号,列序号从零开始,你自己一个一个更改

例如:

MsgBox WebBrowser1DocumentAlltags("table")Item(0RowsItem(0)CellsItem(0)innerText

MsgBox WebBrowser1DocumentAlltags("table")Item(0RowsItem(0)CellsItem(1)innerText

MsgBox WebBrowser1DocumentAlltags("table")Item(0RowsItem(1)CellsItem(1)innerText

用text1=split(提取的代码,"sortcol")拆分出数组,再for循环拆分元素text2=split(text1(i),"alignright">"),最后每个left(text2(1),3)就是你要的结果

例如一个表INFO的字段有:user,password,question,answer

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

Dim rs As New ADODBRecordset

''''

这里连接数据库

''''

'查询语句

SQL="select from INFO where user='账号"

rsopen SQL

rsmovefirst

pw=rsFields(1)Value '''这就是密码

或者

pw=rsFields("password")Value '''这就是密码

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

原文地址:https://54852.com/bake/13495968.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-09-01
下一篇2025-09-01

发表评论

登录后才能评论

评论列表(0条)

    保存