在开发项目的过程中,我们经常会需要批量插入数据。这时候,如果只逐条插入,效率可能会比较低下。MySQL提供了批量插入的方法,可以同时插入多条数据,极大地提高了写入数据的效率。
下面我们通过PHP代码演示如何在MySQL中同时写入100条数据:
--by www.qzphp.cn // 创建一个 PDO对象 $dsn = 'mysql:dbname=test; host=127.0.0.1'; $user = 'root'; $password = '123456'; $pdo = new PDO($dsn, $user, $password); // 数据 $data = array( array('id'=>1, 'name'=>'张三', 'age'=>20), array('id'=>2, 'name'=>'李四', 'age'=>21), array('id'=>3, 'name'=>'王五', 'age'=>22), // ...... 这里省略了96条数据 ); // 拼接 SQL语句 $sql = 'INSERT INTO `users` (`id`, `name`, `age`) VALUES '; $params = array(); foreach ($data as $item) { $params[] = '('.$item['id'].', "'.$item['name'].'", '.$item['age'].')'; } $sql .= implode(',', $params); // 执行 SQL语句 $stmt = $pdo->prepare($sql); $stmt->execute();
上面的代码中,我们首先创建了一个PDO对象,然后定义了一个包含100条数据的数组。接着,通过foreach循环将数据拼接成一个可执行的SQL语句,最后通过PDO对象执行SQL语句。
通过批量插入数据,我们可以有效地减少SQL语句的执行时间,提高系统的性能。在实际开发中,可以根据需求将批量插入数据的条数选择得更大或更小。