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:
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.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;
¿Tiene sentido? Muchísimas gracias de antemano!!