如果在MariaDB中存在DROP COLUMN - 语法错误

时间:2017-04-04 14:02:39

标签: sql mariadb

有人可以解释一下,我的SQL查询有什么问题吗?

ALTER TABLE tableName DROP COLUMN IF EXISTS columnName;

MariaDB给了我这个错误:

#1064 - You have an error in your SQL syntax; check the manual that
corresponds to your MariaDB server version for the right syntax 
to use near 'IF EXISTS columnName' at line 1 

尝试了很多语法修改,但没有正面结果。

2 个答案:

答案 0 :(得分:1)

我在dbfiddle.uk(MariaDB 10.2 RC)上进行了测试,但它确实有效。您确定您的MariaDB版本(SELECT VERSION();)以及该版本中是否存在该命令? (我想它直到MARIADB 10才支持)

CREATE TABLE T1 (ID INT, DESCR VARCHAR(20));
INSERT INTO T1 VALUES (1, 'Test');
SELECT * FROM T1;
ALTER TABLE T1 DROP COLUMN IF EXISTS XXX; /* no error */
SELECT * FROM T1;
ALTER TABLE T1 DROP COLUMN IF EXISTS DESCR; /* column dropped*/
SELECT * FROM T1;

答案 1 :(得分:0)

我今天ALTER TABLE table_name DROP IF EXISTS column_name;做过,而且效果很好:P

MariaDB 10.0