Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Daniel BD

DAO x ADO

Recommended Posts

Bom dia.O título do e-mail pode parecer um assunto velho, mas o assunto - ou melhor, problema - que trago não vi um comentário sequer. Em lugar nemhum.No meu sistema eu tenho um controle de chaves seqüênciais de um determinado cadastro. Na minha aplicação usando DAO tudo fluia muito bem. Agora, no ADo eu realmente não sei como fazer. Já procurei por tudo e nada encontrei.No DAO eu fazia assim:rRecordset.EdittxtCódigo.Text = rRecordset("Chave")rRecordset("Chave") = (rRecordset("Chave") + 1)rRecordset.UpdateObserve que eu primeiro bloqueava o registro para me dar certeza de que nenhum outro usuário acessaria naquele momento. Pegava a chave nova. Salvava a chave com um número adiante. E salvava. Tudo isto acontecia de forma muito rápida, de maneira que mesmo que um usuário encontrasse o registro bloqueado, o tempo que o DAO esperava a liberação ema mais do que o suficiente para tê-lo liberado.Uma vez que não possuo o método .Edit no ADO, como posso bloquear o registro somente no momento especifico de uma edição? Ah, esta tabela fica aberta o tempo todo para consulta de outras informações pelo usuários.Grato pela atenção e ansioso por uma resposta,Daniel

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em ADO voce pode fazer assim:Conexao.BeginTrans 'Inicia a transação com o Banco de DadosConexao.Execute "UPDATE tabela SET Chave=" & txtChaveConexao.CommitTrans 'Encerra a TransiçãoO processamento de transações permite a você proteger a integridade dos dados garantindo que múltiplas alterações em uma ou mais tabelas de dados ocorram de forma integrada , permitindo que todas as alterações sejam realizadas ou caso contrário nenhuma alteração ocorra.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.