ADO PROBLEMAS EM ADICIONAR
Olá pessoal.
Estou num aplicativo utilizando o SQL como base de dados. Porém, estou com dificuldades em adicionar um novo registro. Meus codigos estão assim:
Private Sub mostra_dados()
With rs
If .BOF And .EOF Then
MsgBox "Não há dados para exibir !", vbExclamation
Else
TxtCodigo.Text = .Fields("Codigo")
TxtNome.Text = .Fields("Nome")
TxtEndereco.Text = .Fields("Endereco")
TxtCidade.Text = .Fields("Cidade")
TxtEstado.Text = .Fields("Estado")
TxtCEP.Text = .Fields("CEP")
TxtObs.Text = .Fields("Obs")
End If
End With
End Sub
----------------------------------------
Private Sub CmdAnterior_Click()
With rs
If .BOF And .EOF Then
MsgBox "Não há dados no aquivo !", vbInformation
Else
.MovePrevious
If .BOF Then
.MoveFirst
MsgBox "Chegamos ao primeiro registro !", vbExclamation
Else
mostra_dados
End If
End If
End With
End Sub
-------------------------------------
Private Sub CmdGravar_Click()
With rs
.Update
mostra_dados
End With
End Sub
--------------------------------------
Private Sub CmdPesquisar_Click()
Dim titulo, criterio
titulo = "Filtrando por nome"
criterio = InputBox("Informe o nome desejado.", titulo)
If criterio <> "" Then
With rs
.Close
sql = "select codigo, nome, endereco, cidade, estado, cep, obs from tb_clientes where nome like '" & criterio & "%' order by nome"
.Open sql
mostra_dados
End With
End If
End Sub
--------------------------------------
Private Sub CmdPrimeiro_Click()
With rs
If .BOF And .EOF Then
MsgBox "Não há dados no aquivo !", vbInformation
Else
.MoveFirst
mostra_dados
End If
End With
End Sub
--------------------------------------
Private Sub CmdProximo_Click()
With rs
If .BOF And .EOF Then
MsgBox "Não há dados no arquivo !", vbInformation
Else
.MoveNext
If .EOF Then
.MoveLast
MsgBox "Chegamos ao último registro !", vbExclamation
Else
mostra_dados
End If
End If
End With
End Sub
-----------------------------------
Private Sub CmdSair_Click()
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End
End Sub
-----------------------------------
Private Sub CmdUltimo_Click()
With rs
If .BOF And .EOF Then
MsgBox "Não há dados no arquivo !", vbInformation
Else
.MoveLast
mostra_dados
End If
End With
End Sub
------------------------------------
Private Sub Form_Load()
sql = "select codigo, nome, endereco, cidade, estado, cep, obs from tb_clientes"
rs.CursorLocation = adUseClient
rs.Open sql, cn, adOpenForwardOnly, adLockPessimistic
mostra_dados
End Sub
Fiz da seguinte forma para adicionar:
With rs
.add new
end with
mas não funcionou.
Alguem saberia me informar como faço?
Obrigado desde já.
[txt-color=#ff0000]HuMiRdAdE HoJE e sEmPrE.[/txt-color][S20]
Estou num aplicativo utilizando o SQL como base de dados. Porém, estou com dificuldades em adicionar um novo registro. Meus codigos estão assim:
Private Sub mostra_dados()
With rs
If .BOF And .EOF Then
MsgBox "Não há dados para exibir !", vbExclamation
Else
TxtCodigo.Text = .Fields("Codigo")
TxtNome.Text = .Fields("Nome")
TxtEndereco.Text = .Fields("Endereco")
TxtCidade.Text = .Fields("Cidade")
TxtEstado.Text = .Fields("Estado")
TxtCEP.Text = .Fields("CEP")
TxtObs.Text = .Fields("Obs")
End If
End With
End Sub
----------------------------------------
Private Sub CmdAnterior_Click()
With rs
If .BOF And .EOF Then
MsgBox "Não há dados no aquivo !", vbInformation
Else
.MovePrevious
If .BOF Then
.MoveFirst
MsgBox "Chegamos ao primeiro registro !", vbExclamation
Else
mostra_dados
End If
End If
End With
End Sub
-------------------------------------
Private Sub CmdGravar_Click()
With rs
.Update
mostra_dados
End With
End Sub
--------------------------------------
Private Sub CmdPesquisar_Click()
Dim titulo, criterio
titulo = "Filtrando por nome"
criterio = InputBox("Informe o nome desejado.", titulo)
If criterio <> "" Then
With rs
.Close
sql = "select codigo, nome, endereco, cidade, estado, cep, obs from tb_clientes where nome like '" & criterio & "%' order by nome"
.Open sql
mostra_dados
End With
End If
End Sub
--------------------------------------
Private Sub CmdPrimeiro_Click()
With rs
If .BOF And .EOF Then
MsgBox "Não há dados no aquivo !", vbInformation
Else
.MoveFirst
mostra_dados
End If
End With
End Sub
--------------------------------------
Private Sub CmdProximo_Click()
With rs
If .BOF And .EOF Then
MsgBox "Não há dados no arquivo !", vbInformation
Else
.MoveNext
If .EOF Then
.MoveLast
MsgBox "Chegamos ao último registro !", vbExclamation
Else
mostra_dados
End If
End If
End With
End Sub
-----------------------------------
Private Sub CmdSair_Click()
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End
End Sub
-----------------------------------
Private Sub CmdUltimo_Click()
With rs
If .BOF And .EOF Then
MsgBox "Não há dados no arquivo !", vbInformation
Else
.MoveLast
mostra_dados
End If
End With
End Sub
------------------------------------
Private Sub Form_Load()
sql = "select codigo, nome, endereco, cidade, estado, cep, obs from tb_clientes"
rs.CursorLocation = adUseClient
rs.Open sql, cn, adOpenForwardOnly, adLockPessimistic
mostra_dados
End Sub
Fiz da seguinte forma para adicionar:
With rs
.add new
end with
mas não funcionou.
Alguem saberia me informar como faço?
Obrigado desde já.
[txt-color=#ff0000]HuMiRdAdE HoJE e sEmPrE.[/txt-color][S20]
Citação:With rs
.add new
end with
Na verdade seria .AddNew não é separado como vc colocou, ficando:
Citação:With rs
.AddNew
end with
Abra a conexão
--------------------------
conexao.execute "insert into tb_produto(id_produto,nm_produto) values(" & lbl_id_produto & ",'" & txt_nm_produto & "')"
Se você estiver utilizando um controle vinculado a esta tabela, de um "refresh" para que este controle pegue o registro recem criado.
Quanto a separação do addnew foi apenas um erro na digitação meu caro. Ainda não é o que procuro, mas mesmo assim, obrigado.
hUmIrDe
hUmIrDe
Ah, outra coisa. Ainda não encerrarei o tópico pois ainda aguardo novas opiniões de colegas aqui do fórum.
Obrigado.
Obrigado.
Tópico encerrado , respostas não são mais permitidas