VB6 and ODBC commands



我在这里启动了一个线程,这是那篇文章的延续:在Form 中调用模块和类

我找不到成功查询数据库所需的信息。我需要做的是从Pervasive数据库中获取一个值。我找不到用于执行此操作的ODBC命令列表。

有人能给我指一些关于这些通用ODBC命令的文档吗?我使用ADO ODBC进行连接。

编辑:

我也尝试连接到MySQL数据库,但遇到了同样的错误。这是我创建的一个测试Sub,用来调用我的MySQL函数。MySQL的错误与Pervasive的错误相同:"Object variable or With Block variable not set">

Public Sub testMe(id)
Dim MySqlConn As adodb.Connection 'Do I need this here or in the MySQL function?
Set MySqlConn = ConnectMySQL()
MySqlConn.Open "SELECT * FROM test", MySqlConn, adOpenDynamic, adLockOptimistic
End Function

首先,您需要连接到数据库。根据该网站,连接字符串将采用以下格式:

驱动程序={普及ODBC客户端接口};ServerName=myServerAddress;dbq=@dbname;

从你上一篇文章的代码开始,它可以像这样扩展:

Option Explicit
Public Function getEmployee() As String
Dim MyConnection As ADODB.Connection
Dim CM As ADODB.Command
Dim RS As ADODB.Recordset
Set MyConnection = ConnectSQL()
'one way using command objects
Set CM = New ADODB.Command
Set CM.ActiveConnection = MyConnection
CM.CommandType = adCmdText
CM.CommandText = "select * from <table>"
Set RS = New ADODB.Recordset
RS.Open CM, , adOpenStatic, adLockBatchOptimistic
'another way using just the connection
Set RS = MyConnection.Execute("select * from <table>")
'return the data
getEmployee = RS.Fields(0).Value
End Function
Public Function ConnectSQL() As ADODB.Connection
Set ConnectSQL = New ADODB.Connection
ConnectSQL.Open "Driver={MySQL ODBC Client Interface};ServerName=localhost;dbq=@testdb"
End Function

最新更新