Heim  >  Artikel  >  Datenbank  >  Warum erhalte ich den MySQL-Fehlercode Nr. 1089: Falscher Präfixschlüssel?

Warum erhalte ich den MySQL-Fehlercode Nr. 1089: Falscher Präfixschlüssel?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-30 17:00:03218Durchsuche

Why Am I Getting MySQL Error Code #1089: Incorrect Prefix Key?

MySQL-Fehlercode #1089: Falscher Präfixschlüssel

Wenn man auf den rätselhaften Fehlercode #1089 von MySQL stößt, ist man möglicherweise ratlos seine Bedeutung. Dieser Fehler tritt auf, wenn ein ungeeigneter Präfixschlüssel definiert wird, insbesondere wenn versucht wird, ein Präfix für einen Nicht-String-Datentyp zu verwenden oder wenn die definierte Längenbeschränkung für den Schlüsselteil überschritten wird.

In Ihrem speziellen Fall ist das Problem Ein Teil der Abfrage scheint wie folgt zu sein:

PRIMARY KEY (`movie_id`(3))

Durch die Angabe von (3) neben movie_id in der Primärschlüsseldefinition richten Sie versehentlich einen Unterteilschlüssel für die ersten 3 Bytes ein der movie_id-Spalte. Dieser Ansatz ist nur für Zeichenfolgendatentypen möglich, nicht für Ganzzahlen wie movie_id.

Um dieses Problem zu beheben und den Fehler zu beseitigen, sollten Sie die Primärschlüsseldefinition wie folgt ändern:

PRIMARY KEY (`movie_id`)

By Wenn Sie das Suffix (3) weglassen, erstellt MySQL einen Primärschlüssel für das gesamte Feld „movie_id“ ohne Längenbeschränkungen. Dies ist der geeignete Ansatz für einen ganzzahligen Datentyp wie movie_id.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich den MySQL-Fehlercode Nr. 1089: Falscher Präfixschlüssel?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn