我正在研究Drupal CMS,我正在解析文件&,它将数据存储在数据库中。Drupal db_insert一次不能保存超过440条记录
因此,如果文件中有超过440条记录(行),它不会进一步保存。它适用于小于440的行。这是一个奇怪的问题。
$query = db_insert('table_name')->fields(array('field1', 'field2', 'field3'));
$row = 1;
while (($data = fgetcsv($handle, 0, ",")) !== FALSE)
{
$num = count($data);
if ($row > 1) {
$query->values(
array(
'fields1' => $data[0],
'fields2' => $data[2],
'fields3' => $data[4]
));
if($row == '440'){
break;
}
}
$row++;
}
$query->execute();
///// 如果($行== '440'){ 休息; }
被添加来检查它保存了多少行。如果我将440增加到460,它不会将记录保存到数据库。
我已经添加了break语句来检查它是否保存了440条记录。它适用于440,但如果文件有600行,它也不会保存单行。 –
该测试没有意义。通过添加它你保证你不会写出超过440行。我的意思是......如果将它设置为441,会发生什么?根据你所说的只有440行被写入。你不需要一个if/break来告诉你,除非你在441记录上得到某种错误,并且你想阻止它发生。如果你遇到了错误,你应该在你的问题中包含错误的细节。 – SpartanDonut