Fórum Como deletar duas tabelas que nao tem referencia? #58674
11/08/2007
0
Tentei assim
try //começa o bloco do try/except dm.qFunc.Close; dm.qFunc.Sql.Add(´Delete from salario_m S where S.id_sal ´ +´in(select F.id_gerarformula from formulas F ´ +´where (S.id_sal = :pExclui))´); dm.qFunc.ParamByName(´pExclui´).AsInteger:=vExclui; dm.qFunc.ExecSql; //---tabela filha dm.zTFormula.Close; dm.zTFormula.Sql.Add(´Delete from Formulas ´ +´where F.id_gerarFormula = :pExclui)´); dm.zTFormula.ParamByName(´pExclui´).AsInteger:=vExclui; dm.zTFormula.ExecSql; dm.qFunc.Refresh; //faz um refresh na tabela para atualizar os dados dm.zTFormula.Refresh; except on Exc:Exception do begin ShowMessage(´Ocorreu um erro na tentantiva de Excluir os registro: ´ + Exc.Message); DM.zDB.Rollback; dm.qFunc.Refresh; //faz um refresh na tabela para atualizar os dados end; end; //final do bloco do try/except
Adriano_servitec
Curtir tópico
+ 0Posts
11/08/2007
Adriano_servitec
ALTER TABLE formulas ADD CONSTRAINT fk_formulas_2 FOREIGN KEY(id_gerarformula) REFERENCES salario_m(id_sal) ON DELETE CASCADE ON UPDATE CASCADE;
Soh que nao consigo aponta erro
[b:5bfdbf5a2c][color=green:5bfdbf5a2c]Cannot commit transaction:[/color:5bfdbf5a2c]
[color=red:5bfdbf5a2c]violation of FOREIGN KEY constraint ´´.
violation of FOREIGN KEY constraint ´PK_SALARIO_M´ on table ´SALARIO_M´.
Foreign key reference target does not exist.[/color:5bfdbf5a2c][/b:5bfdbf5a2c]
Gostei + 0
12/08/2007
Adriano_servitec
Pessoal cheguei a criar a [b:53efa3727a]FK[/b:53efa3727a] na tabela [b:53efa3727a][u:53efa3727a]Formulas[/u:53efa3727a][/b:53efa3727a]
Mais se eu deletar algum funcionario na tabela [b:53efa3727a][u:53efa3727a]salario_m[/u:53efa3727a][/b:53efa3727a] aponta o seguinte erro
(IBExpert)
[b:53efa3727a]
A chave esta criado assim (Hj consegui fazer funcionar)
ALTER TABLE formulas ADD CONSTRAINT fk_formulas_2 FOREIGN KEY(id_gerarformula) REFERENCES salario_m(id_sal) ON DELETE CASCADE ON UPDATE CASCADE;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)