INSERT IGNORE INTO sobd_voucher_types(voucher_type) VALUES('$voucher_array[$i]')


我想避免插入重复的数据。
 voucher_type列是唯一的。
当我在mysql上运行该查询时,此查询正常运行。
但是当我从php运行时却没有相同的查询。
重复的数据仍在插入

最佳答案

如果插入重复数据,则表示voucher_type列不是唯一的,因为IGNORE仅跳过错误(不会阻止重复插入)。

https://dev.mysql.com/doc/refman/5.7/en/insert.html


  如果您使用IGNORE修饰符,则在执行
  INSERT语句被忽略。例如,如果没有IGNORE,则该行
  复制表中现有的UNIQUE索引或PRIMARY KEY值
  导致重复键错误,并且语句中止。用
  忽略,该行将被丢弃,并且不会发生错误。忽略的错误可能
  生成警告,尽管不会出现重复键错误。

关于php - INSERT IGNORE INTO不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45605377/

10-11 21:59