ClientDataSet com DBExpress
Estou iniciando o uso do CleintDataSet e estou com algumas dúvidas sobre a sintaxe do delete e do edit.
Gostaria de um exemplo de como implementar esses comandos, uma vez que quando executo o código abaixo dá mensagem de erro:
Clientdataset.delete;
Clientdataset.post;
Clientdataset.ApplyUpdate(0);
Macedo.
Gostaria de um exemplo de como implementar esses comandos, uma vez que quando executo o código abaixo dá mensagem de erro:
Clientdataset.delete;
Clientdataset.post;
Clientdataset.ApplyUpdate(0);
Macedo.
Francisco Macedo
Curtidas 0
Respostas
Alan Souza
03/05/2011
retire a linha do post, ela não é necessária.
GOSTEI 0
Francisco Macedo
03/05/2011
Caro alanps!
Como saber se o registro correto está sendo deletado?
Você poderia me enviar um comando completo para deletar um determinado registro.
Macedo.
Como saber se o registro correto está sendo deletado?
Você poderia me enviar um comando completo para deletar um determinado registro.
Macedo.
GOSTEI 0
Alan Souza
03/05/2011
o comando Delete vai apagar o registro corrente, então se vc deseja apagar um determinado registro pode navegar no DataSet ou usar Locate:
os colchetes podem ser preenchidos com os parâmetros loPartialKey e loCaseInsensitive.
ou, dependendo da sua aplicação, vc pode habilitar o CommandText e escrever direto um Delete por SQL através dele.
ClientDataSet1.Locate('campo',valoraserbuscado,[]);
os colchetes podem ser preenchidos com os parâmetros loPartialKey e loCaseInsensitive.
ou, dependendo da sua aplicação, vc pode habilitar o CommandText e escrever direto um Delete por SQL através dele.
GOSTEI 0
Francisco Macedo
03/05/2011
Tentei implementar o comando abaixo:
DM.ClientDataSet.Delete;
DM.ClientDataSet.ApplyUpdates(0);
e deu a mensagem de erro:
prjproject.exe raised exception class TDBError with message 'Column Unknown @1 At line@1, Column @2'
DM.ClientDataSet.Delete;
DM.ClientDataSet.ApplyUpdates(0);
e deu a mensagem de erro:
prjproject.exe raised exception class TDBError with message 'Column Unknown @1 At line@1, Column @2'
GOSTEI 0
Rodrigo Mattos
03/05/2011
o que você colocou no seu SQL?
GOSTEI 0
Rodrigo Mattos
03/05/2011
o que você colocou no seu SQL?
É uma coluna que não existe, executa seu Select no IBExpert.
GOSTEI 0
Francisco Macedo
03/05/2011
Coloquei o seguinte:
SELECT A.*,B.* FROM CADASTRO A, ENDERECO B WHERE A.CPF=B.CPF
ORDER BY A.CPF
SELECT A.*,B.* FROM CADASTRO A, ENDERECO B WHERE A.CPF=B.CPF
ORDER BY A.CPF
GOSTEI 0
Francisco Macedo
03/05/2011
O SQL funciona corretamente no IBExpert.
GOSTEI 0
Rafael Mattos
03/05/2011
SELECT A.*,B.* FROM CADASTRO A, ENDERECO B WHERE A.CPF=B.CPF ORDER BY A.CPF
é pq vc ta tentando dar um delete, e vc tem uma junção do CADASTRO E ENDERECO vai dar erro mesmo, até uma simples alteração no cadastro vai dar erro faz o teste pra vc ver.
altera seus ProviderFlags que da certo
GOSTEI 0