MySQL语法错误-删除外键(如果存在)

MySQL语法错误-删除外键(如果存在),mysql,foreign-keys,syntax-error,Mysql,Foreign Keys,Syntax Error,以下ALTER语句在我的本地xamp上运行良好,但在我的服务器Debian上,我遇到了以下错误: 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 EXISTS `foreign_key1`' at line 1 以下是查询: ALTER TABLE `table`

以下ALTER语句在我的本地xamp上运行良好,但在我的服务器Debian上,我遇到了以下错误:

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 EXISTS `foreign_key1`' at line 1 
以下是查询:

ALTER TABLE `table` DROP FOREIGN KEY IF EXISTS `foreign_key1`;

如何修复错误?

听起来您的开发环境正在运行MariaDB,而您的服务器正在运行MySQL

MySQL不支持ALTER TABLE语句中存在的IF

MariaDB 10.0支持这种语法

为了确认在每个环境中运行的版本,我们可以执行

SHOW VARIABLES LIKE 'version'
马里亚布

MySQL


我不知道这是否回答了被问到的问题。。。对观察到的行为有什么解释?这就是问题所在吗

如果你展示完整的代码,或者至少是其中的大部分代码,也许会有所帮助。你希望我们使用我们的通灵能力来阅读你的思想,或者我们的心灵运输技能来拜访你并看到你的屏幕吗?你喜欢哪一种?当你等待的时候,你可以通过阅读来娱乐自己。这里有一个功能请求,如果MySQL中存在外键,那么它将被关闭,因为无法修复