Fehlende Spalten in MySQL-Tabellen suchen und erstellen
In MySQL ist es nicht ungewöhnlich, zu überprüfen, ob eine bestimmte Spalte in einer Tabelle vorhanden ist und wenn nicht, erstellen Sie es. Während dies in vielen anderen Datenbanken ein unkomplizierter Vorgang ist, weist MySQL seine eigenen Nuancen auf.
Der bereitgestellte Abfrageversuch:
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;
schlägt aufgrund der Einschränkungen von MySQL fehl. Es gibt jedoch eine zuverlässige Methode zum Überprüfen der Spaltenexistenz:
SHOW COLUMNS FROM `table` LIKE 'fieldname';
In PHP:
$result = mysql_query("SHOW COLUMNS FROM `table` LIKE 'fieldname'"); $exists = (mysql_num_rows($result)) ? TRUE : FALSE;
Wenn die Abfrage Zeilen zurückgibt, ist die Spalte vorhanden; andernfalls ist dies nicht der Fall. Mit diesen Informationen können Sie dann nach Bedarf mit der Erstellung der Spalte fortfahren.
Das obige ist der detaillierte Inhalt vonWie kann man in MySQL-Tabellen zuverlässig nach fehlenden Spalten suchen und diese hinzufügen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!