Delphi XE5 Android Sqlite table locked

24/04/2014

0

Estou tentando da um update numa tabela sqlite, mas retorna o erro table locked.
Alguem tem alguma solução?


try
  ///PREPARA QUERY
    SQLQueryupadte.SQL.Clear;
    SQLQueryupadte.SQL.add('UPDATE ACAPARAM');
    SQLQueryupadte.SQL.add('set IPACESSO= (:IPACESSO),');
    SQLQueryupadte.SQL.add('NOMEUSUARIO = (:NOMEUSUARIO),'); 
    SQLQueryupadte.SQL.add('NUMERO = (:NUMERO),');
    SQLQueryupadte.SQL.add('PAGINAFACEBOOK = (:PAGINAFACEBOOK),');
    SQLQueryupadte.SQL.add('PAGINAPESSOAL = (:PAGINAPESSOAL),');
    SQLQueryupadte.SQL.add('PAGINATWITTER = (:PAGINATWITTER),');

///MOVE OS CAMPOS
    SQLQueryupadte.ParamByName('IPACESSO').AsString := TRIM(EDIT7.TEXT);
    SQLQueryupadte.ParamByName('NOMEUSUARIO').AsString := UPPERCASE(TRIM(tbeditnome.TEXT));
    SQLQueryupadte.ParamByName('NUMERO').AsString := TRIM(EDIT2.TEXT);
    SQLQueryupadte.ParamByName('PAGINAFACEBOOK').AsString := LowerCase(TRIM(EDIT5.TEXT));
    SQLQueryupadte.ParamByName('PAGINAPESSOAL').AsString := LowerCase(TRIM(EDIT4.TEXT));
    SQLQueryupadte.ParamByName('PAGINATWITTER').AsString := LowerCase(TRIM(EDIT6.TEXT));

    SQLQueryupadte.ExecSQL;
  except
    on e: exception do
     begin
       showmessage(e.Message);
     end;
  end;
Carlos Escudeiro

Carlos Escudeiro

Responder

Posts

24/04/2014

Ricardo

A mensagem de tabela bloqueada no SQLite acontece quando a mesma já está em uso e ao mesmo tempo tenta-se fazer uma nova operação de inserção, edição e deleção.

O SQLite só permite realizar consultas simultaneamente, as demais operações quando são realizadas, automaticamente bloqueiam a tabela enquanto estão em andamento.
Responder

03/09/2017

Jorge Lemos

fdconnection no parametro -> LockingMode" -> "Normal"; simples assim.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar