MySQL ROW_COUNT()可用于获取受 MySQL 查询影响的总行数。为了说明这一点,我们正在创建一个过程,借助它我们可以在表中插入记录,它会告诉我们有多少行受到影响。
例子
mysql> Delimiter //
mysql> CREATE PROCEDURE `query`.`row_cnt` (IN command VarChar(60000))
-> BEGIN
-> SET @query = command;
-> PREPARE stmt FROM @query;
-> EXECUTE stmt;
-> SELECT ROW_COUNT() AS 'Affected rows';
-> END //
Query OK, 0 rows affected (0.00 sec)
mysql> Delimiter ;
mysql> Create table Testing123(First Varchar(20), Second Varchar(20));
Query OK, 0 rows affected (0.48 sec)
mysql> CALL row_cnt("INSERT INTO testing123(First,Second) Values('Testing First','Testing Second');");
+---------------+
| Affected rows |
+---------------+
| 1 |
+---------------+
1 row in set (0.10 sec)
Query OK, 0 rows affected (0.11 sec)
上面的结果集显示,将数据插入到 ' testing123 ' 表中后, I 行受到影响。
本文通过创建一个存储过程展示了如何利用MySQL的ROW_COUNT()函数来获取执行查询后受影响的行数。示例中,我们创建了一个名为'query.row_cnt'的过程,该过程接受一个查询命令作为输入,执行查询并返回受影响的行数。在向'Testing123'表中插入记录后,ROW_COUNT()返回1,表明一行数据被成功插入。
1336

被折叠的 条评论
为什么被折叠?



