
Error en Consulta
Publicado por Rodrigo (3 intervenciones) el 02/06/2015 22:53:15
Hola tengo que hacer una consulta de estas tres tablas:
Tabla productos:
Tabla marcas:
Tabla familias:
Esta es la consulta que ejecuto:
Me da error y no se porque, que hago mal?
Tabla productos:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
CREATE TABLE `productos` (
`id_producto` INTEGER NOT NULL AUTO_INCREMENT,
`referencia` VARCHAR(15),
`id_marca` INTEGER COMMENT "Relación con marcas",
`id_familia` INTEGER COMMENT "Relación con familias",
`descripcion_1` VARCHAR(50) NOT NULL UNIQUE COMMENT "Español",
`descripcion_2` VARCHAR(50) UNIQUE COMMENT "Inglés",
`descripcion_3` VARCHAR(50) UNIQUE COMMENT "Alemán",
`descripcion_4` VARCHAR(50) UNIQUE COMMENT "Francés",
`descripcion_5` VARCHAR(50) UNIQUE COMMENT "Portugués",
`descripcion_6` VARCHAR(50) UNIQUE COMMENT "Italiano",
`ean13` INTEGER(13),
`pvp` NUMERIC(10,3),
`imagen1` VARCHAR(255),
`imagen2` VARCHAR(255),
`observaciones` VARCHAR(255),
PRIMARY KEY (`id_producto`),
FOREIGN KEY (`id_marca`) REFERENCES `marcas` (`id_marca`) ON DELETE RESTRICT ON UPDATE CASCADE,
FOREIGN KEY (`id_familia`) REFERENCES `familias` (`id_familia`) ON DELETE RESTRICT ON UPDATE CASCADE
) ENGINE=innodb DEFAULT CHARSET=utf8;
SET autocommit=1;
Tabla marcas:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
CREATE TABLE `marcas` (
`id_marca` INTEGER NOT NULL AUTO_INCREMENT,
`marca` VARCHAR(40) NOT NULL UNIQUE,
`web` VARCHAR(50) UNIQUE,
`tarifa` VARCHAR(7),
`logo` VARCHAR(255) UNIQUE,
PRIMARY KEY (`id_marca`)
) ENGINE=innodb DEFAULT CHARSET=utf8;
SET autocommit=1;
INSERT INTO `marcas` (`marca`, `web`) VALUES
("NGK", "www.ngk-europe.com"),("Amolux", "www.amolux.net"),("EBC", "www.ebcbrakes.com"),("Vicma", "www.vicma.es"),("Gates", "www.gates.com"),
("Maxxis", NULL),("Piaggio", NULL),("FAG", NULL),("Michelin", NULL),("Barikit", NULL),("Bridgestone", NULL),("Metrakit", NULL),("Honda", NULL),
("JM Products", NULL),("Magura", NULL),("Vee Rubber", NULL),("Meteor", NULL),("Athena", "www.athenaiberica.es"),("RMS", "www.rms.it"),
("Pirelli", "www.pirelli.com"),("6-On", NULL),("Hiflofiltro", "www.hiflofiltro.com");
Tabla familias:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
CREATE TABLE `familias` (
`id_familia` INTEGER NOT NULL AUTO_INCREMENT,
`familia_1` VARCHAR(40) NOT NULL UNIQUE COMMENT "Español",
`familia_2` VARCHAR(40) UNIQUE COMMENT "Inglés",
`familia_3` VARCHAR(40) UNIQUE COMMENT "Alemán",
`familia_4` VARCHAR(40) UNIQUE COMMENT "Francés",
`familia_5` VARCHAR(40) UNIQUE COMMENT "Portugués",
`familia_6` VARCHAR(40) UNIQUE COMMENT "Italiano",
PRIMARY KEY (`id_familia`)
) ENGINE=innodb DEFAULT CHARSET=utf8;
SET autocommit=1;
INSERT INTO `familias` (`familia_1`) VALUES
("Bujía"),("Pastillas de freno"),("Reflectante"),("Junta"),("Batería"),("Actuador eléctrico"),("Limitador"),("Kit de cilindro"),
("Aceite de caja de cambios"),("Aceite de mezcla"),("Aceite de motor"),("Maneta"),("Cable de velocímetro"),("Kit de bomba de agua"),("Piloto Trasero"),("Bombilla"),
("Disco de freno"),("Zapatas de freno"),("Sonda Lambda"),("Kit de discos de embrague"),("Correa de transmisión"),("Correa de bomba de aceite");
Esta es la consulta que ejecuto:
1
2
3
Select * referencia,marca,familia,descripcion_1,ean13,pvp
FROM productos, marcas, familias
WHERE productos.id_marca=marcas.id_marca and productos.id_familia=familias.id_familia
Me da error y no se porque, que hago mal?
Valora esta pregunta


0