2017-03-22 22 views
-3

には、次のALTER文は私の地元(XAMP)上で正常に動作しているが、私のサーバー(Debianの)上で、私はこのエラーを取得していますが存在する場合、外部キーをドロップ:MySQLの構文エラー -

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`; 

エラーを修正するにはどうすればよいですか?

+0

完全なコードを表示したり、少なくともその大部分を表示したりすると役立つかもしれません。 –

+0

私たちはあなたの心を読んだり、テレポーテーションスキルを使ってスクリーンを降りて見ることができると思いますか?あなたの好みはどれですか?あなたが待っている間、[ask]を読むことで自分を楽しませることができます。 –

+0

*質問*がありましたか? – spencer7593

答えて

0

あなたの開発環境のようなサウンドはMariaDBを実行しており、あなたのサーバはMySQLを実行しています。

MySQLはALTER TABLEステートメントのIF EXISTSをサポートしていません。

この構文はMariaDB 10.0でサポートされています。

は、それぞれの環境で実行されているバージョンを確認するために、我々は実行することができ

SHOW VARIABLES LIKE 'version' 

MariaDB https://mariadb.com/kb/en/mariadb/alter-table/

MySQLのhttps://dev.mysql.com/doc/refman/5.7/en/alter-table.html


これだった質問に答える場合、私は知りません尋ねられました...「観察された行動の説明はなんですか? (それは質問でしたか?)