SELECT ATUALIZADO
Estou desenvolvendo um sisteminha de cadastro de Livros e estranhamente, uma query só atualiza o conteúdo após fechar o Formulário e abrir novamente.
vejam
Citação:Dim Conn As New ADODB.Connection, _
rstObj As New ADODB.Recordset
strSQL = [Ô]UPDATE tblLivros SET [Ô] & _
[Ô] strTitulo = [ô][Ô] & strTitulo.Text & [Ô][ô], [Ô] & _
[Ô] WHERE idLivro = [ô][Ô] & idLivro.Text & [Ô][ô];[Ô]
Dim MyConn As New ADODB.Connection
MyConn.Provider = [Ô]Microsoft.Jet.OLEDB.4.0[Ô]
MyConn.Properties([Ô]Data Source[Ô]) = [Ô][Ô] & PATH_DATABASE & [Ô][Ô]
MyConn.Open
MyConn.Execute (strSQL)
[ô]// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
strSQL = [Ô]SELECT * FROM tblLivros [Ô]
Conn.Provider = [Ô]Microsoft.Jet.OLEDB.4.0[Ô]
Conn.Properties([Ô]Data Source[Ô]) = [Ô][Ô] & PATH_DATABASE & [Ô][Ô]
Conn.Open
[ô]rstObj.Open strSQL, Conn, adOpenStatic, adLockOptimistic
rstObj.Open strSQL, Conn, adOpenStatic, adLockReadOnly
Do While Not rstObj.EOF
teste = teste & [Ô]; [Ô] & rstObj([Ô]strTitulo[Ô])
rstObj.MoveNext
Loop
No projeto eu coloquei um BreakPoint logo após o Loop para verificar se atualizou ou não o registro.
Se eu olhar direto no banco de Dados, o registro é atualizado, porém a variável [Ô]teste[Ô] ainda mostra os registros com valores antigos.
Exemplo:
Imaginando que a tabela tem 2 livros cadastrados
1. Chapeuzinho Vermelho
2. Branca de Neve
Daà tem o formulário que exibe os dados do livro 1, (Chapeuzinho Vermelho) e eu quero alterar para Chapeuzinho Verde, digito o texto certinho e clicdo em Salvar que irá executar o código indicado acima. E em seguida com o BreakPoint em execução, vou e olho no Banco de Dados, e vejo que alterou, dai no Toggle Immediate digito:
?teste e aperto [ENTER] e mostra na tela
Chapeuzinho Vermelho; Branca de Neve
que no caso está errado. Alguém saberia me dizer o que pode ser?
Se for, então mude o update para:
strSQL = [Ô]UPDATE tblLivros SET strTitulo = [ô][Ô] & strTitulo.Text & [Ô][ô] WHERE idLivro = [Ô] & idLivro.Text & [Ô];[Ô]