Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
Benival Novato

Registrado: Terça-Feira, 29 de Outubro de 2013 Mensagens: 7
|
Enviada: Qua Fev 12, 2020 7:17 pm Assunto: Tratamento de Erro ao excluir no mysql |
|
|
Boa noite,
Alguém poderia me ajudar....
estou a dias tentando kk
meu problema e com tratar um erro de exclusão de registro com chave estrangeira em delphi com mysql
ex: cadastro de linhas
lin_id = 1
lin_nome = colmeia
cadastro de rotas
rot_id = 1
rot_nome = Guaraí
id_linhas = 1 (chave estrangeira da linha)
queria que no memento que eu clicar para excluir o registro da linhas
tratasse o erro se no caso existir um registro em outra tabela.
Obrigado! |
|
Voltar ao Topo |
|
 |
joemil Moderador

Registrado: Quinta-Feira, 25 de Março de 2004 Mensagens: 9100 Localização: Sinop-MT
|
Enviada: Qui Fev 13, 2020 8:46 am Assunto: |
|
|
qual o erro?
pq vc nao usa delecao em cascata? _________________ <b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
Enviar imagens: http://tinypic.com/ |
|
Voltar ao Topo |
|
 |
Benival Novato

Registrado: Terça-Feira, 29 de Outubro de 2013 Mensagens: 7
|
Enviada: Qui Fev 13, 2020 6:22 pm Assunto: |
|
|
joemil escreveu: | qual o erro?
pq vc nao usa delecao em cascata? |
Cannot delete or update a parent row: a foreign key constraint fails (`laticinio`.`carreteiros`, CONSTRAINT
`FK_carreteiros_tanques_tan_id` FOREIGN KEY (`id_tanques`) REFERENCES `tanques` (`tan_id`))[/img] |
|
Voltar ao Topo |
|
 |
joemil Moderador

Registrado: Quinta-Feira, 25 de Março de 2004 Mensagens: 9100 Localização: Sinop-MT
|
Enviada: Sex Fev 14, 2020 9:09 am Assunto: |
|
|
pode ser algum erro na constraint, q nao ta conseguindo apagar os registros da tabela filha _________________ <b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
Enviar imagens: http://tinypic.com/ |
|
Voltar ao Topo |
|
 |
joemil Moderador

Registrado: Quinta-Feira, 25 de Março de 2004 Mensagens: 9100 Localização: Sinop-MT
|
Enviada: Sex Fev 14, 2020 9:21 am Assunto: |
|
|
tentou apagar o registro pelo cliente do banco de dados? _________________ <b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
Enviar imagens: http://tinypic.com/ |
|
Voltar ao Topo |
|
 |
Benival Novato

Registrado: Terça-Feira, 29 de Outubro de 2013 Mensagens: 7
|
Enviada: Sáb Fev 15, 2020 8:18 pm Assunto: |
|
|
joemil escreveu: | tentou apagar o registro pelo cliente do banco de dados? |
Código: |
procedure Tf_tanques.btn_excluirClick(Sender: TObject);
begin
dm.tb_carreteiros.Open;
dm.tb_carreteiros.Active := True;
try
dm.tb_tanques.Locate('tan_id',dm.sql_tanquestan_id.Value,[]);
if Application.MessageBox('Tem certeza que deseja excluir o registro selecionado?',
'Confirmação', MB_YESNO + MB_ICONQUESTION + MB_DEFBUTTON2) = IDYES then
begin
Dm.tb_tanques.Delete;
MessageBox(Handle, 'Registro Excluido com Sucesso ! ' ,'Folha',MB_ICONINFORMATION+MB_OK);
dm.tb_tanques.Open;
dm.sql_tanques.Refresh;
end;
if (dm.tb_tanques.RecordCount <> 0) then //se haver registro na tabela então os botões ficaram assim
begin
btn_excluir.Enabled := True;
btn_cancelar.Enabled := false;
btn_editar.Enabled := True;
btn_salvar.Enabled := false;
btn_novo.Enabled := True;
btn_fechar.Enabled := True;
txt_consulta.Clear;
txt_consulta.Enabled := True;
end;
if (dm.tb_tanques.RecordCount = 0) then //se não haver registro na tabela então os botões ficaram assim
begin
btn_excluir.Enabled := False;
btn_cancelar.Enabled := False;
btn_editar.Enabled := False;
btn_salvar.Enabled := False;
btn_novo.Enabled := True;
btn_fechar.Enabled := True;
txt_consulta.Clear;
txt_consulta.Enabled := False;
end;
//verifico se a registro com o mesmo id na tabela carreteiro
except
begin
Application.MessageBox('Você não pode excluir o Registro! Contem dados relacionados a este registro!!!','Erro', MB_ICONERROR + MB_OK );
end;
end;
end; |
obrigado galera resolvido a questão... |
|
Voltar ao Topo |
|
 |
|