DatabaseTableIndex::drop

  • Ich habe folgende Tabelle, die ich über das database-PIP gerne ändern würde:


    Konkret geht es darum, den UNIQUE Index userID zu droppen und einen neuen UNIQUE Index über 3 Spalten zu setzen. Folgende database-PIP:


    ergibt aber folgenden Fehler:

    Der Fehler tritt auch auf, wenn ich den neuen UNIQUE und den Foreign Key weg lasse.

    • Official Post

    Prüfe bitte, ob abseits des Unique-Key bereits ein Index auf der Spalte liegt. MySQL legt für jeden Foreign Key einen Index auf der Spalte an, falls aber bereits ein passender Key existiert, wird der einfach mit verwendet. Es darf keinen Foreign Key ohne Index geben, wenn das also der Fall ist, musst du wie folgt vorgehen:

    1. Foreign Key entfernen
    2. Index entfernen
    3. Foreign key setzen
    4. Neuen Index setzen

    Alexander Ebert
    Senior Developer WoltLab® GmbH

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!