Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jair Humberto

estrutura de dados multidimencional com mysql

Recommended Posts

Olá pessoal,

 

estou querendo criar uma tabela de usuários. Na aplicação vai ter varios módulos.

eu quero que cada usuário seja cadastrado em módulos específicos. Então a estrutura da tabela usuários precisava ser assim:

CODE

TABELA USUÁRIOS

------------------------------------------------------

| modulo A

fulano | modulo B

| modulo C

------------------------------------------------------

| modulo A

Cicrano | modulo E

| modulo G

------------------------------------------------------

entenderam? Até agora, so encontrei como armazenar dados em forma linear,

porém desta vez preciso de uma tabela dentro de outra, ou seja, dados multidimencionais, como

ocorre com os Arrays de quase todas as linguagens de programação.

 

Tem como fazer isso? Alguém pode me ajudar?

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

as arrays seriam tabelas no MYSQL. As tabelas de relacionamento funcionam assim. Você vai ter uma tabela de usuários, com seus respectivos IDs (se possível com auto-incremento). Daí você vai ter uma outra tabela de módulos, também com seus respectivos IDs, e não precisa ser de auto-incremento.

E ainda, você vai ter uma terceira tabela, que vai juntar os dados da primeira e da segunda tabela. Este tipo de relacionamento é chamado muitos-para-muitos (many-to-many em inglês). Você vai saber qual aluno tem a lista de módulos pela tabela de relacionamento.

 

tabela -> usuários

id int auto-increment

nome varchar

idade tinyint ... etc

 

tabela -> módulos

id int

nome varchar

conteúdo varchar ... etc

 

tabela -> usuarios_modulos

usuario_id int // contem o ID do usuário

modulo_id int // contem o módulo do usuário

 

Daí a tabela usuarios_módulos, ficaria assim

 

usuario_id modulo_id

1 1

1 2

1 3

 

Mostrando que o usuário de ID 1 tem 3 módulos ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.