Gabriel Cabral Postado Abril 4, 2007 Denunciar Share Postado Abril 4, 2007 Por favor me ajudem !!!!!tenho um formulario de cadastro d usuarios e está tudo certo....acho.......a conexao está feita.....quando vou testar o programa, preencho todos os campos e clico em gravar dados..os campos se esvaziam pra poder cadastrar mais....ateh aí tudo bem....mas quando vou ao banco de dados, nenhum cadastro que fiz está lá...o banco de dados se encontra vazio...sem nenhum registro...o que está acontecendo???o que está errado???aqui está a codificação......se alguém tiver a paciencia d analisar e me ajudar, agradeço muitoDim vInclusao As BooleanPrivate Sub Form_KeyPress(KeyAscii As Integer)If KeyAscii = vbKeyReturn ThenSendKeys "{Tab}"KeyAscii = 0End IfEnd SubPrivate Sub Form_Load()Me.Left = (frmBiblio.ScaleWidth - Me.Width) / 2Me.Top = (frmBiblio.ScaleHeight - Me.Height) / 2End SubPrivate Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)Select Case Button.IndexCase 1GravarDadosCase 2LimparTelaCase 3ExcluirRegistroCase 4Unload MeEnd SelectEnd SubPrivate Sub txtCodUsuario_LostFocus()Dim cnnComando As New ADODB.CommandDim rsSelecao As New ADODB.RecordsetOn Error GoTo errSelecaoIf Val(txtCodUsuario.Text) = 0 ThenMsgBox "Não foi digitado um código válido, verifique.", vbExclamation + vbOKOnly + vbApplicationModal, "Erro"Exit SubEnd IfWith cnnComando.ActiveConnection = cnnBiblioteca.CommandType = adCmdText.CommandText = "SELECT * FROM Usuarios WHERE CodUsuario = " & txtCodUsuario.Text & ";"Set rsSelecao = .ExecuteEnd WithWith rsSelecaoIf .EOF And .BOF ThenLimparDadosvInclusao = TrueElsetxtNomeUsuario.Text = !NomeUsuariotxtEndereco.Text = !EnderecotxtCidade.Text = !CidadetxtEstado.Text = !EstadotxtCEP.Text = !CEPtxtDDD.Text = Empty & !DDDtxtTelefone.Text = Empty & !TelefonevInclusao = FalseToolbar1.Buttons(3).Enabled = TrueEnd IfEnd WithSaida:Set rsSelecao = NothingSet cnnComando = NothingExit SuberrSelecao:With ErrIf .Number <> 0 ThenMsgBox "Houve um erro na recuperação do registro solicitado.", vbExclamation + vbOKOnly + vbApplicationModal, "Aviso".Number = 0GoTo SaidaEnd IfEnd WithEnd SubPrivate Sub LimparDados()txtNomeUsuario.Text = ""txtEndereco.Text = ""txtCidade.Text = ""txtEstado.Text = ""txtCEP.Text = ""txtDDD.Text = ""txtTelefone.Text = ""End SubPrivate Sub GravarDados()Dim cnnComando As New ADODB.CommandDim vConfMsg As IntegerDim vErro As BooleanOn Error GoTo errGravacaovConfMsg = vbExclamation + vbOKOnly + vbSystemModalvErro = FalseIf txtNomeUsuario.Text = "" ThenMsgBox "O campo Nome não foi preenchido.", vConfMsg, "Erro"vErro = TrueEnd IfIf txtEndereco.Text = "" ThenMsgBox "O campo Enderço não foi preenchido.", vConfMsg, "Erro"vErro = TrueEnd IfIf txtCidade.Text = "" ThenMsgBox "O campo Cidade não foi preenchido.", vConfMsg, "Erro"vErro = TrueEnd IfIf txtEstado.Text = "" ThenMsgBox "O campo Estado não foi preenchido.", vConfMsg, "Erro"vErro = TrueEnd IfIf txtCEP.Text = "" ThenMsgBox "O campo CEP não foi preenchido.", vConfMsg, "Erro"vErro = TrueEnd IfIf vErro Then Exit SubWith cnnComando.ActiveConnection = cnnBiblioteca.CommandType = adCmdTextIf vInclusao Then.CommandText = "INSERT INTO Usuarios " & _"(CodUsuario, NomeUsuario, Endereco, Cidade, " & _"Estado, CEP, DDD, Telefone) VALUES ('" & _txtCodUsuario.Text & ",'" & _txtNomeUsuario.Text & "','" & _txtEndereco.Text & "','" & _txtCidade.Text & "','" & _txtEstado.Text & "','" & _txtCEP.Text & "','" & _txtDDD.Text & "','" & _txtTelefone.Text & "');"Else.CommandText = "UPDATE Usuarios SET " & _"NomeUsuario = '" & txtNomeUsuario.Text & "'," & _"Endereco = '," & txtEndereco.Text & "'," & _"Cidade = '," & txtCidade.Text & "'," & _"Estado = '," & txtEstado.Text & "'," & _"CEP = '," & txtCEP.Text & "'," & _"DDD = '," & txtDDD.Text & "'," & _"Telefone = '," & txtTelefone.Text & "' " & _"WHERE CodUsuario = " & txtCodUsuario.Text & ";".ExecuteEnd IfEnd WithMsgBox "Gravação concluída com sucesso.", vbApplicationModal + vbInformation + vbOKOnly, "Gravação OK"LimparTelaSaida:Set cnnComando = NothingExit SuberrGravacao:With ErrIf .Number <> 0 ThenMsgBox "Houve um erro durante a gravação dos dados na tabela.", vbExclamation + vbOKOnly + vbApplicationModal, "Erro".Number = 0GoTo SaidaEnd IfEnd WithEnd SubPrivate Sub LimparTela()LimparDadosToolbar1.Buttons(3).Enabled = FalsetxtCodUsuario.Text = ""txtCodUsuario.SetFocusEnd SubPrivate Sub ExcluirRegistro()Dim cnnComando As New ADODB.CommandDim vOk As IntegerOn Error GoTo errExclusaovOk = MsgBox("Confirma a exclusão desse registro?", vbApplicationModal + vbDefaultButton2 + vbQuestion + vbYesNo, "Exclusão")If vOk = vbYes ThenWith cnnComando.ActiveConnection = cnnBiblioteca.CommandType = adCmdText.CommandText = "DELETE FROM Usuarios WHERE CodUsuario = " & _txtCodUsuario.Text & ";".ExecuteEnd WithMsgBox "Registro excluído com sucesso.", vbApplicationModal + vbInformation + vbOKOnly, "Exclusão OK"LimparTelaEnd IfSaida:Set cnnComando = NothingExit SuberrExclusao:With ErrIf .Number <> 0 ThenMsgBox "Houve um erro durante a exclusão do registro.", vbExclamation + vbOKOnly + vbApplicationModal, "Erro".Number = 0GoTo SaidaEnd IfEnd WithEnd Sub Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Lucas Phillip Postado Abril 4, 2007 Denunciar Share Postado Abril 4, 2007 Opa.. beleza?Você não fechou as aspas simples da primeira variável no Insert('" & _txtCodUsuario.Text & "E outra, aquele ; no final é realmente necessário? porque nunca utilizei ele e não tive problema nenhum :DBom, eu dei uma olhada rápida só no código. Pode não ser isso... Mas espero que ajude :Dfalou Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Gabriel Cabral Postado Abril 4, 2007 Autor Denunciar Share Postado Abril 4, 2007 fiz o que você disse....mas está a mesmo coisamas brigado d qualquer formaalguém me ajuda pfavooooorrrrr !!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ToPronto N'Area Postado Abril 4, 2007 Denunciar Share Postado Abril 4, 2007 cara que bd você está usando?você está usando algum objeto, tipo dao ou ado?Se está prq não tenta via objetoaddneweditestas coisas!Passa estes detalhes que dai a gente pode t ajudar melhor!beleza! e o codigo também bai ficar menor!Abraços! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Hari-VB Postado Janeiro 31, 2010 Denunciar Share Postado Janeiro 31, 2010 Está faltando uma aspa simples no código da apostila Microsoft Visual Basic 6 de Luís Carlos, rotina Gravar Dados pg. 77:Errado: txtCodUsuario.Text & ",'"Certo: txtCodUsuario.Text & "','"Eu estava estudando nela também e achei o erro. Agora funcionou a inclusão. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Gabriel Cabral
Por favor me ajudem !!!!!
tenho um formulario de cadastro d usuarios e está tudo certo....acho.......
a conexao está feita.....
quando vou testar o programa, preencho todos os campos e clico em gravar dados..
os campos se esvaziam pra poder cadastrar mais....
ateh aí tudo bem....
mas quando vou ao banco de dados, nenhum cadastro que fiz está lá...
o banco de dados se encontra vazio...sem nenhum registro...
o que está acontecendo???
o que está errado???
aqui está a codificação......se alguém tiver a paciencia d analisar e me ajudar, agradeço muito
Dim vInclusao As Boolean
Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
SendKeys "{Tab}"
KeyAscii = 0
End If
End Sub
Private Sub Form_Load()
Me.Left = (frmBiblio.ScaleWidth - Me.Width) / 2
Me.Top = (frmBiblio.ScaleHeight - Me.Height) / 2
End Sub
Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
Select Case Button.Index
Case 1
GravarDados
Case 2
LimparTela
Case 3
ExcluirRegistro
Case 4
Unload Me
End Select
End Sub
Private Sub txtCodUsuario_LostFocus()
Dim cnnComando As New ADODB.Command
Dim rsSelecao As New ADODB.Recordset
On Error GoTo errSelecao
If Val(txtCodUsuario.Text) = 0 Then
MsgBox "Não foi digitado um código válido, verifique.", vbExclamation + vbOKOnly + vbApplicationModal, "Erro"
Exit Sub
End If
With cnnComando
.ActiveConnection = cnnBiblioteca
.CommandType = adCmdText
.CommandText = "SELECT * FROM Usuarios WHERE CodUsuario = " & txtCodUsuario.Text & ";"
Set rsSelecao = .Execute
End With
With rsSelecao
If .EOF And .BOF Then
LimparDados
vInclusao = True
Else
txtNomeUsuario.Text = !NomeUsuario
txtEndereco.Text = !Endereco
txtCidade.Text = !Cidade
txtEstado.Text = !Estado
txtCEP.Text = !CEP
txtDDD.Text = Empty & !DDD
txtTelefone.Text = Empty & !Telefone
vInclusao = False
Toolbar1.Buttons(3).Enabled = True
End If
End With
Saida:
Set rsSelecao = Nothing
Set cnnComando = Nothing
Exit Sub
errSelecao:
With Err
If .Number <> 0 Then
MsgBox "Houve um erro na recuperação do registro solicitado.", vbExclamation + vbOKOnly + vbApplicationModal, "Aviso"
.Number = 0
GoTo Saida
End If
End With
End Sub
Private Sub LimparDados()
txtNomeUsuario.Text = ""
txtEndereco.Text = ""
txtCidade.Text = ""
txtEstado.Text = ""
txtCEP.Text = ""
txtDDD.Text = ""
txtTelefone.Text = ""
End Sub
Private Sub GravarDados()
Dim cnnComando As New ADODB.Command
Dim vConfMsg As Integer
Dim vErro As Boolean
On Error GoTo errGravacao
vConfMsg = vbExclamation + vbOKOnly + vbSystemModal
vErro = False
If txtNomeUsuario.Text = "" Then
MsgBox "O campo Nome não foi preenchido.", vConfMsg, "Erro"
vErro = True
End If
If txtEndereco.Text = "" Then
MsgBox "O campo Enderço não foi preenchido.", vConfMsg, "Erro"
vErro = True
End If
If txtCidade.Text = "" Then
MsgBox "O campo Cidade não foi preenchido.", vConfMsg, "Erro"
vErro = True
End If
If txtEstado.Text = "" Then
MsgBox "O campo Estado não foi preenchido.", vConfMsg, "Erro"
vErro = True
End If
If txtCEP.Text = "" Then
MsgBox "O campo CEP não foi preenchido.", vConfMsg, "Erro"
vErro = True
End If
If vErro Then Exit Sub
With cnnComando
.ActiveConnection = cnnBiblioteca
.CommandType = adCmdText
If vInclusao Then
.CommandText = "INSERT INTO Usuarios " & _
"(CodUsuario, NomeUsuario, Endereco, Cidade, " & _
"Estado, CEP, DDD, Telefone) VALUES ('" & _
txtCodUsuario.Text & ",'" & _
txtNomeUsuario.Text & "','" & _
txtEndereco.Text & "','" & _
txtCidade.Text & "','" & _
txtEstado.Text & "','" & _
txtCEP.Text & "','" & _
txtDDD.Text & "','" & _
txtTelefone.Text & "');"
Else
.CommandText = "UPDATE Usuarios SET " & _
"NomeUsuario = '" & txtNomeUsuario.Text & "'," & _
"Endereco = '," & txtEndereco.Text & "'," & _
"Cidade = '," & txtCidade.Text & "'," & _
"Estado = '," & txtEstado.Text & "'," & _
"CEP = '," & txtCEP.Text & "'," & _
"DDD = '," & txtDDD.Text & "'," & _
"Telefone = '," & txtTelefone.Text & "' " & _
"WHERE CodUsuario = " & txtCodUsuario.Text & ";"
.Execute
End If
End With
MsgBox "Gravação concluída com sucesso.", vbApplicationModal + vbInformation + vbOKOnly, "Gravação OK"
LimparTela
Saida:
Set cnnComando = Nothing
Exit Sub
errGravacao:
With Err
If .Number <> 0 Then
MsgBox "Houve um erro durante a gravação dos dados na tabela.", vbExclamation + vbOKOnly + vbApplicationModal, "Erro"
.Number = 0
GoTo Saida
End If
End With
End Sub
Private Sub LimparTela()
LimparDados
Toolbar1.Buttons(3).Enabled = False
txtCodUsuario.Text = ""
txtCodUsuario.SetFocus
End Sub
Private Sub ExcluirRegistro()
Dim cnnComando As New ADODB.Command
Dim vOk As Integer
On Error GoTo errExclusao
vOk = MsgBox("Confirma a exclusão desse registro?", vbApplicationModal + vbDefaultButton2 + vbQuestion + vbYesNo, "Exclusão")
If vOk = vbYes Then
With cnnComando
.ActiveConnection = cnnBiblioteca
.CommandType = adCmdText
.CommandText = "DELETE FROM Usuarios WHERE CodUsuario = " & _
txtCodUsuario.Text & ";"
.Execute
End With
MsgBox "Registro excluído com sucesso.", vbApplicationModal + vbInformation + vbOKOnly, "Exclusão OK"
LimparTela
End If
Saida:
Set cnnComando = Nothing
Exit Sub
errExclusao:
With Err
If .Number <> 0 Then
MsgBox "Houve um erro durante a exclusão do registro.", vbExclamation + vbOKOnly + vbApplicationModal, "Erro"
.Number = 0
GoTo Saida
End If
End With
End 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.