web-dev-qa-db-fra.com

Comment modifier la contrainte

SQL Comment modifier la contrainte

Ci-dessous 1 de ma contrainte

CONSTRAINT ACTIVEPROG_FKEY1 FOREIGN KEY(ActiveProgCode) REFERENCES PROGRAM(ActiveProgCode),

Je veux ajouter dans

ON DELETE CASCADE

à la contrainte ci-dessus.

Comment puis-je modifier cette contrainte existante ACTIVEPROG_FKEY1 et ajouter

ON DELETE CASCADE

contraindre ACTIVEPROG_FKEY1

Considérons que ACTIVEPROG_FKEY1 est à la table ACTIVEPROG

77
user1777711

Vous ne pouvez jamais modifier les contraintes, mais vous pouvez les supprimer puis les recréer.

Avoir regardé ça

ALTER TABLE your_table DROP CONSTRAINT ACTIVEPROG_FKEY1;

puis recréez-le avec ON DELETE CASCADE comme ça

ALTER TABLE your_table
add CONSTRAINT ACTIVEPROG_FKEY1 FOREIGN KEY(ActiveProgCode) REFERENCES PROGRAM(ActiveProgCode)
    ON DELETE CASCADE;

espérons que cette aide

122
user1819920

Non, nous ne pouvons pas modifier la contrainte, la seule chose que nous puissions faire est de la supprimer et de la recréer.

ALTER TABLE [TABLENAME] DROP CONSTRAINT [CONSTRAINTNAME]

Contrainte de clé étrangère

Alter Table Table1 Add Constraint [CONSTRAINTNAME] Foreign Key (Column) References Table2 (Column) On Update Cascade On Delete Cascade

Contrainte de clé primaire

Alter Table Table add constraint [Primary Key] Primary key(Column1,Column2,.....)
10
andy