 |
ActiveDelphi .: O site do programador Delphi! :.
|
Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
thomazs Moderador


Registrado: Segunda-Feira, 1 de Março de 2004 Mensagens: 2835
|
Enviada: Qui Jan 11, 2007 7:22 pm Assunto: |
|
|
pode criar sim, mas não precisa, pois quando se cria a foreign key com cascade, o banco faz isso automaticamente. _________________ Suporte e Consultoria em Desenvolvimento de Sistemas
Bacharel em Sistemas de Informação
Especialista em Bancos de Dados
Desenvolvimento: Clipper, Delphi, PHP, Python/Django |
|
Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Qui Jan 11, 2007 7:45 pm Assunto: |
|
|
Bom Thomasz, verificando aki, me pareçe que alen de nao poder existir essa trigger
Código: | /* Trigger: TR_RETR_DEBITO */
CREATE TRIGGER TR_RETR_DEBITO FOR DEBITO
ACTIVE AFTER DELETE POSITION 0
AS
begin
/* Trigger text retroceder debito*/
UPDATE debito SET SEQUENCIA = SEQUENCIA - 1
WHERE SEQUENCIA > OLD.SEQUENCIA;
end
|
Essa tambem nao pode ter
Código: | /* Trigger: RETRCONTA */
CREATE TRIGGER RETRCONTA FOR TBCONTA
ACTIVE AFTER DELETE POSITION 0
AS
begin
UPDATE tbconta SET SEQUENCIA = SEQUENCIA - 1
WHERE SEQUENCIA > OLD.SEQUENCIA;
end
^
|
Pois no caso ai se eu deletar uma sequencia do meio por exemplo na tabela mestre a tabela detalhe deleta todos que vem depois da sequencia deletada, exemplo
se eu tiver no banco assim (meste e detalhe tambem)
sequencia-------------valor
1-----------------------500,00
2-----------------------200,00
3-----------------------100,00
e se eu quiser deletar a sequencia 2 na tabmestre fica certo, mais na detalhe fica assim
1-----------------------500,00
ou seja ela deleta tambem a sequencia 3
-------------------------------
mais se eu nao usar essa trigger ai quando deleto fica assim
1-----------------------500,00
3-----------------------100,00
--------------------------------
se nao tiver alguma maneira de deixa-la assim como estava antes
1-----------------------500,00
2-----------------------100,00
nao tem problema, mais se tiver alguma maneira das duas tabelas ficarem com a sequencia organizada seira melhor. Mais isto eh se nao bagunçar com as tabelas.
------------------------------------
No mais muito obrigado pela ajuda amigo.
Pelo menos desta forma sem essas duas trigger esta funcionando.
Mais uma vez Muito Obrigado
Ha ia me esquecendo tambem de dizer, se na trigger autoincremento posso deixar desta forma que eu criei ou eh melhor usa-=la com generators.
Mais uma pergunta Ja que estou deletando em cascata e tambem configurei para fazer update em cascata. Nao eh necessario fazer um SPorc com o update tambem basta eu fazer do mesmo modo que faço na query que fiz o delete apenas mudando o codigo para update eh claro...
No caso se puder alterar em cascata assim tambem, pq serah que nao fizeram para incluir em cascata tambem para evitar de criar uma Sprocedure como foi feito.  _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
Voltar ao Topo |
|
 |
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|