mysql:将插入的受影响行获取到临时表

问题描述 投票:0回答:3

在对临时表执行插入操作后,我想获取受影响的行数(我向表中插入了多少行)。

SQL 中

mysql_affected_rows()
的等效命令是什么?

ROW_COUNT()
返回 -1;

使用Mysql服务器5.1

谢谢

php mysql sql
3个回答
2
投票

ROW COUNT
可能就是您正在寻找的。阅读文档,有详细信息。

ROW_COUNT()
仅在同一会话中有效,并且仅在更新查询后立即生效,否则将重置为 -1。


1
投票
CREATE TEMPORARY TABLE mytest select login_token.id from login_token;

当我使用以下命令时,MySQL 返回以下状态:

Query OK, 301 rows affected (0.02 sec)
Records: 301  Duplicates: 0  Warnings: 0

但是当我查询 ROW_COUNT() 时:

mysql> select ROW_COUNT();
+-------------+
| ROW_COUNT() |
+-------------+
|          -1 |
+-------------+
1 row in set (0.00 sec)

我搜索并发现唯一正确的解决方案是运行计数查询。

select count(1) from mytest;

0
投票

你的意思是来自sql查询吗?

SELECT ROW_COUNT();
© www.soinside.com 2019 - 2024. All rights reserved.