1
をの一意の行にしようとしていましたが、一意の行がすでに存在する場合、単に挿入を無視してエラーを返しません。MySQL - 列はすでに存在します:1060重複する列名 '1'
なぜ、クエリに間違いがありますか?
INSERT INTO hashtag_mapping (user_id, cid, hashtag_id, date_created, date_modified)
SELECT * FROM (SELECT 1, 8923, 1, NOW(), CURRENT_TIMESTAMP) AS tmp
WHERE NOT EXISTS (
SELECT user_id, cid, hashtag_id
FROM hashtag_mapping
WHERE user_id = 1
AND cid = 8923
AND hashtag_id = 1
) LIMIT 1;
一意のキー:私は、MySQLから受け取るunique_mapping (user_id, cid, hashtag_id), Unique
次のエラー:
列がすでに存在している:1060重複した列名を '1'
そして、テーブルデザインが役に立ったら...
id user_id cid hashtag_id date_created date_modified
------ ------- ---------- ---------- ------------------- ---------------------
1 1 8644 1 2016-03-23 15:19:54 2016-04-06 11:39:32
2 1 8644 2 2016-03-23 15:19:54 2016-04-06 11:39:34
3 1 8664 3 2016-03-25 17:02:32 2016-04-06 11:39:35
4 1 8664 4 2016-03-25 17:02:32 2016-04-06 11:39:36
とても簡単です!大いに感謝する :] – tfont