Fórum ApplyUpdates não grava no banco (android) #559819

02/08/2016

0

Olá, boa noite!
Estou mexendo em um aplicação Android feita em Delphi. Utilizo o delphi seattle e me deparei com um problema:
Minha FDConnection está com OpenMode = ReadWrite.
FDquery está com o cached update = true;
Utilizo FDconnection + FDQuery.

Consigo dar open nas tabelas e trago tudo que está salvo no banco,mas quando dou o ApplyUpdates as informações não vão para o banco, implementei o reconcille error para ver se retornava algum erro, mas não da erro algum... Se alguém souber o que pode ser.
Obrigado!
Core

Core

Responder

Posts

02/08/2016

Core

Tentei dar um execSql fazendo o insert na tabela e até assim não vai.
Responder

Gostei + 0

03/08/2016

Natanael Ferreira

Experimente após o ApplyUpdates dar um Commit no Dataset.

Exemplo:

procedure TConnection.InsertExemplo;
const
  SQL: string = 'INSERT INTO TABELA' + SLineBreak +
                '(TESTE, TESTNOME)VALUES' + SLineBreak +
                '(:TESTE, :TESTNOME)';
begin
  fQuery.SQL.Clear;
  fQuery.SQL.Add(SQL);
  fQuery.ParamByName('TESTE').AsString := 'DEVMEDIA';
  fQuery.ParamByName('TESTNOME').AsString := 'DEVMEDIATESTE';
  fQuery.ExecSQL;
  fQuery.Connection.Commit; // Adicione esta linha
end;
Responder

Gostei + 0

03/08/2016

Core

Oi. Natanael. nao funcionou.
Responder

Gostei + 0

03/08/2016

Natanael Ferreira

Experimente dar um applyupdates no FDConnection passando como parâmetro o FDQuery.

Exemplo:

FDQuery1.Post;
FDConnection1.ApplyUpdates([FDQuery1]);


Veja este link:
http://isaquesp.blogspot.com.br/2013/07/firedac-com-firebird-e-cacheupdate.html
Responder

Gostei + 0

03/08/2016

Core

Não funcionou tambem.
Fiz tentando ler escrever um arquivo e da a mesma coisa, consigo ler o arquivo q está la na pasta de qdo faço deploy, mas quando vou escrever ele não da erro mas tb não grava fica do mesmo jeito. E o caminho do arquivo esta corret. .\assets\internal\
Deixei todas as permissões ativadas e nada. Já n faço idéia mais do q possa ser.
Responder

Gostei + 0

30/06/2022

Wellington Telles

Uma das coisas que percebi foi que o modo de acessar o banco de dados tem grande influência principalmente se utilizar dois programas para acessar o banco gerando conflito.
A ideia é usar no modo compartilhado conforme a página sugere:

https://docwiki.embarcadero.com/RADStudio/Sydney/en/Connect_to_SQLite_database_(FireDAC)

Para usar terá que "setar" esses dois parametros:

LockingMode=Normal
Synchronous=Normal

Do seu FDConnection.
Responder

Gostei + 0

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

Aceitar