Thinkphp6原生SQL命令插入获取插入的id方法

      发布在:后端技术      评论:0 条评论

有时候我们需要实现复杂的插入数据,所以就会用到execute方法,

image

execute用于更新和写入数据的sql操作,如果数据非法或者查询错误则返回false,否则返回影响的记录数。

但我们希望获取插入的id方便后面业务处理,具体实现方法参考如下:

$prefix=Config::get('database.connections.mysql.prefix');
//复制产品
       $addtime= time();
$productSql = "insert into {$prefix}store_product (mer_id,image,slider_image,store_name,store_info,keyword,cate_id,price,vip_price,ot_price,postage,unit_name,sort,sales,stock,is_show,is_hot,is_best,is_benefit,is_new,cost,give_integral,description,add_time)
select mer_id,image,slider_image,store_name,store_info,keyword,cate_id,price,vip_price,ot_price,postage,unit_name,sort,sales,stock,is_show,is_hot,is_best,is_benefit,is_new,cost,give_integral,description,'$addtime' as add_time from {$prefix}store_product where id=$product_id;
";
$mStoreProduct=Db::name("store_product");
$mStoreProduct->execute($productSql);

       $newProductId=$mStoreProduct->getLastInsID();



相关文章
热门推荐