Fórum Camada de persistência em Delphi #558863

02/07/2016

0

Olá amigos,

Estou tentando desenvolver uma camada de persistência em Delphi, até ai tudo bem, no entanto, estou usando a nossa famosa e linda RTTI para checar as propriedades e os metadados de cada classe, e estou construindo todo o CRUD da minha camada, até agora sem problemas nenhum.

Agora o meu problema.

Gostaria de realizar o Insert e o Update somente dos campos que realmente foram alterados ou inseridos pelo usuário e estou tendo muita dificuldade de encontrar uma forma via RTTI de enxergar somente os campos alterados ou inseridos, por isso que vim até aqui para alguém me dar uma luz de como criar desta forma.

Utilizo Ferramenta: Delphi XE7

Apenas uma obs: Na minha classe de entidade Login uso o conceito de TCustomAttibute.

Obrigado
Rafael Ribeiro

Rafael Ribeiro

Responder

Post mais votado

03/07/2016

Olá Rafael, não conheço nenhuma ferramenta que te ajudaria fazer essa verificação de quais campos foram alterados,
Talvez se você fizer uma consulta e comparar os campos, porem vai gerar um trabalho gigantesco.
A algum tempo desenvolvi a persistência de um sistema também em Delphi XE7 consegui uma performance muito boa, sendo que eu tinha uma função salvar uma tupla sem verificar quais campos foram alterados, e outra função eu recebia uma lista e gerava todos os inserts para serem executados ao mesmo tempo.
Uma coisa que ajuda na performance também é usar Interface junto com classes abstratas no lugar de RTTI.

Arthur Jardim

Arthur Jardim
Responder

Gostei + 1

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar