Dies ist das erste Mal, dass ich SQL verwende und versuche, Daten nur einzufügen, wenn der Eintrag nicht in der Datenbank vorhanden ist. Mein SQL sieht so aus:
insert_query = ("IF NOT EXISTS ( SELECT 1 FROM `follows` WHERE `id_user` = '"+user_id+"' AND `id_folgt` = '"+folgt_id+"') BEGIN INSERT INTO `follows`(`id_user`, `id_folgt`) VALUES ('"+user_id+"','"+folgt_id+"')END;")
Leider ist ein Syntaxfehler aufgetreten
如果您只想在表中不存在该行时插入行,那么您有很多选择:
通过表达式创建唯一索引,用于检测是否存在。如果该表达式的值已存在于表中,服务器将禁止插入。
使用 INSERT .. ON DUPLICATE KEY UPDATE 和假 UPDATE 操作(例如,
id = id
,其中id
是主键)。根据 WHERE NOT EXISTS 使用 INSERT .. SELECT。仅当 WHERE 子句返回 TRUE 时才会执行插入。
还有更多选择...