VBSQL连接问题

Public Function TransactSQL(ByVal sql As String) As ADODB.Recordset
Dim con As ADODB.connection
Dim rs As ADODB.Recordset
Dim strconnection As String
Dim strarray() As String
Set con = New ADODB.connection '创建连接
Set rs = New ADODB.Recordset '创建记录集
On Error GoTo transactsql_error
'strconnection="provider=microsoft.jet.oledb.4.0;data source="&app.path&"\preson.mdb"
strconnection = "provider=microsoft.jet.oledb.4.0;data source=" & App.Path & "\preson.mdb"
strarray = sqlit(sql)
con.open strconnection
If StrComp(UCase$(strarray(0)), "select", vbTextCompare) = 0 Then
rs.open tim$(sql), con, adopenkeyset, adlockoptimistic '打开记录集
Set TransactSQL = rs
iflag = 1
Else
con.execute sql '执行命令
iflag = 1
End If
transactsql_exit:
Set rs = Nothing
Set con = Nothing
Exit Function
transactsql_error:
MsgBox "查询错误;" & Err.Description
iflag = 2
Resume transactsql_exit
End Function
这是个模块!运行的时候会出现提示这行
Public Function TransactSQL(ByVal sql As String) As
用户定义类型未定义!
在网上查找了下!
”通常都是在客户机上也安装一个SQL,然后和服务器上的SQL注册一下就可以连接上的。如果我不在客户机上安装SQL的话,怎么做才能让客户机上的程序连上服务器上的SQL?????
客户端无需安装SQL的,在“控制面板”中配置一个ODBC到服务端的SQL就可以了”
是不要需要安装什么才能连接?
如果是~请说详细点!
谢谢~我想再问一下~
行 30: 控件 DBGrid1 的类 MSDBGrid.DBGrid 不是一个已加载的控件类。
行 31: 属性名 Bindings 在 DBGrid1 中是无效的。
行 34: 属性名 OleObjectBlob 在 DBGrid1 中是无效的。
行 31: 属性名 Bindings 在 DBGrid1 中是无效的。
行 34: 属性名 OleObjectBlob 在 DBGrid1 中是无效的。
怎么解决?
最新回答
泠月

2024-11-04 11:43:28

Public Function TransactSQL(ByVal sql As String) As ADODB.Recordset

你在外部程序中调用TransactSQL函数时参数sql
比如TransactSQL(tsql) 中的tsql 一定要声明为String
Dim tsql as String
否则就出现 “用户定义类型未定义!”