我想現有的數據庫和表在這SQLite的查詢獨特:只有插入表中,如果值是在非唯一的行
INSERT INTO Actions (guide_id, user_id, action_type, action_date, article_id, guide_name) VALUES (33, 1199180, 2, 1355829894, 2457, 'Amsterdam');
這工作,但如果我跑同樣的事情它會再次插入不需要的重複值。
這是表的樣子:
這裏的問題是,article_id的不是唯一的。 我希望插入僅在article_id在列中不存在時運行。
理論上我想是這樣的:
IF x DOES NOT EXISTS IN article_id DO (INSERT INTO Actions (guide_id, user_id, action_type, action_date, article_id, guide_name) VALUES (33, 1199180, 2, 1355829894, 2457, 'Amsterdam'));
這可能嗎?
我是否可以在不刪除表格或創建其他表格的情況下改變article_id的唯一性? –
確定你可以嘗試'在Actions(article_id)上創建唯一索引unique_name;' – Kuf
創建唯一索引實際上並不改變表格,但它創建了一個索引。有沒有辦法改變表格以使article_id獨一無二? –