Public cnn As ADODB.Connection
Public Function exesql(ByVal sql As String) As ADODB.Recordset
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim stokens() As String
Set cnn = New ADODB.Connectioncnn.CursorLocation = adUseClient
stokens = Split(sql)
cnn.Open "provider=microsoft.jet.oledb.4.0;data source =" & App.Path & "\czp.mdb;jet oledb:database password=syf007"
If InStr("INSERT,DELETE,UPDATE", UCase$(stokens(0))) Then
cnn.Execute sql
Else
Set rs = New ADODB.Recordset
rs.Open Trim$(sql), cnn, adOpenStatic, adLockOptimistic
Set exesql = rs
End If
End Function
下面语句在sqlserver2000数据库中可执行而access中不行txtsql1 = "update pass set password='" & Trim(Text3.Text) & "' where yh='" & Trim(Combo1.Text) & "'"
Call exesql(txtsql1)
Public Function exesql(ByVal sql As String) As ADODB.Recordset
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim stokens() As String
Set cnn = New ADODB.Connectioncnn.CursorLocation = adUseClient
stokens = Split(sql)
cnn.Open "provider=microsoft.jet.oledb.4.0;data source =" & App.Path & "\czp.mdb;jet oledb:database password=syf007"
If InStr("INSERT,DELETE,UPDATE", UCase$(stokens(0))) Then
cnn.Execute sql
Else
Set rs = New ADODB.Recordset
rs.Open Trim$(sql), cnn, adOpenStatic, adLockOptimistic
Set exesql = rs
End If
End Function
下面语句在sqlserver2000数据库中可执行而access中不行txtsql1 = "update pass set password='" & Trim(Text3.Text) & "' where yh='" & Trim(Combo1.Text) & "'"
Call exesql(txtsql1)
看看你的数据库是不是有什么问题
Option Base 0另,
stokens = Split(sql," ")
txtsql = "select * from pass where yh='" & Trim(Combo1.Text) & "'"
call exesql(txtsql)却可以执行
请大家继续解答