Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
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.
>
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.
>
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
Pra que isso precisa de CONSTRAINT? Não basta gravar as cores num campo da tabela produtos?
(Isso é sério? É trabalho de faculdade!)
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.
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
Qual é o requisito do sistema?
Veja se isso te ajuda.