Heim >Datenbank >MySQL-Tutorial >Die Schlüsselspalte „Spaltenname' ist in der Tabelle nicht vorhanden – So beheben Sie den MySQL-Fehler: Die Schlüsselspalte ist in der Tabelle nicht vorhanden
Titel: So beheben Sie den MySQL-Fehler: Die Schlüsselspalte ist in der Tabelle nicht vorhanden, es sind spezifische Codebeispiele erforderlich
Text:
Bei der Verwendung einer MySQL-Datenbank für Entwicklung oder Verwaltung treten häufig verschiedene Fehler auf. Einer der häufigsten Fehler besteht darin, dass die Schlüsselspalte nicht in der Tabelle vorhanden ist, d. h. die Schlüsselspalte „Spaltenname“ ist nicht in der Tabelle vorhanden. Dieser Fehler tritt normalerweise auf, wenn Indizes oder Fremdschlüssel zum Ausführen von Abfragen oder Vorgängen verwendet werden. In diesem Artikel wird ausführlich erläutert, wie dieser Fehler behoben werden kann, und es werden konkrete Codebeispiele bereitgestellt.
Zuerst müssen wir die Ursache dieses Fehlers verstehen. Dieser Fehler tritt normalerweise aufgrund der folgenden Situationen auf:
Als nächstes werden wir anhand dieser Gründe spezifische Codebeispiele bereitstellen, um diesen Fehler zu beheben.
CREATE TABLE table_name ( column1 INT, column2 VARCHAR(50), column3 INT ); SELECT * FROM table_name WHERE column4 = 1;
Im obigen Code versuchen wir, einen nicht vorhandenen Spaltennamen „Spalte4“ für die Abfrage zu verwenden, was einen Fehler auslöst, der besagt, dass die Schlüsselspalte in der Tabelle nicht vorhanden ist. Die Lösung für diesen Fehler besteht darin, die Schreibweise des Spaltennamens zu überprüfen und ihn zu korrigieren.
CREATE TABLE table_name ( column1 INT, column2 BINARY(16), column3 INT ); CREATE INDEX index_name ON table_name (column1, column2);
Im obigen Code versuchen wir, einen Index index_name zu erstellen, der eine Spalte spalte1 vom Typ INT und eine Spalte spalte2 vom Typ BINARY(16) enthält. Aufgrund einer Nichtübereinstimmung des Datentyps wird ein Fehler ausgelöst, der besagt, dass die Schlüsselspalte nicht in der Tabelle vorhanden ist. Die Lösung für diesen Fehler besteht darin, sicherzustellen, dass die beim Erstellen des Index verwendeten Spalten mit dem Indextyp übereinstimmen.
CREATE TABLE table1 ( column1 INT PRIMARY KEY, column2 INT, column3 INT ); CREATE TABLE table2 ( column4 INT, FOREIGN KEY (column4) REFERENCES table1(column5) );
Im obigen Code versuchen wir, einen Fremdschlüssel in Tabelle 2 zu erstellen, um Spalte 4 mit Spalte 5 von Tabelle 1 zu verknüpfen. Da jedoch die Spalte „Spalte5“ in der Tabelle „Tabelle1“ nicht vorhanden ist, wird ein Fehler ausgelöst, der besagt, dass die Schlüsselspalte in der Tabelle nicht vorhanden ist. Die Lösung für diesen Fehler besteht darin, beim Erstellen des Fremdschlüssels sicherzustellen, dass die mit dem Fremdschlüssel verknüpfte Spalte in der entsprechenden Tabelle vorhanden ist.
Zusammenfassend gilt: Wenn wir auf eine MySQL-Fehlermeldung stoßen, dass die Schlüsselspalte nicht in der Tabelle vorhanden ist, müssen wir die Schreibweise des Spaltennamens, die Übereinstimmung des Datentyps und die Integrität der Tabellenstruktur überprüfen. Dieser Fehler kann durch entsprechende Korrekturen je nach Situation behoben werden. Gleichzeitig wird empfohlen, bei der Entwicklung oder Verwaltung von Datenbanken gute Namenskonventionen und Datentypkonsistenz einzuhalten, um diesen Fehler zu vermeiden.
Das obige ist der detaillierte Inhalt vonDie Schlüsselspalte „Spaltenname' ist in der Tabelle nicht vorhanden – So beheben Sie den MySQL-Fehler: Die Schlüsselspalte ist in der Tabelle nicht vorhanden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!