Aus SatriaWiki
Wechseln zu: Navigation, Suche
Zeile 1: Zeile 1:
Foreign Keys auch "Fremdschlüssel" genannt, sind in MySQL nicht per phpMyAdmin (der üblichen Administrationsoberfläche für MySQL) zu konfigurieren.
+
Foreign Keys auch "Fremdschlüssel" genannt, sind in MySQL nicht per phpMyAdmin (der üblichen Administrationsoberfläche für MySQL) zu konfigurieren. Man muss die Tabelle, die Primärschlüssel aus anderen Tabellen als Fremdschlüssel referenziert, nach dem Erstellen manuell per SQL Kommando verändern, und außerdem müssen die betreffenden Tabellen InnoDB Tabellen sein. MyISAM unterstützt keine Foreign Key Constraints.
 
 
Man muss die Tabelle, die Fremdschlüssel aus anderen Tabellen referenziert, nach dem Erstellen manuell per SQL Kommando verändern.
 
  
 
Das geht so:
 
Das geht so:
Zeile 11: Zeile 9:
 
   ...;
 
   ...;
 
</pre>
 
</pre>
 +
 +
==Quellen==
 +
http://dev.mysql.com/doc/refman/5.1/de/innodb-foreign-key-constraints.html

Version vom 2. November 2011, 10:13 Uhr

Foreign Keys auch "Fremdschlüssel" genannt, sind in MySQL nicht per phpMyAdmin (der üblichen Administrationsoberfläche für MySQL) zu konfigurieren. Man muss die Tabelle, die Primärschlüssel aus anderen Tabellen als Fremdschlüssel referenziert, nach dem Erstellen manuell per SQL Kommando verändern, und außerdem müssen die betreffenden Tabellen InnoDB Tabellen sein. MyISAM unterstützt keine Foreign Key Constraints.

Das geht so:

ALTER TABLE `ReferencingTable`
  ADD CONSTRAINT `SomeConstraintName1` FOREIGN KEY (`ColumnWithForeignKey1`) REFERENCES `ReferencedTable1` (`PrimaryKey`) ON DELETE CASCADE,
  ADD CONSTRAINT `SomeConstraintName1` FOREIGN KEY (`ColumnWithForeignKey2`) REFERENCES `ReferencedTable2` (`PrimaryKey`) ON DELETE CASCADE,
  ...;

Quellen

http://dev.mysql.com/doc/refman/5.1/de/innodb-foreign-key-constraints.html