Errore SQLite: impossibile eseguire il commit della transazione: istruzioni SQL in corso utilizzando il codice Java

StackOverflow https://stackoverflow.com/questions/1049293

  •  20-08-2019
  •  | 
  •  

Domanda

Sto riscontrando un errore SQLite anche se non sto usando AutoCommit esplicito vero o falso. qualcuno può fornire qualche input su questo errore. Qual è la situazione in cui verrà visualizzato questo errore.

Grazie in anticipo. Saluti, Manasi Save

È stato utile?

Soluzione

Ho riscontrato ripetutamente un problema simile (nel mio caso era un rollback che non era possibile) quando mi trovavo all'interno di un ciclo che scorreva sulle voci della tabella. Finché il cursore elabora le voci, un'istruzione SQL è & Quot; in corso & Quot ;. Non so esattamente, se anche questo proibisce gli commit, ma potrebbe essere.

Quando si tenta di elaborare voci di tabella e inserire voci nella stessa o in un'altra tabella, è possibile provare a raccogliere i dati in memoria e dopo il ciclo eseguire gli inserimenti o gli aggiornamenti.

Informazioni aggiuntive: " Autocommit " il valore predefinito è " True " in SQLite (ovviamente potrebbe anche dipendere dal livello di accesso che usi: sto usando Python e apsw, quindi non posso dirti di più su questo in Java). Ciò significa che ogni inserto viene inserito automaticamente in autocommerce.

== gt &; questa potrebbe essere un'altra soluzione. Invece di archiviare i dati in memoria, potresti provare ad aprire esplicitamente una transazione e impegnarla dopo il ciclo - in questo modo, il problema dovrebbe andare anche via.

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