私のデータベースにはfruit
というテーブルがあります:
fruit
_+-------------+
| id | name |
+ ----------- +
| 1 | Apple |
| 2 | orange |
| 3 | banana |
| 4 | grape |
+-------------+
_
id
は主キーです。テーブルにエントリを追加したいのですが、エントリがまだ存在しない場合のみです。
_IF NOT EXISTS (SELECT name FROM fruit WHERE name = 'mango')
INSERT INTO fruit (name)
VALUES ('mango')
_
Sequel ProというSQL GUIアプリを使用しますが、このクエリエラーは次のようになります。
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 NOT EXISTS (SELECT name FROM fruit WHERE name = 'mango') INSERT INTO frui' at line 1
怪しい何かが起こっているかもしれません。クエリは_INSERT INTO frui
_で停止している可能性があります。アプリに問題がありますか?それとも私のクエリは間違っていますか?
使用する必要があります
ALTER TABLE fruit ADD UNIQUE (name)
そして使用する
INSERT IGNORE INTO fruit (name) VALUES ('mango')