Я хочу добавить столбец в таблицу, но не хочу, чтобы он потерпел неудачу, если он уже был добавлен в таблицу.Как мне этого добиться?
# Add column fails if it already exists ALTER TABLE `TableName` ADD `ColumnName` int(1) NOT NULL default '0';
Используйте следующее в хранимой процедуре:
IF NOT EXISTS( SELECT NULL FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name = 'tablename' AND table_schema = 'db_name' AND column_name = 'columnname') THEN ALTER TABLE `TableName` ADD `ColumnName` int(1) NOT NULL default '0'; END IF;
Ссылка: