在多查询中检索每个INSERT语句的ID [英] Retrieve id of each INSERT statement in multi query

查看:85
本文介绍了在多查询中检索每个INSERT语句的ID的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以在以下SQL请求中为每个INSERT语句检索ID(在我的情况下为ua_id)

Is it possible to retrieve id (ua_id is in my case) for each INSERT statement in following SQL request

INSERT INTO users_addresses (ua_user_id, ua_address_id) VALUES (1,1);
INSERT INTO users_addresses (ua_user_id, ua_address_id) VALUES (1,2);
INSERT INTO users_addresses (ua_user_id, ua_address_id) VALUES (1,3);

使用mysqli::multi_query()执行它,而ua_id是AUTO_INCREMENT主键吗?

using mysqli::multi_query() to execute it wheres ua_id is AUTO_INCREMENT primary key?

推荐答案

好.您执行一次多查询,让我们使用它:

Well. you do a multiquery, let's use it:

<?php
$db->multi_query('
INSERT INTO users_addresses (ua_user_id, ua_address_id) VALUES (1,1);
SELECT LAST_INSERT_ID();
INSERT INTO users_addresses (ua_user_id, ua_address_id) VALUES (1,2);
SELECT LAST_INSERT_ID();
INSERT INTO users_addresses (ua_user_id, ua_address_id) VALUES (1,3);
SELECT LAST_INSERT_ID()') or trigger_error($db->error);
do {
   if ($result = $db->store_result()) {
      while ($row = $result->fetch_row()) {
          var_dump($row);
      }
   }
} while ($db->next_result());

这篇关于在多查询中检索每个INSERT语句的ID的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆