Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá.
Estou com um problema para modelar, que tem me travado no desenvolvimento do sistema. O problema está basicamente no impacto da performance, se modelar da forma clássica, ao listar as pastas e documentos, pois preciso limitar o acesso até mesmo para o conhecimento de sua existência.
Objetos:
*Pastas(ou Projetos)
*Documentos
*Equipes
*Usuários
Direitos (Listar,Abrir etc)
*=Tabelas já definidas
Relações:
Pastas 1-->N Documentos
Equipes N<-->N Usuários
Espero que isso fique claro:
Usuário -> direitos -> Pasta
Usuário -> direitos -> Documento
Equipe -> direitos -> Pasta
Equipe -> direitos -> Documento
Gostaria de saber a abordagem dos colegas ao problema:
1. Uma só tabela com campos distinguindo os objetos Origem e Destino, o que exigiria 4 campos: IDOrigem, IDDestino, TipoOrigem, TipoDestino. Blergh!!!!
2. Uma tabela para cada relacionamento: Usuário_Pasta, Usuário_Documento, Equipe_Pasta, Equipe_Documento. Considero a forma clássica, porém, é difícil de efetuar consulta diretamente no banco, sem impactar.
3. Campos texto que concatenam usuários e Equipes. Nem vou comentar.
4. Forma mágica?
1. Na forma 2, do tópico anterior, costumo usar SHAPE/APPEND, tanto no Access quanto no SQL Server, pois ainda mantém uma boa performance. Me perdoe os puristas do SQL!
2. Listar todos os documentos encontrados, e consultar os acessos 1 a 1. Isso é triste!!!!
Lembrando que nas pesquisas por documentos, é possível listar milhares de documentos. E esse é o grande problema.
Obrigado.
Carregando comentários...