PHP框架 Laravel Eloquent ORM 批量插入数据,怎么实现
3个回答
2016-03-08 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
关注
展开全部
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;
}
比如:
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;
}
展开全部
不是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();
}
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();
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public static function create(array $attributes)
{
$model = new static($attributes);
$model->save();
return $model;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询