Hola amigos:
Me gustaría saber si tiene sentido que en una tabla se pongan claves foráneas que están incluidas en la primaria. Es decir, algo como esto:
Código:
CREATE TABLE Pedido (
idPedido INT(4) NOT NULL AUTO_INCREMENT,
idCliente INT(4) NOT NULL,
cifRestaurante VARCHAR(9) NOT NULL,
primer_plato VARCHAR(50),
segundo_plato VARCHAR(50),
postre VARCHAR(50),
precio FLOAT(3,2),
PRIMARY KEY (idPedido, idCliente, cifRestaurante),
FOREIGN KEY(idCliente) REFERENCES Cliente(idCliente)
ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY(cifRestaurante) REFERENCES Restaurante(cif)
ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB;
Donde los campos "idCliente" y "cifRestaurante" que están en PRIMARY KEY, a su vez estén como FOREIGN KEY (referenciando a otras tablas de la base de datos.
¿Tiene sentido? Muchísimas gracias de antemano!!