VB读取ACCESS数据库的问题~高手指导下!谢谢

来源:百度知道 编辑:UC知道 时间:2024/09/21 11:28:53
Dim TL1 As Double
'连接数据库
Set adoCon = New Connection
adoCon.CursorLocation = adUseClient
adoCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Chen\Documents\abc.mdb;"

Set adoRs = New Recordset
adoRs.Open "Ergonomics", adoCon, adOpenDynamic, adLockOptimistic

TL1 = "SELECT CL FROM Ergonomics where Hmin=100"

我想问的是:打开数据库以后,如何查询其中的某个数据,然后给一个变量赋值?上面的程序是查询Ergonomics表中当HMIN值为100时候 返回对应的CL值。然后赋给TL1。。。请高手指导!谢谢!
系统提示最后一句有“类型错误”。。请问如何解决?

打开数据库以后,如何查询其中的某个数据,然后给一个变量赋值

Dim TL1 As Double
'连接数据库
Set adoCon = New Connection
adoCon.CursorLocation = adUseClient
adoCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Chen\Documents\abc.mdb;"

sql = "SELECT CL FROM Ergonomics where Hmin=100"
Set adoRs = New Recordset
adoRs.Open sql, adoCon, adOpenDynamic, adLockOptimistic

TL1 = adors.fields("CL")

Dim TL1 As string

Double和Long类似

你要做成结果也可以,将结果做成recordset类型
如果是多结果的需要用到数组

dim arr() as Double
dim i as interger
dim rst as new adodb.recordset
.....'继上
set rst=adoRs.execute("SELECT CL FROM Ergonomics where Hmin=100")
Do while not rst.eof
arr(i)=rst.fields(0)
print arr(i)
i=i+1
rst.MoveNext
Loop

rst.close
set rst=nothing

可能会有出入,方法就是如此

TL1定义为双精度型,后却赋一个SQL子句
改成这样子再看

adoRs.Open