Ainda com uma dúvida em SQL

Delphi

08/05/2003

Olá pessoal tudo bem? Estou tendo um probleminha com o código abaixo, quando executo fala o seguinte: [b:ff61c537df] Não é possível em um arquivo somente leitura [/b:ff61c537df], como resolvo isto? Segue abaixo o código:
 DM.Query3.Active := False;
 DM.Query3.Close;
 DM.Query3.Params[0].AsInteger := StrToInt(Edit2.Text); // insere o codigo para efetuar a busca
 DM.Query3.Open;
 DM.Query3.Active := True;
 for i := 0 to DM.Query3.RecordCount - 1 do
 begin
  DM.Query3.Edit;
  DM.Query3Qnt.Value := DM.Query3Qnt.Value -StrToInt(Edit1.text);
  DM.Query3.Post;
 end;



Titanius

Titanius

Curtidas 0

Respostas

Okama

Okama

08/05/2003

Verifique se você tem permissão para acessar a base.

Se for Paradox, DBF, Access verifque se os arquivos (db, mdb, dbf) não estão marcados como Somente Leitura.


GOSTEI 0
Titanius

Titanius

08/05/2003

Utilizo o DB Paradox, e nenhum dos arquivos estão marcados como somente leitura...
[]s


GOSTEI 0
Okama

Okama

08/05/2003

Bom, nunca peguei um erro desse tipo. O que eu faria era isolar o problema, substiuindo o Query por Table ou trocando a atualização por SQL porque você está usando comandos de table em Query (edit, post).

Ou troque por update em SQL:

DM.Query3.SQL.Text := ´Update <tabela> set Qnt = Qnt - ´+Edit1.Text + ´ where <campo> = ´+ Edit2.text;

DM.Query3.ExecSQL;

É só uma sugestão, quem sabe funcione. :roll:


GOSTEI 0
Moonlight

Moonlight

08/05/2003

verifique se o Cached Update da query está setado com True...


GOSTEI 0
Werlon Goulart

Werlon Goulart

08/05/2003

Verifique se a propriedade RequerstLive do Query esta True.

Um Abraco
Werlon Goulart


GOSTEI 0
Torres Delphi

Torres Delphi

08/05/2003

Titanius,

Eu ja tive este problema e tambem deixei a mesma pergunta no forum, mas ninguem respondeu a contento (isso qdo responderam!!!! Deixei duas vezes).

Em live querys (RequestLive:=true), nao eh possivel colocar instrucoes SQL que tenham GROUP BY, HAVING e coisas do genero, no maximo um ORDER BY. E por incrivel que pareca a mensagem se referia a tabela somente para leitura (TABLE IS READ ONLY)!!!!

Espero que resolva seu problema

Abracos


GOSTEI 0
POSTAR