Deletando todos os registros
boa dia para todos.
amigos queria saber com fasso para deleta todos registro da tabela filha so que as tabelas não estão ligadar fisicamente tipo master e detalhe ela estão da seguinte forma eu puxei o codigo do cliente e inserir na tabela filha que tambem tem o campo codigo do cliente.
ai eu quero que quando eu deletar o cliente ele sair deletando todos os depedentes que ele acha na tabela referente a este cliente
amigos queria saber com fasso para deleta todos registro da tabela filha so que as tabelas não estão ligadar fisicamente tipo master e detalhe ela estão da seguinte forma eu puxei o codigo do cliente e inserir na tabela filha que tambem tem o campo codigo do cliente.
ai eu quero que quando eu deletar o cliente ele sair deletando todos os depedentes que ele acha na tabela referente a este cliente
Geomicro
Curtidas 0
Respostas
Michael
30/09/2005
Olá!
Se for um SGBD relacional, é só usar a linguagem SQL:
Vc pode automatizar isso usando um trigger.
[]´s
Se for um SGBD relacional, é só usar a linguagem SQL:
delete from Dependentes where CodigoCliente = :CodigoCliente
Vc pode automatizar isso usando um trigger.
[]´s
GOSTEI 0
Geomicro
30/09/2005
eu uso banco de dados access e componetes adoquery como poderia fazer isto utilizando um button
GOSTEI 0
Rjun
30/09/2005
Seria algo nesse caminho.
begin ADOQuery.SQL.Clear; ADOQuery.SQL.Add(´Delete from Dependentes where CodigoCliente = :CodigoCliente´); ADOQuery.Parameters.ParamByName(´CodigoCliente´).Value := edtCodCliente.Txt; ADOQuery.ExecSQL; ADOQuery.SQL.Clear; ADOQuery.SQL.Add(´Delete from Cliente where CodigoCliente = :CodigoCliente´); ADOQuery.Parameters.ParamByName(´CodigoCliente´).Value := edtCodCliente.Txt; ADOQuery.ExecSQL; end;
GOSTEI 0
Geomicro
30/09/2005
so uma duvida queria saber se e melhor utiliza os comando sql (select*from tabela) na proprieadade adoquery ou fazer uma instrução em na hora que for inserir um dado por exemplo como a que vc fez
begin
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add(´Delete from Dependentes where CodigoCliente = :CodigoCliente´);
ADOQuery.Parameters.ParamByName(´CodigoCliente´).Value := edtCodCliente.Txt;
ADOQuery.ExecSQL;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add(´Delete from Cliente where CodigoCliente = :CodigoCliente´);
ADOQuery.Parameters.ParamByName(´CodigoCliente´).Value := edtCodCliente.Txt;
ADOQuery.ExecSQL;
end;
o adoquery recebendo os paramentros qual seria as vantagens
begin
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add(´Delete from Dependentes where CodigoCliente = :CodigoCliente´);
ADOQuery.Parameters.ParamByName(´CodigoCliente´).Value := edtCodCliente.Txt;
ADOQuery.ExecSQL;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add(´Delete from Cliente where CodigoCliente = :CodigoCliente´);
ADOQuery.Parameters.ParamByName(´CodigoCliente´).Value := edtCodCliente.Txt;
ADOQuery.ExecSQL;
end;
o adoquery recebendo os paramentros qual seria as vantagens
GOSTEI 0
Rjun
30/09/2005
:?: :?: :?: Não entendi sua dúvida.
GOSTEI 0
Geomicro
30/09/2005
primeiro não tem nada a ver com a minha primeira duvida esta já e outra duvida.
eu quero saber qual a melhor forma de programa passa os paramento via programação desse tipo
ADOQuery.SQL.Add(´select*from tabela´); ou vou na propriedade
do adoquery sql do object inspector e coloco o camando (select*from tabela)
eu quero saber qual a melhor forma de programa passa os paramento via programação desse tipo
ADOQuery.SQL.Add(´select*from tabela´); ou vou na propriedade
do adoquery sql do object inspector e coloco o camando (select*from tabela)
GOSTEI 0
Rjun
30/09/2005
Eu prefiro que o código SQL fique dentro do componente. Se precisar alterar alguma coisa, utilize Querys parametrizadas. Acho que enfiar codigo SQL no meio do código do programa deixa ele meio poluído.
GOSTEI 0
Geomicro
30/09/2005
Amigo Rjun valeu pelas dicas e sua opnião pessoas com vc de e que deixa a linguagem delphi mais interessante
GOSTEI 0
Michael
30/09/2005
Amigo Rjun valeu pelas dicas e sua opnião pessoas com vc de e que deixa a linguagem delphi mais interessante
Pô, e eu? Quem estendeu primeiro a mão para vc??? hehehehehe
Tô brincando hein. ;-)
[]´s
GOSTEI 0
Geomicro
30/09/2005
o Michael descupe por não ter comentado o seu nome realmente foi falha minha eu agradeço a vc tambem e a todos que responde as minha duvidas e as duvidas dos outros colegas pois vc merece o minimo de consideração por parte da gente já que vc estão tirando nossas duvidas sem cobra nada
GOSTEI 0