Cleiton wrote: > Pessoal, estou com o seguinte problema... > > Tenho uma tabela (TAB01) com um campo que chave estrangeira da tabela > (TAB02). Esse campo não está declarado como not null, portante aceita ficar > nulo. > > Quando faço um cadastro novo, e deixo esse campo em branco, funciona tudo > certinho. > > No entanto, quando tenho um cadastro com esse campo preenchido e depois num > segundo momento preciso alterar esse cadastro deixando esse campo em branco, > o sistema não deixa, dando mensagem de violação de integridade. > > Como faço resolver esse pequeno contratempo?
Vamos dizer que você está usando Firebird. Primeiro você vê as constraints da tab01. Se usar o isql, execute show table tab01. Verifique qual o nome da constraint que faz a referência com a tabela tab02. Então: alter table tab01 drop constraint <nome da constraint> -- Joao Morais