Ich versuche, eine Abfrage zu schreiben, die überprüft, ob eine bestimmte Tabelle in MySQL eine bestimmte Spalte enthält, und wenn nicht, erstellen Sie sie. Sonst nichts tun. Dies ist wirklich eine einfache Prozedur in jeder Datenbank der Enterprise-Klasse, aber MySQL scheint eine Ausnahme zu sein.
Ich dachte so etwas
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;
würde funktionieren, aber es scheitert schlecht. Gibt es einen Weg?