Heim >Datenbank >MySQL-Tutorial >Wie kann ich zuverlässig das Vorhandensein von Spalten in einer MySQL-Tabelle überprüfen?

Wie kann ich zuverlässig das Vorhandensein von Spalten in einer MySQL-Tabelle überprüfen?

Linda Hamilton
Linda HamiltonOriginal
2024-12-18 03:07:10533Durchsuche

How Can I Reliably Check for Column Existence in a MySQL Table?

Bestimmen der Spaltenexistenz in einer MySQL-Tabelle

In MySQL kann die Überprüfung der Existenz einer Spalte in einer Tabelle im Vergleich dazu etwas verwirrend sein andere Datenbanksysteme. Die häufig versuchte Methode:

IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.COLUMNS 
           WHERE TABLE_NAME='prefix_topic' AND column_name='topic_last_update') 
BEGIN 
ALTER TABLE `prefix_topic` ADD `topic_last_update` DATETIME NOT NULL;
UPDATE `prefix_topic` SET `topic_last_update` = `topic_date_add`;
END;

scheint fehlzuschlagen.

Eine zuverlässige Lösung besteht jedoch in der Verwendung des Befehls SHOW COLUMNS:

SHOW COLUMNS FROM `table` LIKE 'fieldname';

PHP-Implementierung

Um die Spaltenexistenz in PHP zu bestimmen, können Sie die verwenden mysql_num_rows()-Funktion:

$result = mysql_query("SHOW COLUMNS FROM `table` LIKE 'fieldname'");
$exists = (mysql_num_rows($result))?TRUE:FALSE;

Mit diesem Ansatz können Sie schnell prüfen, ob eine bestimmte Spalte in einer MySQL-Tabelle vorhanden ist, und so die ordnungsgemäße Behandlung nicht vorhandener Spalten sicherstellen.

Das obige ist der detaillierte Inhalt vonWie kann ich zuverlässig das Vorhandensein von Spalten in einer MySQL-Tabelle überprüfen?. 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