Unique Index
16/03/2006
0
Porque quando eu vou criar uma FK ele dá esse erro:
alter table LANCAMENTOCONT add constraint FK_LANCAMENTOCONT foreign key (TIPODEDEBITO) references TIPODEDEBITO(CODIGODACURIAD)
Estou criando assim:
alter table LANCAMENTOCONT add constraint FK_LANCAMENTOCONT foreign key (TIPODEDEBITO) references TIPODEDEBITO(CODIGODACURIAD)
Estou tentando tb pelo IBExpert mas dá o mesmo erro.
Rodrigo
Rodrigorpb
Posts
16/03/2006
Paullsoftware
pode ser que ajá algum dado repetido!
16/03/2006
Rodrigorpb
AMIGOS OUTRA COISA, COMOTRADUZ AS MENSAGENS DE INTEGRIDADE NO DELPHI PARA O USUÁRIO. TIPO QUANDO DELETA UMA COM INTEGRIDADE DA AQUELA MENSAGEM HORRÍVE.
RODRIGO
16/03/2006
Paullsoftware
procedure TfPRINCIPAL.CapturaErros(Sender: TObject; E: Exception); var mensagem: string; Pos1, Pos2: integer; NomeDoLog: string; Arquivo: TextFile; begin NomeDoLog := ChangeFileExt(Application.Exename, ´.log´); AssignFile(Arquivo, NomeDoLog); if FileExists(NomeDoLog) then Append(arquivo) else ReWrite(arquivo); try WriteLn(arquivo, ´****************** ´+DateTimeToStr(Now)+ ´ ****************** ´); Writeln(arquivo, ´Erro Ocorrido: ´); Writeln(arquivo,E.Message); Writeln(arquivo, ´Janela: ´+ Screen.ActiveForm.Name + ´ Controle Ativo: ´+Screen.ActiveControl.Name); WriteLn(arquivo, ´----------------------------------------------------------------------´); MessageDlg(´Ocorreu o seguinte erro:´+e.Message,mtError,[mbOK],0);//aqui você pode persolizar a mensagem de erro finally CloseFile(arquivo) end; If Pos(UpperCase(´is not a valid date´), UpperCase(E.Message)) <> 0 then MessageDlg(´Data inválida, proceda a correção.´,mtError,[mbOK],0) else if Pos(UpperCase(´must have a value´), UpperCase(E.Message)) <> 0 then begin Pos1:=Pos(´´´´, E.Message); mensagem:=E.Message; Delete(mensagem, Pos1, 1); Pos2:=Pos(´´´´, mensagem); mensagem:=copy(E.Message, Pos1 + 1, Pos2 - Pos1); MessageDlg(´É obrigatório o preenchimento do campo ´+ mensagem +´.´,mtError,[mbOK],0); end else If Pos(UpperCase(´key violation´), UpperCase(E.Message)) <> 0 then MessageDlg(´Houve violação de chave. Registro já incluso.´,mtError,[mbOK],0) else If Pos(UpperCase(´Input value´), UpperCase(E.Message)) <> 0 then MessageDlg(´Campo preenchido com valor não válido. Proceda a correção.´,mtError,[mbOK],0) else If Pos(UpperCase(´is not a valid time´), UpperCase(E.Message)) <> 0 then MessageDlg(´Hora inválida, proceda a correção.´,mtError,[mbOK],0) else If Pos(UpperCase(´master has detail records´), UpperCase(E.Message)) <> 0 then MessageDlg(´Proibida a Exclusão e Modificação deste Registro, pois ele faz referência a Outro(s) Registro(s)!´,mtError,[mbOK],0) else If Pos(UpperCase(´field value required´), UpperCase(E.Message)) <> 0 then Begin Pos1:=Pos(´:´,E.Message); Delete(Mensagem,Pos1,1); Mensagem:=copy(E.Message,Pos1+2,30); MessageDlg(´É obrigatório o preenchimento do campo "´+mensagem+´".´,mtError,[mbOK],0) End; If Pos(UpperCase(´RECORD LOCKED BY ANOTHER USER.´), UpperCase(E.Message)) <> 0 then MessageDlg(´O Registro está sendo Utilizado por Outro Usuário da Rede. Cancele a Operação e Aguarde a Liberação do Mesmo!´,mtError,[mbOK],0) else MessageDlg(´Ocorreu o seguinte Erro: ´+E.Message,mtError,[mbOK],0); end;
para funcionar coloque o OnCreate do form principal!
Application.OnException := CapturaErros;
espero ter ajudado!
Clique aqui para fazer login e interagir na Comunidade :)