求VB6.0打开网页,获取里面数据的代码

求VB6.0打开网页,获取里面数据的代码,第1张

你好,获取源码可以用XMLHTTP组件,下面是一个获取源码函数,可以直接使用

Public Function getHtmlStr(strUrl As String)  '获取源码

    On Error Resume Next

    Dim XmlHttp As Object, stime, ntime

    Set XmlHttp = CreateObject("Microsoft.XMLHTTP")

    XmlHttp.open "GET", strUrl, True

    XmlHttp.send

    stime = Now '获取当前时间

    While XmlHttp.ReadyState <> 4

        DoEvents

        ntime = Now() '获取循环时间

        If DateDiff("s", stime, ntime) > 3 Then getHtmlStr = "": Exit Function

    Wend

    getHtmlStr = StrConv(XmlHttp.responseBody, vbUnicode)

    Set XmlHttp = Nothing

End Function

使用 :

a=getHtmlStr("网址")

a的值就是获取到的源码

首先要在工程的引用中选上Microsoft ActiveX Data Objects 2.5 Library

然后在事件中就可以定义相关的变量进行连接了

下面的例子可能对您有用:

Private Sub Command1_Click()

Dim Conn As New ADODB.Connection

Dim Rs As New ADODB.Recordset

Conn.Open connstring ="Provider=Microsoft.Jet.OLEDB.4.0Data Source=" &“数据的路径和名字” &"Persist Security Info=TrueJet OLEDB:Database Password= &"数据库密码"

sql = "Select * From “ &”表名" &where ID=20"

Rs.Open sql, Conn, 1, 3

If NOT rs.eof then

m_date= rs("日期型字段的名字")

m_data= rs("数值型字段的名字")

end if

上面的例子实现了查询

如果是要添加,删除,更新等 *** 作,只要编写相应的SQL语句,再用

Conn.Execute SQL 就可以了,如:

添加的:

SQL="Insert Into [UserInfo](User,Password) Values('aaaa','1234')"

Conn.Execute SQL '执行后,就添加了一条记录

删除:

SQL="Delete From [UserInfo] Where User='aaaa'"

Conn.Execute SQL '删除用户名为aaaa的用户记录

更新:

SQL="Update [UserInfo] Set Password='abcdefg' Where User='aaaa'"

Conn.Execute SQL '执行后,修改用户aaaa的密码为abcdefg

以上只是示例,在实际使用过程中,可以将一些内容用控件输入等方式进行,这样就有很大的灵活性了

追问:

Conn.Open connstring = "Provider=Microsoft.Jet.OLEDB.4.0Data Source=" &App.Path &"\newdata.mdbPersist Security Info=TrueJet OLEDB:Database Password=123"

这一句发生错误

追答:

您把:

Conn.Open connstring ="Provider=Microsoft.Jet.OLEDB.4.0Data Source=" &“数据库的路径和名字” &"Persist Security Info=TrueJet OLEDB:Database Password= &"数据库密码"

这句改为下面的两句 您再试试

connstring = "Provider=Microsoft.Jet.OLEDB.4.0Data Source=" &"数据库的路径和名字" &"Jet OLEDB:Database password=" &"数据库密码"

Conn.Open connstring

假设我的数据库里有十条数据,我要将它们全部都循环读取出来,存到一个数组变量中,该怎么做呢?每个字段存一个数组

这要看您数据库里保存的数据的类型了。

如果都可以转换成字符串型的话

定义一个二维数组就可以了

例如:

1

2

3

4

5

6

7

8

9

10

dim m_data() as string

dim i as integer

do until rs.eof

ReDim Preserve m_data(Rs.Fields.Count - 1, i)

For j = 0 To Rs.Fields.Count - 1

m_data(j, i) = IIf(IsNull(Rs.Fields(j)), "", Rs.Fields(j))

next j

rs.MoveNext

i=i+1

loop

VB6用Ado连接数据库后,通过Sql结构化查询语句获得数据库中表的数据。

结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

ADO 是为 Microsoft最新和最强大的数据访问范例 OLE DB 而设计的,是一个便于使用的应用程序层接口。OLE DB为任何数据源提供了高性能的访问,这些数据源包括关系和非关系数据库、电子邮件和文件系统、文本和图形、自定义业务对象等等。ADO 在关键的 Internet方案中使用最少的网络流量,并且在前端和数据源之间使用最少的层数,所有这些都是为了提供轻量、高性能的接口。

应用代码示例:

Private Sub Command1_Click()

  Dim cn As New ADODB.Connection '定义数据库的连接

  Dim rs As New ADODB.Recordset

  Dim sql As String

  sql = "select * from jishijilu"

  cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0Data Source=" &App.Path &"\wd.mdbPersist Security Info=False"

  cn.Open

  rs.CursorLocation = adUseClient

  rs.Open sql, cn, adOpenDynamic, adLockOptimistic

  Set DataGrid1.DataSource = rs

End Sub


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存