2012-04-24 11 views

risposta

8

Interessante domanda. Con ORMLite in Android, tutti i DAO utilizzano la stessa connessione allo stesso database. Quindi, anche se è un po 'volgare, puoi certamente usare una singola chiamata fooDao.callBatchTasks() per aggiornare le tabelle Foo, Bar e Baz. Ciò disabilita l'auto-commit sulla connessione, applica qualsiasi chiamata di creazione/aggiornamento a cui vuoi mai le tabelle, e poi impegna tutte le modifiche alla fine.

+1

Grazie per il vostro aiuto! Un po 'di test ha dimostrato che non ci sono differenze nelle prestazioni in questo modo, quindi mi limiterò al codice che non sembra grossolano! :) –

+1

@Gray: Sarebbe utile aggiungere queste informazioni alla documentazione. Li avevamo fatti raggruppare separatamente per un bel po 'ora. E grazie: per averci dato ormlite ;-) –

+0

L'aggiornamento delle righe su più daos con un'implementazione di 'callBatchTasks' mi dà una SQLException: Ottenere un database scrivibile da helper fallito –

Problemi correlati