关于”增”:
需要在表中插入大量测试数据时,譬如10000000条,怎么样插才能更快呢,看一下测试过程吧;
首先,在windows平台下,表中两个字段,id主键自增,name为固定字符串, 一次插一条:
for ($i = 0; $i < 10000000; $i++) {
$db->exec("INSERT INTO test(id, name) VALUES(NULL, 'str')");
}
实际过程中非常慢,我没等到插到10000000就结束了代码的运行,后来搜索了一下,发现可以一次插入多行数据:
"INSERT INTO test(id, name) VALUES(NULL 'str1'),(NULL, 'str2'),(NULL, 'str3')...";
于是乎插入数据代码变成了
for($i = 0; $i < 4500; $i++) {
if ($i == 0) {
$sql = "INSERT INTO test3(id, name) VALUES(NULL, 'str')";
} else {
$sql .= ",(NULL, 'str')";
}
$db->exec($sql);
}
$i<4500是因为每次插入数据的条数是个等差数列&#x