Esta sintaxe de inclusão/alteração no banco, que uso para access, no mysql rodou normal:
Set Rs = New ADODB.Recordset
Rs.CursorLocation = adUseClient
If Trim(txtcodigo.Text) <> Empty Then
sql = " select * from clientes where codigo = " & txtcodigo & " "
Rs.Open sql, Cnn, adOpenKeyset, adLockOptimistic
Else
Rs.Open "clientes", Cnn, adOpenKeyset, adLockOptimistic
Rs.AddNew
End If
'dados cadastrais
Rs!classe = cmbclasse.Text
Rs!cgc = txtcgc.Text
Rs!ie = txtrg.Text
Rs!razao = txtrazao.Text
Rs!apelido = txtape.Text
Rs!rua = txtrua.Text
Rs!comple = txtcomp.Text
Rs!bairro = txtbai.Text
Rs!cidade = cmbcid.Text
Rs!uf = cmbuf.Text
Rs!cep = txtcep.Text
Rs!fones = txtfone.Text
Rs!celular = txtcelular.Text
Rs!fax = txtfax.Text
Rs!email = txtemail.Text
Rs!web = txtweb.Text
Rs!tipo = cmbtipo.Text
Rs!ramo = txtramo.Text
Rs!contato = txtcont.Text
If Not IsNumeric(txtlimite) Then txtlimite = 0
Rs!LIMITE = CDbl(txtlimite.Text)
Rs!cadastro = Format(dtcad.Value, "yyyy/mm/dd")
Rs!datanasc = Format(dtnas.Value, "yyyy/mm/dd")
Rs.Update
Rs.Close
Set Rs = Nothing
aviso = MsgBox("Dados Atualizados", vbInformation + vbOKOnly, "Futura - aviso ao usuário")
esta abaixo sem o uso de recordset, também foi beleza.
If Trim(txtcodigo.Text) = Empty Then
Set RSban = New ADODB.Recordset
RSban.CursorLocation = adUseClient
sql = "SELECT Max(codigo) AS codigo FROM bancos"
RSban.Open sql, Cnn, adOpenForwardOnly, adLockReadOnly
If Not RSban.EOF Then
txtcodigo = (RSban!codigo + 1)
Else
txtcodigo = 1
End If
RSban.Close
Set RSban = Nothing
sqlcmd = "insert into bancos (codigo,descricao) values (" & txtcodigo.Text & ",'" & Replace(Txtdescricao.Text, "'", "") & "')"
Else
sqlcmd = " update bancos set descricao = '" & Replace(Txtdescricao.Text, "'", "") & "'"
sqlcmd = sqlcmd & " where codigo =" & txtcodigo.Text & ""
End If
Cnn.Execute (sqlcmd)
esta de exclusão por recordsets, também foi normal:
Set RS = New ADODB.Recordset
RS.CursorLocation = adUseClient
sql = "select * from bancos where codigo = " & txtcodigo.Text & ""
RS.Open sql, Cnn, adOpenKeyset, adLockOptimistic
RS.Delete adAffectCurrent
RS.Close
Set RS = Nothing
então todas as sintaxes acima, executam normal no access e no mysql.
ja esta outra de exclusão, pela conexão da erro de sintaxe no mysql, lembrando que pelo access vai normal.
Cnn.Execute ("delete * from autorizados where controle = " & lstnome.SelectedItem & "")
Então pergunto:
1) onde esta o erro nesta sintaxe ?
2) sera que da pra adaptar 100% do código que se diz respeito ao banco de dados, pra rodar com os dois bancos ?