Пишу модуль для cms, суть в том, что мне нужно в sql допиливать при первой установки столбец htmlcolor в таблицу product. Важно, чтоб при переустановки модуля, оно не тёрло этот столбец.
Делаю проверку через PHP, пример:
$a = $this->db->query("SELECT htmlcolor FROM product");
if (!empty($a)) {
$this->db->query("ALTER TABLE product ADD `htmlcolor` VARCHAR( 6 ) NOT NULL");
}
SELECT count(COLUMN_NAME)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'database_name' AND TABLE_NAME = 'table_name' AND COLUMN_NAME='need_column';
в ответ вернет
1 - если есть такое поле
0 - если нет такого поля