Acabo de pensar numa coisa, mas não sei na prática disso.
Imaginem 10 terminais alterando o cadastro de um cliente ao mesmo tempo....
Um terminal altera o email
Outro terminal altera o telefone
Outro terminal altera o contato
Outros terminais alteram outras coisas
Se na hora de salvar o cliente, salvássemos apenas o campo alterado.... todas as alterações seriam salvas.
Por um lado todas as alterações serão salvas, mas ... por outro lado, o cadastro final não vai ficar como o usuário viu na tela quando estava alterando.
Será que vale a pena mexer nisso?
Não sei se em DBF isso vale, já que ele trabalha com o registro inteiro, mas em SQL.....
Gravar só alterado
Moderador: Moderadores
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Gravar só alterado
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- rubens
- Colaborador

- Mensagens: 1520
- Registrado em: 16 Ago 2003 09:05
- Localização: Nova Xavantina - MT
Gravar só alterado
Eh uma situação muito dificil de acontecer né..
Porque o cliente não estará fisicamente nos 10 terminais ao mesmo tempo...
Acho que em sql isso tem um tratamento a respeito... acho que sistemas concorrentes.. não me lembro...
Eu necessariamente travo o cliente quando um usuário entra para alterar dados do cliente...
sabe-se lá... e em sistemas com auditoria como é que ficaria... quem alterou o que e quando...
Porque o cliente não estará fisicamente nos 10 terminais ao mesmo tempo...
Acho que em sql isso tem um tratamento a respeito... acho que sistemas concorrentes.. não me lembro...
Eu necessariamente travo o cliente quando um usuário entra para alterar dados do cliente...
sabe-se lá... e em sistemas com auditoria como é que ficaria... quem alterou o que e quando...
"Eu e minha casa servimos ao Senhor e você
"
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Gravar só alterado
Eu deixei de fazer isso faz tempo.rubens escreveu:Eu necessariamente travo o cliente quando um usuário entra para alterar dados do cliente..
Imagine o seguinte:
Um usuário altera os dados do cliente, 1 hora depois vém outro usuário e altera os dados do mesmo cliente.
Qual a diferença se ele altera 1 hora depois, ou 1 milésimo de segundo depois? Não dá no mesmo?
Com certeza gravo log de tudo que foi alterado, mas... o último que chegar é o que fica.
Vantagem:
Também se acabam os testes de bloqueio... é sempre gravar e pronto, esperando no máximo 1 milésimo de segundo pra ficar disponível.
Lógico... a exceção se aplica a pedidos/notas fiscais, já que não poderia alterar durante a emissão da nota.
Nesse caso continua precisando algo especial.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/