GARANTIR DESCONTO

Fórum Consulta ao BD usando Thread #346067

14/09/2007

0

Pessoal,
Boa tarde!

Estou tentando fazer uma consulta no meu banco de dados usando um thread pois nesta consulta eu trago um campo do tipo blob que contem uma imagem e a mesma é bem grande entao quando faço isso o sistema esta travando entao colocando esta consulta na thread espero que ele nao trave.
Eu fiz assim:

type
  TThreadSQL = class(TThread)
    protected
      procedure Execute(); Override;
    private
     procedure SQLGrid;
  end;




procedure TThreadSQL.SQLGrid;
begin
  with Form1 do begin
    ClientDataSet1.Close;
    ClientDataSet1.Params.ParamByName(´NOME´).AsString :=  ClientDataSet2.FieldByName(´NOME´).AsString;
    ClientDataSet1.Open;
   end;
end;


procedure TThreadSQL.Execute;
begin
  Synchronize(SQLGrid);
end;


Eu chamo ela assim:

TThreadSQL.Create(false);



Ai acontece que o sisitema trava da mesma maneira ate que o registro seja carregado.

Algem sabe onde estou errando?

Obrigado!


Mmoreira

Mmoreira

Responder

Posts

17/09/2007

Mmoreira

ninguem sabe esta?


Responder

Gostei + 0

17/09/2007

Weber

Todos os componentes de acesso ao banco devem pertencer a sua Thread (tem que ser criados dentro dela).

Database, Transaction, Query, ClientDataSet


Responder

Gostei + 0

17/09/2007

Mmoreira

Weber,
No caso meu sistema esta em camadas entao eu tenho no servidor uma funcao que me retorna a consulta no BD.
Entao no cliente eu tenho de ter o ClientDataSet dentro da Thread e apenas isto bastaria ou eu teria de ter uma thread no server tambem?


Responder

Gostei + 0

17/09/2007

Weber

Nunca precisei usar em thread mas acredito que seja isto mesmo colocando o ClientDataSet dentro da thread deve resolver.


Responder

Gostei + 0

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

Aceitar