написал функцию которая должна проверять есть ли уже в таблице поле с заданным значением:
Public Function Exists(tableName As String, culumnName As String, uniqValue As String, needMessageIfExists As Boolean)
Dim cmd As ADODB.Command
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim p As ADODB.Parameter
Dim result As Boolean
Dim msgBoxResult As Integer
Dim curDatabase As Object
Dim querySQLstr As String
Set curDatabase = CurrentDb
Set cnn = CurrentProject.Connection
Set cmd = New ADODB.Command
querySQLstr = "SELECT " + culumnName + " FROM " + tableName + " WHERE " + culumnName + " = :uniqValue;"
With cmd
.ActiveConnection = cnn
.CommandText = querySQLstr
.CommandType = adCmdText
.NamedParameters = True
.Parameters.Append .CreateParameter(":uniqValue", adBSTR, adParamInput, , uniqValue)
Set rs = .Execute(, , adExecuteRecord)
End With
result = rs.RecordCount > 0
Set cmd = Nothing
rs.Close:
Set rs = Nothing
cnn.Close:
Set cnn = Nothing
Set curDatabase = Nothing
If result And needMessageIfExists Then
msgBoxResult = MsgBox("Already exists: " + uniqValue, vbOKOnly, tableName + "." + culumnName)
End If
Exists = result
End Function
но в .Execute ошибка
"Object or provider is not capable of performing requested operation"
MS Access прилинкован на таблицы MySql
подскажите что не так
подозрение на сочетание
.CommandType = adCmdText
и
.Execute(, , adExecuteRecord)