Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie kann ich Fremdschlüssel ändern?

Sie können den Schlüssel nicht in einer einzigen Anweisung ändern, siehe ALTER TABELLE Syntax, in der kein ALTER CONSTRAINT verfügbar ist.

Sie müssen 2 ALTER TABLE-Anweisungen verwenden, um das zu erreichen, was Sie wollen.

Löschen Sie den Schlüssel im ersten mit ALTER TABLE DROP FOREIGN KEY. Erstellen Sie ihn mit den neuen Spalten im zweiten mit ALTER TABLE ADD CONSTRAINT FOREIGN KEY neu.

Sie können beide in einer einzigen Transaktion kapseln, um eine atomare Änderung vorzunehmen.