ATUALIZAR NA HORA

SILVERDRAGON 06/08/2007 09:29:51
#229594
Galera estou usando uma conexao mysql e quando eu atualizo um registro pelo Vb ele so vai me mostrar a atualizacao na proxima vez que eu reinicar os sistema.
Ex:

No regintro 1 eu mudo o Nome: Teste Sistema para Sistema e clico no botao avancar para proximo registro.... quando volto para o registro anterior ele ainda esta mostrando Teste Sistemas ao inves de Sistemas... Alguem sabe como posso resolver isso??


grato
USUARIO.EXCLUIDOS 06/08/2007 09:33:30
#229595
Usando ADO ou DAO?
LCSD 06/08/2007 09:37:32
#229596
Resposta escolhida
VC não está atualizando o seu recordset.

Feche seu recordset na hora que VC grava os dados e o abra novamente.
SILVERDRAGON 06/08/2007 09:51:50
#229600
Estou usando ADO... Como assim Lcsd?
USUARIO.EXCLUIDOS 06/08/2007 09:59:05
#229601
Depois do rs.Execute, dê o rs.Close
SILVERDRAGON 06/08/2007 10:01:56
#229602
Nao seria a conexao que devo fechar..

cn.close???
USUARIO.EXCLUIDOS 06/08/2007 10:09:58
#229603
Não há necessidade, fechando a tabela após a inserção/atualização dos dados, na hora que voltar ao registro o recordset abre novamente com os dados corretos.
SILVERDRAGON 06/08/2007 10:14:32
#229605
Olha meu codigo de Cad/Atu

'código de ATUALIZAÇÃO
db.Execute "update cad_cli set nome = '" & strNome & "', endereco = '" & strEndereco & "', bairro = '" & strBairro & "', cidade = '" & strCidade & "', cep = '" & strCep & "' Where codigo = " & Me.txtCodigo.Text
Me.sb.SimpleText = "Cliente Atualizado com sucesso!"


_______________________________________________________________________________

  'código de INCLUSÃO
db.Execute "insert into cad_cli(nome,endereco,bairro,cidade,cep)VALUES('" & Me.txtNome.Text & "','" & Me.txtEndereco.Text & "','" & Me.txtBairro.Text & "','" & Me.txtCidade.Text & "','" & Me.txtCep & "')"
Me.sb.SimpleText = "Cadastro Efetuado com sucesso!"
Me.tlbClientes.Buttons(1).Enabled = False
rs.MoveFirst
db.Close


o q devo fazer?
LCSD 06/08/2007 11:02:04
#229617
faça assim, compare os 2 códigos.



'código de ATUALIZAÇÃO
db.Execute "update cad_cli set nome = '" & strNome & "', endereco = '" & strEndereco & "', bairro = '" & strBairro & "', cidade = '" & strCidade & "', cep = '" & strCep & "' Where codigo = " & Me.txtCodigo.Text
Me.sb.SimpleText = "Cliente Atualizado com sucesso!"
'MUDANÇA AQUÍ
RS.CLOSE
RS.OPEN (SEU CÓDIGO de ABERTURA do RS)


_______________________________________________________________________________


'código de INCLUSÃO
db.Execute "insert into cad_cli(nome,endereco,bairro,cidade,cep)VALUES('" & Me.txtNome.Text & "','" & Me.txtEndereco.Text & "','" & Me.txtBairro.Text & "','" & Me.txtCidade.Text & "','" & Me.txtCep & "')"
Me.sb.SimpleText = "Cadastro Efetuado com sucesso!"
Me.tlbClientes.Buttons(1).Enabled = False
'MUDANÇA AQUÍ
RS.CLOSE
RS.OPEN (sua cláusula de abrir o RS)
db.Close

SILVERDRAGON 06/08/2007 11:12:52
#229619
LCSD, funcionou legal [:)] sera q seria muito abuso eu perguntar o pq de ter que abrir logo apos q vc fecha o recordset??? e tbm em qual momento nos devemos abrir e fechar um recordset?? e uma conexao????

grato

flw
USUARIO.EXCLUIDOS 06/08/2007 11:54:44
#229623
Bom,

Você precisa reabrir o recordset para ter acesso aos registros.

No meu caso, sempre após uma inclusão/atualização de registro fecho o recordset, logo, quando vou fazer uma pesquisa abro-o.

A conexão,e a abro no início do programa e quando saio fecho-a.
(Já ví alguns usuários, manterem a conexão fechada e a abrirem quando fazem uma consulta SQL.)
Tópico encerrado , respostas não são mais permitidas