Domanda

Ci sono effetti negativi quando una singola applicazione utente utilizza una sola transazione IB, che è attivo finché il programma viene eseguito? Utilizzando solo CommitRetaining e RollbackRetaining.

Sfondo: voglio usare IBQuery (s) e collegarli ad un DB griglia (s) (DevExpress), che carica tutti i record in memoria in una sola volta. Quindi voglio evitare di ri-il recupero di tutti i dati dopo ogni comando di inserimento SQL. IBTransaction.Commit sarebbe chiudere il set di dati.

È stato utile?

Soluzione

Sembra a me come si sta tentando di utilizzare una funzione base di dati al fine di evitare l'uso di TClientDataSet, che è chiaramente il modo preferito di lavorare in Delphi questi giorni. Perché andare fuori strada e utilizzare pratiche di transazione discutibili invece di seguire il modello più comune per l'uso componente del database, che è già una soluzione migliore al problema a portata di mano?

Altri suggerimenti

CommitRetaining e RollbackRetaining non sono buone.

operazione deve essere molto breve.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top