PHP框架 Laravel Eloquent ORM 批量插入数据,怎么实现

2024-12-28 03:54:22
推荐回答(3个)
回答1:

PHP框架 Laravel Eloquent ORM 批量插入数据是通过传入数组实现的。
比如:
DB::table('users')->insert(array(
array('email' => 'taylor@example.com', 'votes' => 0),
array('email' => 'dayle@example.com', 'votes' => 0),
));
以上是操作表users,执行insert语句,参数是一个数组,封装了两条数据,这里可以自定义数据,insert内部就编程批量插入了。

然后调用save方法:
public static function create(array $attributes)
{
$model = new static($attributes);
$model->save();
return $model;
}

回答2:

不是laravel的,,试试吧
ini_set('max_execution_time','0');
  $pdo = new PDO("mysql:host=localhost;dbname=test","root","123456");

  $sql = "insert into test(id,account_id,name,created_time,status) values";

  for($i=0; $i<100000; $i++){
    $str = strrand(32);
    $sql .="('".$str."','assdasa','zhangsan','2015-09-17 07:55:10','active'),";
  }
  $sql = substr($sql,0,strlen($sql)-1);
  var_dump($sql);
  if($pdo -> exec($sql)){
    echo "插入成功!";
    echo $pdo -> lastinsertid();
  }

回答3:

public static function create(array $attributes)
    {
        $model = new static($attributes);

        $model->save();
        return $model;
    }