我们如何获得受MySQL查询影响的总行数?

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 //

mysql> Delimiter ;
mysql> Create table Testing123(First Varchar(20), Second Varchar(20));

mysql> CALL row_cnt("INSERT INTO testing123(First,Second) Values('Testing First','Testing Second');");
+---------------+
| Affected rows |
+---------------+
|             1 |
+---------------+
1 row in set (0.10 sec)

上面的结果集表明,将数据插入到“ testing123 ”表后,I行受到影响。