Pessoal,estou iniciando no Vb conectao ao Mysql e seguindo um tutorial e adaptando para o meu cadastro d cliente,mas tá dando erro e não consigo resolver..deve ser besteira,mas pro ser iniciante já viu...se puderem deem uma força no código aí embaixo..valeu!!
*******************Módulo de conexão ao banco************************
.CommandText = "SELECT * FROM cliente where CPF= '" & txtCliCpf.Text & ";"
Set rs = .Execute
End With
With rs
If .EOF And .BOF Then
LimparDados
vInclusao = True
Else
carrega
vInclusao = False
cmdExcluir = True
End If
End With
txtCliCpf.Enabled = False
Set rs = Nothing
Set cnnComando = Nothing
Screen.MousePointer = vbDefault
Exit Sub
End Sub
**********************botão de salvar os dados*********************
Private Sub cmdIncluir_Click()
Dim cnnComando As New ADODB.Command
Screen.MousePointer = vbHourglass
With cnnComando
.ActiveConnection = cnn *** o erro aponta pra essa linha,erro 3001(argumentos de tipo errado,ou em conflito com outro,acontece quando digito o CPF e tento incluir*****************************
Pergunta
betofreitasjr
Pessoal,estou iniciando no Vb conectao ao Mysql e seguindo um tutorial e adaptando para o meu cadastro d cliente,mas tá dando erro e não consigo resolver..deve ser besteira,mas pro ser iniciante já viu...se puderem deem uma força no código aí embaixo..valeu!!
*******************Módulo de conexão ao banco************************
Option Explicit
Dim Ssql As String
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
'**Dim cnnComando As New ADODB.Command
Public Sub abrirconexao()
'**** criando a conexão
Set cnn = New ADODB.Connection
'**** abrindo conexão
cnn.Open "DRIVER={MySQL ODBC 3.51 Driver};server=localhost;uid=root;pwd=;database=mercado;OPTION=35;STMT=;Port="
'**** criando recordset
Set rs = CreateObject("ADODB.RecordSet")
Set rs = New ADODB.Recordset
'**** efetuando conexão do recordset
Set rs.ActiveConnection = cnn
rs.Open "select * from cliente"
End Sub
**********Código q verifica se o registro já existe,pra ver se vai realizar
inclusão ou vai ser alteração******************************************
Private Sub txtCliCpf_LostFocus()
Dim cnnComando As New ADODB.Command
If Val(txtCliCpf.Text) = 0 Then
MsgBox "Não foi digitado um código válido, verifique.", _
vbExclamation + vbOKOnly + vbApplicationModal, "Erro"
Exit Sub
End If
Screen.MousePointer = vbHourglass
With cnnComando
.ActiveConnection = cnn
.CommandType = adCmdText
.CommandText = "SELECT * FROM cliente where CPF= '" & txtCliCpf.Text & ";"
Set rs = .Execute
End With
With rs
If .EOF And .BOF Then
LimparDados
vInclusao = True
Else
carrega
vInclusao = False
cmdExcluir = True
End If
End With
txtCliCpf.Enabled = False
Set rs = Nothing
Set cnnComando = Nothing
Screen.MousePointer = vbDefault
Exit Sub
End Sub
**********************botão de salvar os dados*********************
Private Sub cmdIncluir_Click()
Dim cnnComando As New ADODB.Command
Screen.MousePointer = vbHourglass
With cnnComando
.ActiveConnection = cnn *** o erro aponta pra essa linha,erro 3001(argumentos de tipo errado,ou em conflito com outro,acontece quando digito o CPF e tento incluir*****************************
.CommandType = adCmdText
If vInclusao Then
.CommandText = "INSERT INTO cliente " & _
"(NOME, RG, CPF, NASCIMENTO,SEXO,ENDERECO " & _
"BAIRRO, CIDADE, ESTADO,CEP,TELEFONE,CELULAR,LIMITE_DE_CREDITO,DT_CADASTRO,EMAIL) VALUES ('" & _
txtCliNome.Text & ",'" & _
txtCliRg.Text & "','" & _
txtCliCpf.Text & "','" & _
txtCliNsc.Text & "','" & _
cboCliSexo.Text & "','" & _
txtCliEnd.Text & "','" & _
txtCliBairro.Text & "','" & _
txtCliCidade.Text & "','" & _
txtCliEstado.Text & "','" & _
MaskEdBox1.Text & "','" & _
MaskEdBox2.Text & "','" & _
MaskEdBox3.Text & "','" & _
txtCliCredito.Text & "','" & _
MaskEdBox4.Text & "','" & _
txtCliEmail.Text & "');"
Else
End If
.Execute
End With
MsgBox "Gravacao concluida"
LimparTela
Screen.MousePointer = vbDefault
Set cnn = Nothing
Exit Sub
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.