· 6 years ago · Jul 17, 2019, 05:12 PM
1CREATE TABLE IF NOT EXISTS `tabla_productos` (
2 `id_producto` INT(11) NOT NULL AUTO_INCREMENT,
3 `nombre` VARCHAR(45) NOT NULL,
4 `descripcion` VARCHAR(255) NOT NULL,
5 `precio` DOUBLE NOT NULL,
6 `marca` VARCHAR(50) NOT NULL,
7 `categoria` INT(11) NOT NULL,
8 `stock` INT(6) NOT NULL,
9 `id_imagen` INT(11) NOT NULL,
10 PRIMARY KEY (`id_producto`, `id_imagen`, `categoria`),
11 UNIQUE INDEX `id_productos_UNIQUE` (`id_producto` ASC),
12 INDEX `categoria_idx` (`categoria` ASC),
13 CONSTRAINT `categoria`
14 FOREIGN KEY (`categoria`)
15 REFERENCES `tabla_categorias` (`id_categoria`)
16 ON DELETE NO ACTION
17 ON UPDATE NO ACTION)
18ENGINE = InnoDB;
19
20ALTER TABLE `tabla_productos` ADD `camara_prinicpal` VARCHAR(10) NOT NULL;
21ALTER TABLE `tabla_productos` ADD `memoria_ram` VARCHAR(10) NOT NULL;
22ALTER TABLE `tabla_productos` ADD `memoria_rom` VARCHAR(10) NOT NULL;
23ALTER TABLE `tabla_productos` ADD `display` VARCHAR(50) NOT NULL;
24ALTER TABLE `tabla_productos` ADD `procesador` VARCHAR(50) NOT NULL;
25ALTER TABLE `tabla_productos` ADD `sistema_operativo` VARCHAR(50) NOT NULL;
26ALTER TABLE `tabla_productos` ADD `estado` VARCHAR(20) NOT NULL;
27
28CREATE TABLE IF NOT EXISTS `tabla_imagenes` (
29 `id_imagen` INT(11) NOT NULL,
30 `url_imagen` VARCHAR(255) NOT NULL,
31 `id_producto_imagen` INT(11) NOT NULL AUTO_INCREMENT,
32 CONSTRAINT `id_producto_imagen`
33 FOREIGN KEY (`id_producto_imagen`)
34 REFERENCES `tabla_productos` (`id_producto`)
35 ON DELETE NO ACTION
36 ON UPDATE NO ACTION)
37ENGINE = InnoDB;
38
39SELECT producto.id_producto, producto.nombre, producto.id_imagen,
40 imagen.id_producto_imagen, imagen.url_imagen
41
42 FROM tabla_productos producto JOIN tabla_imagenes imagen
43 ON producto.id_imagen = (SELECT imagen.id_producto_imagen FROM tabla_imagenes LIMIT 1);