1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

SQL recursividade

Discussão em 'Programação' iniciada por ASMor, 8 de Junho de 2009. (Respostas: 8; Visualizações: 1466)

  1. ASMor

    ASMor Folding Member

    Boas

    O problema é o seguinte
    Tenho uma tabela, Vendedores, e essa tabela tem um cod_vendedor e um cod_supervisor,
    Ou seja um vendedor é também o supervisor de outro vendedor,
    O cod_supervisor vai ter a chave de um cod_vendedor que é chave primária e ao memo tempo chave externa.
    Como é que isto se aplica em sql?

    Já googlei e só me aparece pesquisas com recursividade..

    Obrigado.
     
  2. dvfer

    dvfer Power Member

    Acho que se calhar é melhor "redesenhar" a BD. Provavelmente a melhor maneira é teres uma tabela que mapeia essa relação. Uma tabela com: [cod_vendedor, cod_supervisor] com o cod_vendedor sendo chave primária e cod_supervisor uma chave externa.
     
  3. AliFromCairo

    AliFromCairo Power Member

    Isso não iria resolver o problema, uma vez que é o que ele já tem neste momento :007:.

    De qualquer das formas, convém especificares exactamente o que pretendes fazer, uma vez que apenas descreveste a estrutura da tua tabela. No entanto, vê se o que pretendes é semelhante a isto.
     
  4. dvfer

    dvfer Power Member


    Resolvia. Porque passava a ter duas tabelas para esta situação: a "Vendedores" e a "Supervisores" (por exemplo).
     
  5. ASMor

    ASMor Folding Member

    pois, mas o problema é que tem que ser implementado como expliquei, estar a criar uma nova tabela Supervisores iria conter dados redundantes visto serem os mesmo da tabela Vendedores,
    Quanto ao site dado pelo AliFromCairo, não é o que pretendo.

    Do género:

    cod_supervisor smallint not null,
    foreign key (cod_supervisor)
    references vendedores (cod_vendedor)

    so que isto não funciona
     
  6. dvfer

    dvfer Power Member

    Se fores a ver bem só crias um campo redundante: o id do vendedor. Uma vez que o campo idSupervisor era tirado da tabela de Vendedor e seus detalhes.
     
  7. ASMor

    ASMor Folding Member

    explica isso a minha prof de base dados.. :P
     
  8. K0mA

    K0mA Power Member

  9. Thorak

    Thorak Power Member

    Qual é o sistema de bases de dados que estás a usar ?
     

Partilhar esta Página