Simples: faça duas tabelas.

Uma filha da tabela 2, e outra filha da tabela 3.

Já que essas duas tabelas são tão diferentes assim, acho que faz sentido
separar as filhas também.

Depois, na hora de puxar algum relatório, ou fazer uma query, basta fazer
um union nas duas tabelas.

Outra alternativa: criar 2 colunas diferentes pra FK, deixando ambas
nullable.
Daí preenche uma das colunas, e a outra deixa nula.



Att,




Em 5 de junho de 2015 16:11, Andre Santos andre.psantos...@gmail.com
[oracle_br] <oracle_br@yahoogrupos.com.br> escreveu:

>
>
> Sérgio
>
> Acho que o melhor caminho é mesmo fazer a revisão e ajuste dos objetos
> envolvidos.
> Dá trabalho, mas costuma ser melhor.
>
> Do jeito que você gostaria (uma "FK condicional"), imagino que só através
> de triggers para controlar a integridade referencial... mas é uma solução
> que pode dar mais "dor de cabeça" devido ao trabalho de manutenção dos
> triggers.
>
> Uma alternativa, através de "modelagem", poderia ser a criação de uma
> tabela "centralizadora" das PK's das tabelas "Recibo Tipo 1" e "Recibo Tipo
> 2".
> Essa tabela "centralizadora" teria apenas o identificador do Nº do Recibo
> (PK) e o indicador de tipo (1 ou 2), talvez formando uma "PK composta"
> (dependendo da necessidade).
> Todas as outras tabelas envolvidas (Tarifas, Recibos Tipo 1, Recibos Tipo
> 2) ficariam dependentes dela (relacionadas).
>
> [ ]
>
> André Santos
>
>
> Em 5 de junho de 2015 12:13, 'Sergio Pennacchiotti'
> sergiofp...@yahoo.com.br [oracle_br] <oracle_br@yahoogrupos.com.br>
> escreveu:
>
>>
>>
>> Bom dia!
>>
>>
>>
>> Gostaria de solicitar a ajuda do grupo.
>>
>>
>>
>> Me deparei com o seguinte problema:
>>
>>
>>
>> Tabela 1 – Tarifas (Filha da Tabela 2 e Tabela 3)
>>
>> FK original – para Tabela 1
>>
>> Coluna - Nº do Recibo
>>
>>
>>
>> Tabela 2 – Recibos Tipo 1
>>
>> PK – Nº do Recibo
>>
>>
>>
>> Tabela 3 – Recibos Tipo 2 (Recém criada e que tem leioute totalmente
>> diferente da Tabela 2)
>>
>> PK – Nº do Recibo
>>
>>
>>
>> Como faço para que a Tabela 1 tenha integridade referencial com a Tabela
>> 2 e Tabela 3 sem ter que criar uma nova coluna Nº de Recibo 2?
>>
>> Existe alguma opção condicional na criação da FK da Tabela 1 que cheque a
>> Tabela 2 ou a Tabela 3 (com a coluna Nº do Recibo da Tabela 1)?
>>
>>
>>
>> Isto me evitaria um trabalho pesado na revisão e correção dos objetos
>> envolvidos.
>>
>>
>>
>> Agradeço a atenção de todos.
>>
>>
>>
>>
>>
>> Abraço
>>
>> Sérgio Pennacchiotti
>>
>>
>>
>>
>>
>>
>  
>
  • [oracle_b... 'Sergio Pennacchiotti' sergiofp...@yahoo.com.br [oracle_br]
    • Re: ... Andre Santos andre.psantos...@gmail.com [oracle_br]
      • ... 'Milton Bastos Henriquis Jr.' miltonbas...@gmail.com [oracle_br]

Responder a