Ir para conteúdo

POWERED BY:

Arquivado

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

GF - Design Studio

estrutura tabela

Recommended Posts

Boa tarde pessoal,

Estou com uma dúvida e preciso da ajuda de vocês... vamos lá...

 

Tenho 2 tabelas (Produtos / Cores)

1 produto pode ter várias cores, como associar isso na tabela?

 

Estrutura das tabelas:

 

CREATE TABLE IF NOT EXISTS `produtos` (
 `id_produto` int(11) NOT NULL AUTO_INCREMENT,
 `id_categoria` varchar(200) NOT NULL,
 `id_subcategoria` varchar(200) NOT NULL,
 `nome_produto` varchar(300) NOT NULL,
 `descricao_produto` text NOT NULL,
 `imagem_produto` varchar(200) NOT NULL,
 `valor_produto` varchar(200) NOT NULL,
 `status_produto` int(11) NOT NULL,
 `aparecer_produto_home` int(11) NOT NULL,
 PRIMARY KEY (`id_produto`)
) ENGINE=MyISAM

 

CREATE TABLE IF NOT EXISTS `cores` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `id_produto` varchar(200) NOT NULL,
 `cor` varchar(200) NOT NULL,
 `imagem` varchar(200) NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=MyISAM

 

No aguardo.

Grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja se isso te ajuda.

 

ALTER TABLE `cores`

ADD CONSTRAINT `FK_produtos_cores` FOREIGN KEY (`id_produto`) REFERENCES `produtos` (`id_produto`) ON DELETE NO ACTION ON UPDATE NO ACTION;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja se isso te ajuda.

 

ALTER TABLE `cores`

ADD CONSTRAINT `FK_produtos_cores` FOREIGN KEY (`id_produto`) REFERENCES `produtos` (`id_produto`) ON DELETE NO ACTION ON UPDATE NO ACTION;

 

Fábio o que estou dizendo é o seguinte:

O cliente vai cadastrar as cores na tabela de cores, digamos que ele cadastrou um total de 20 cores.

 

Depois ele vai cadastrar um produto:

Ele seleciona 10 cores para este produto...

 

Como e onde devo armazenar o valor de cores para este produto?

 

No aguardo.

Grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fábio o que estou dizendo é o seguinte:

O cliente vai cadastrar as cores na tabela de cores, digamos que ele cadastrou um total de 20 cores.

 

Depois ele vai cadastrar um produto:

Ele seleciona 10 cores para este produto...

 

Como e onde devo armazenar o valor de cores para este produto?

 

No aguardo.

Grato.

 

Se entendi direito

tem que fazer uma tabela de agregação

 

Exemplo

Nome da tabela: cores_produtos

campo1: cod_cor

campo2: cod_produto

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pra que isso precisa de CONSTRAINT? Não basta gravar as cores num campo da tabela produtos?

 

(Isso é sério? É trabalho de faculdade!)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como a cor entra na história, é uma característica simples do produto (Verde,Branco,Azul) etc ?

 

É alguma coisa um pouco mais complexa relativa á cada produto em si (Azul Turquesa,Verde Escuro) ? cada produto tem uma lista própria de cores, mas sem nada mais complexo.

 

É uma padronização que identifica o produto de forma especial ? Por exemplo, industria de tintas, produtos de construção tem uma codificação única para cada cor.

 

Um padrão como o RGB ?

 

A modelagem depende do que se vai tratar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola GF,

 

Se N produtos tem N cores, você terá que fazer uma tabela intermediária com o id_produto e id_cor. Se as cores estiverem atreladas ao cliente, você terá que relacionar o cliente_id nessa tabela também.

 

A tabela cores seria uma auxiliar onde teria uma lista com todas as cores possíveis de preferência em Hexadecimal (#CC00CC por exemplo).

 

A tabela produtos você deixaria como esta ( só acredito que o campo "imagem" que esta na tabela cores, deveria estar nessa tabela - imagem é igual a imagem do produto certo?)

 

e a tabela intermediária chamada "produtos_cores" contendo (id_produto, id_cor)

 

:grin:

 

+- isso.

 

flw

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.