Consulta no TClienteDataSet

Delphi

30/06/2004

Preciso fazer uma consulta e o resultado da consulta alterala mas esta dando um erro assim:

´ Project Project1.exe raised exception class EDatabaseError with message ´Table unknown ´. Process stopped. Use Step or run to continue´

Esse erro acontece quando tento gravar o registro com esses comandos abaixo, estou usando os seguintes componentes SQLQuery,DataSeteProvider,ClienteDataSet,DataSource;
Eu fiz a consulta no SqlQuery e dei um close no ClienteDataSet e logo em seguida um open.

TD.TransactionID := 1;
TD.IsolationLevel := XILReadCommitted;
SQLConnection1.StartTransaction(TD);
Try
begin
ClientDataSet1.Post;
ClientDataSet1.ApplyUpdates(0);
SQLConnection1.Commit(TD);
end;
Except
MessageDlg(´Erro na Gravação.´, mtInformation,[mbOk], 0);
end;



Desde já agradeço pela atenção....


Mpolaco

Mpolaco

Curtidas 0

Respostas

Cabelo

Cabelo

30/06/2004

Caro Colega..

O select que vc passou é um Join??

Cabelo


GOSTEI 0
Moliva

Moliva

30/06/2004

Olá


Além de verificar o Join, como já foi falado.

Verifique tb se o seu Delphi está Atualizado.
Se ele não estiber atualizado passe o nome da tabela toda em maiuscula e veja se dá certo.



[]s
Moliva


GOSTEI 0
Mpolaco

Mpolaco

30/06/2004

a consulta é essa aqui;

ClientDataSet1.Close;
SQLDataSet1.CommandText:=´Select * from Produtos where codigo=´+ edit1.text+´´;
clientdataset1.Open;


sim meu delphi 6 esta atualizado


GOSTEI 0
Cabelo

Cabelo

30/06/2004

Cara é o seguinte..

Já tive alguns problemas desse tipo com SQL Server..

Se seu banco de dados for novo dê um drop na tabela e depois crie ela de novo com o nome da tabela e dos campos todos maiúsculos..

no select tb..

faça o select todo maiúsculo e vê se funciona..

Parece ser isso..

espero ter ajudado..

sem mais

Cabelo


GOSTEI 0
Rômulo Barros

Rômulo Barros

30/06/2004

TD.TransactionID := 1; // Acredito que o erro não é aqui. Mas, mudando de assunto... isto tá errado... faça assim:
TD.TransactionID := SessionId(); Onde sessionid é uma funcao que retorna um valor aleatório
TD.IsolationLevel := XILReadCommitted; 
SQLConnection1.StartTransaction(TD); 
Try 
begin 
ClientDataSet1.Post; 
ClientDataSet1.ApplyUpdates(0); 
SQLConnection1.Commit(TD); 
end; 
Except 
MessageDlg(´Erro na Gravação.´, mtInformation,[mbOk], 0); 
end; 



GOSTEI 0
POSTAR