【发布时间】:2013-01-01 03:47:52
【问题描述】:
IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'email_subscription' AND COLUMN_NAME = 'subscribe_all')
THEN
ALTER TABLE email_subscription
ADD COLUMN subscribe_all TINYINT(1) DEFAULT 1,
ADD COLUMN subscribe_category varchar(512) DEFAULT NULL;
我查看了大量示例。但是这个查询不起作用,我得到了错误:
ERROR 1064 (42000):您的 SQL 语法有错误;检查 与您的 MySQL 服务器版本相对应的手册 'IF NOT EXISTS (SELECT * FROM) 附近使用的语法 INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME =' 第 1 行
【问题讨论】:
-
您是在存储过程中执行此操作吗?
IF ELSE在过程或函数之外无效。 -
嘿,我明白了!我确实有一个程序覆盖在上面,但效果不佳。