Array
(
)

Categoria com várias subcategorias

Pgnt
   - 31 mai 2008

Olás

Tenho uma categoria com 3 subcategorias, correndo o risco de ter mais subcategorias futuramente.

A dúvida é; terei mesmo que fazer as tabelas de subcategorias (com as chaves estrangeiras apontando pra categoria pai da subcategoria) ou, por acaso existe uma forma mais flexível de modelar isso?

valeu
abs

Emerson
   - 31 mai 2008

faça com apenas uma tabela, com um campo ´Parente´, que diz qual é a categoria superior.

Pgnt
   - 03 jun 2008

Ok, obrigado!

Essa solução é muito boa só que para acessar vôs e netos (ou, bisavôs/bisnetos) de categorias precisarei fazer criar uma função para a query e fazer alguma recursão (select dentro de select) pra isso, para ir retornando os IDs_PARENTs correto?! (ou existe solução mais otimizada?)

abs

Emerson
   - 03 jun 2008

é isso mesmo. você precisará de uma stored procedure para isso.

mas se você fizer um tratamento num programa (como a exibição numa TreeView, por exemplo) nem é necessário essa query/procedure recursiva.

Pgnt
   - 04 jun 2008

Entendi, considerando uma regra de negócio e não de persistência, o ideal é que a aplicação cuide disso mas, pode ser que as interrupções/acessos ao banco aumentem... vou ver como fica melhor para o caso.

Obrigado novamente!