mysql 添加列的sql
要对表进行添加一列,但是不确定表是否存在该列,因此要在添加之前进行列是否存在的判断。
写了以下语句一直提示错误。请求大牛帮助!!
SELECT IFNULL(column_name, '') INTO @colName
FROM information_schema.columns
WHERE table_name = 'my_table'
AND column_name = 'my_column';
IF @colName = '' THEN
ALTER TABLE cmt.`my_table` ADD COLUMN `my_column` VARCHAR(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'available cap' ;
ELSE
END IF;
提示错误:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF @colName = '' THEN
ALTER TABLE cmt.`oam_harddiskparam` ADD COLUMN `Disk' at line 1
一直是提示红色的行有错误,但是手动执行那行语句是没有问题的。