| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
fabiodurgante Aprendiz

Registrado: Sexta-Feira, 8 de Novembro de 2013 Mensagens: 197
|
Enviada: Dom Out 01, 2017 10:23 am Assunto: sql delete erro |
|
|
ola tenho o seguinte sql
| Código: |
DELETE FROM conta WHERE id IN (
select FIRST 5000 a.id
from conta a
inner join conta1 b on a.id= b.id
where a.data< :data ) ;
|
esse sql trava o ibexpert tentei colocar limite para 5000 registros e mesmo assim trava first 1 trava tambem porem se eu fizer assim
| Código: |
DELETE FROM conta WHERE id = 500
|
assim funciona perfeito porem quero apagar todos os registros da tabela conta quando o mesmo ID estiver na tabela conta e conta1 apaga na tabela conta
porem trava tudo no delphi fiz assim e funcionou
| Código: |
IBQuery2.Close;
IBQuery2.SQL.Clear;
IBQuery2.sql.add(' select a.id');
IBQuery2.sql.add('from conta a ');
IBQuery2.sql.add('inner join conta1 b on a.id= b.id');
IBQuery2.sql.add('where a.data< :data');
IBQuery2.ParamByName('data').AsDate:= data;
IBQuery2.Prepare;
IBQuery2.Open;
IBQuery2.FetchAll;
label5.Caption:=IntToStr( IBQuery2.RecordCount);
IBQuery2.First;
while not IBQuery2.EoF do
begin
sql_pagar_contas(IBQuery2.FieldByName('id').Value) ;
IBQuery2.Next;
end;
procedure TForm1.sql_pagar_contas(id:String);
begin
IBQuery1.Close;
IBQuery1.SQL.Clear;
IBQuery1.sql.add(' DELETE FROM conta WHERE id = '+id);
IBQuery1.Prepare;
IBQuery1.ExecSQL;
end
|
assim no delphi funcionou faco um select com todos os id que quero deletar e vou deletando 1 por 1 no while, quero fazer isso no ibexpert mas trava como poderia fazer ??? |
|
| Voltar ao Topo |
|
 |
imex Moderador

Registrado: Sexta-Feira, 7 de Janeiro de 2011 Mensagens: 11666
|
|
| Voltar ao Topo |
|
 |
digitom Novato

Registrado: Quinta-Feira, 30 de Junho de 2005 Mensagens: 54
|
Enviada: Seg Out 02, 2017 8:43 am Assunto: |
|
|
Eu faria do jeito que nosso amigo IMEX sugeriu. .
| Código: | DELETE FROM conta a
WHERE
(a.data < :data) and
exists (select 1 from conta1 b where b.id = a.id) |
 |
|
| Voltar ao Topo |
|
 |
fabiodurgante Aprendiz

Registrado: Sexta-Feira, 8 de Novembro de 2013 Mensagens: 197
|
Enviada: Seg Out 02, 2017 11:06 am Assunto: |
|
|
| valeuu funcionou obrigado agradeçooo |
|
| Voltar ao Topo |
|
 |
|