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 否则就出现 “用户定义类型未定义!”