我有一个喜欢的表包含一些字段,如login_id,driver_id(一个login_id可能有很多driver_id)。然后我使用批量更新,没有检查表中是否存在driver_id。
输入数据将设置驱动程序ID,如果相同的id已存在于相关的login_id,我需要跳过驱动程序ID的插入。因此,新的ID将被插入而其他的不是
我可以用mysql做什么,表中需要的是什么设置。
请告诉我
答案 0 :(得分:11)
您可以使用“INSERT IGNORE INTO”。它返回更新的行数。
INSERT IGNORE INTO favorite(login_id,driver_id) VALUES (login_id,driver_id) (login_id,driver_id).....
答案 1 :(得分:2)
使用mysql中的login_id和driver_id创建一个唯一键。
当您尝试根据这些键插入现有记录时,将引发错误。然后,您可以捕获此错误并继续正常进行。
CREATE UNIQUE INDEX unique
ON tbl_name (login_id, driver_id)