当我使用 PHP 将 CSV 文件上传到 MySQL 数据库时,如何检查重复并上传新数据


How to check duplicate and upload the new data when I use PHP to upload the CSV file into MySQL database

我有一个CSV文件,有十列:

ID、发件人日期、

结束日期、地址、价格 1、价格 2、列 1、列 2、列 3、列 4

但我只想将前六列插入 MySQL 数据库,最重要的是,如果数据库中存在属性(ID、fromDate、endDate、地址)相同的元组,我们定义了两行是标识的。

例如:数据库中存在一个元组:

(1000, 2014-11-21,

2014-11-23, 纽约, 100, 200)

现在,在 CSV 文件中,存在一行:

(1000, 2014-11-21,

2014-11-23, 纽约, 150, 250)

我们定义了两个元组是相同的。所以现在我们应该通过 CSV 文件中的新数据更新数据库中的数据。

这意味着,删除元组

(1000, 2014-11-21,

2014-11-23, 纽约, 100, 200)

并插入新元组:

(1000, 2014-11-21,

2014-11-23, 纽约, 150, 250)

怎么做?

将数据从CSV插入数据库时如何检查重复项,一旦发现重复行,如何替换它?

你可以使用特定的 mysql 替换

REPLACE 的工作方式与 INSERT 完全相同,只是如果 表的值与主键或唯一键的新行相同 索引,则在插入新行之前删除旧行。

或插入重复项,但使用此方法,您必须列出所有字段。