erro SQLite: não é possível confirmar a transação - instruções SQL em andamento usando o Código Java

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

  •  20-08-2019
  •  | 
  •  

Pergunta

Eu estou enfrentando um erro SQLite embora eu não estou usando qualquer AutoCommit explícita verdadeira ou falsa. alguém pode fornecer qualquer entrada sobre esse erro. O que são a situação onde você irá obter este erro.

Obrigado antecipadamente. Saudações, Manasi Salvar

Foi útil?

Solução

Eu enfrentei um problema semelhante repetidamente (no meu caso, foi uma reversão que não era possível) quando eu estava dentro de um laço looping sobre as entradas da tabela. Enquanto o cursor está processando as entradas, uma instrução SQL é "em andamento". Eu não sei exatamente, se este também proíbe commits, mas poderia ser.

Quando você tenta entradas da tabela de processos e inserção entradas na mesma ou uma tabela diferente, você pode querer tentar recolher os dados na memória e depois do laço fazer as inserções ou atualizações.

info designação suplementar: "Autocommit" Normalmente o padrão é "true" no SQLite (que, naturalmente, poderia também dependem da camada de acesso você usa - Eu estou usando Python e APSW, então eu não posso dizer mais sobre isso em Java). Isto significa que cada inserção é autocommited imediatamente.

==> este poderia ser um outra solução. Em vez de armazenar os dados na memória, você poderia tentar abrir explicitamente uma transação e confirmá-lo após o loop -. Desta forma, o problema deve ir também afastado

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top