Home >Backend Development >PHP Tutorial >多批量插入记录时 出现一条 insert into 插入多个相同记录

多批量插入记录时 出现一条 insert into 插入多个相同记录

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-23 14:24:251334browse

多批量插入记录时时不时的 出现一条 insert into 插入多个相同记录,是什么情况.
应该如何解决


回复讨论(解决方案)

请贴出代码!!!
批量新增的时候,是否循环一次,新增一次,请检查代码。

for($i=0;$i $iaps=$iap[$i];
$daqs=$daq[$i];
$row=mysql_query("select count(*) from `dls` where `iap`='$iaps' ");  //检查是否有重复数据
$row=mysql_fetch_row($row);
if($row[0]){continue;}


mysql_query("insert into `dls`(`iap`,`daq`,`kt`) value ('$iaps','$daqs','kt')");

}

循环有问题。
1, 最好办法解决循环。
2,某字段建立一个UNIQUE索引,避免重复插入。
2,用 insert into from dual where not exists 的语句避免重复插入

INSERT INTO [table name] SELECT '[value1]', '[value2]' FROM DUAL
WHERE NOT EXISTS(
    SELECT [column1] FROM [same table name]
    WHERE [column1]='[value1]'
    AND [column2]='[value2]' LIMIT 1
)

最好用事务做,保证一致性。

$row=mysql_fetch_row($row);
var_dump($row);打印结果看看。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:正则匹配Next article:正则采集问题,求解,在线等