[firebase-br] DBExpress + NoWait Transaction

Gladiston Santana gladiston em vidy.com.br
Seg Jul 18 11:38:42 -03 2016


Não dá muito para indicar que tipo de transação você deveria usar, pois se
o colega considerá-lo como verdade absoluta para todos os projetos num
cenário diferente, tornaria a indicação inadequado e geraria mais problemas.
O ideal é entender como as transações e isolamentos funcionam e conforme o
cenário utiliza-los da forma que for mais adequado. Inclusive um mesmo
programa pode ter telas diferentes que exijam tipos de
transações/isolamentos diferentes, como uma tela de venda de bilhete e
outra tela que vai imprimir um relatório.

Acho que deve haver algum artigo no firebase falando sobre transação e o
tipo de isolamento, procure-o. Você precisa entender e o que entender alí,
valerá para todos os bancos de dados.

Muito cuidado com o Firedac e suites que fazem paginação de dados, pois os
dados que ainda não foram consumidos podem estar barrando uma futura
edição. Pesquisas que usam muito o LIKE sem um filtro tendem a trazer a
base inteira para a memória e fazer o lock por página dependendo do BD. Não
sei se o Firebird faz isso, mas alguns BDs podem até fazer o lock na tabela
inteira. Suite de acesso pensa muito na velocidade e a paginação é a
resposta, mas ela cria inconvenientes se não souber usar.

Se estiver disposto a simplificar, tente entender o mecanismo de dataset
provider e clientdataset eles simplificam ao máximo a programação com banco
de dados, tornando o tipo de banco de dados usado quase que irrelevante.

[]´s e sucesso.


>



Mais detalhes sobre a lista de discussão lista