sql - ejemplos - ¿Cómo edito una tabla para habilitar CASCADE DELETE?
on delete cascade sql ejemplos (3)
Esta es la forma en que agregaría la característica "eliminar en cascada" a una clave externa existente en SQL Server Management Studio .
Primero, encuentre su clave externa y abra "DROP y CREAR A" en una nueva ventana de consulta.
Luego, simplemente agregue " ON DELETE CASCADE
" al comando " ADD CONSTRAINT
":
Luego simplemente presione el botón "Ejecutar" para ejecutar la consulta.
Trabajo hecho !
Tengo una tabla que representa a los usuarios. Cuando se elimina un usuario obtengo:
La instrucción DELETE entró en conflicto con la restricción REFERENCE
Al parecer, CASCADE DELETE
no es tan fácil como me imaginaba en SQL Server, y la opción debe agregarse a la tabla.
El problema es: no puedo averiguar cómo agregar la opción CASCADE DELETE
.
Estoy usando: SQL Server 2008 . ¿Alguna idea de como hacer esto?
Google ALTER TABLE DROP CONSTRAINT
, luego ALTER TABLE ADD CONSTRAINT
:
Aquí hay un ejemplo rápido:
CREATE TABLE A
(
ID INTEGER NOT NULL UNIQUE
);
CREATE TABLE B
(
ID INTEGER NOT NULL UNIQUE
CONSTRAINT fk__B__A
REFERENCES A (ID)
);
-- Oops! Forgot the CASCADE referential actions.
-- DROP the constraint then recreate it:
ALTER TABLE B DROP
CONSTRAINT fk__B__A;
ALTER TABLE B ADD
CONSTRAINT fk__B__A
FOREIGN KEY (ID)
REFERENCES A (ID)
ON DELETE CASCADE
ON UPDATE CASCADE;
Lea este artículo de Microsoft primero. Leeme Utilizo la GUI durante el diseño, así que aquí hay una imagen de cómo se selecciona en SSMS. La sintaxis agregada a la clave externa es "ON DELETE CASCADE"