Relaciones

Crear

Las relaciones 'primary key' y 'foreign key' se pueden establecer a la vez que creas una tabla

CREATE TABLE pedidos (
   id INT NOT NULL AUTO_INCREMENT,
   fecha DATE NOT NULL,
   producto_id INT NOT NULL,
   cantidad INT NOT NULL,
   PRIMARY KEY (id),
   FOREIGN KEY (producto_id) REFERENCES productos(id)
);

Añadir

Si se desea agregar una nueva relación a una tabla que ya existe, se utiliza el comando ALTER TABLE, especificando la tabla que se va a modificar, seguido de ADD CONSTRAINT y la especificación de la clave foránea

ALTER TABLE comentarios
ADD CONSTRAINT fk_comentarios_articulos
FOREIGN KEY (id_articulo)
REFERENCES articulos(id_articulo);

Modificar

Si se desea modificar una relación existente, se utiliza el comando ALTER TABLE, especificando la tabla que se va a modificar, seguido de DROP CONSTRAINT para eliminar la restricción existente y ADD CONSTRAINT para agregar una nueva restricción.

-- eliminar restriccion anterior
ALTER TABLE comentarios
DROP CONSTRAINT fk_comentarios_usuarios;

--añadir la nueva
ALTER TABLE comentarios
ADD CONSTRAINT fk_comentarios_usuarios_mod
FOREIGN KEY (id_usuario)
REFERENCES usuarios(id_usuario);

Eliminar

Si se desea eliminar una relación existente, se utiliza el comando ALTER TABLE, especificando la tabla que se va a modificar, seguido de DROP CONSTRAINT y el nombre de la restricción que se va a eliminar.

ALTER TABLE comentarios
DROP CONSTRAINT fk_comentarios_articulos;

Last updated