我知道如何从 bash 执行 MySQL 查询/命令:
mysql -u[user] -p[pass] -e "[mysql commands]"
或
mysql -u[user] -p[pass] `<<`QUERY_INPUT
[mysql commands]
QUERY_INPUT
如何捕获查询影响了多少行?
我尝试做:
variable='`mysql -u[user] -p[pass] -e "[mysql commands]"`'
它确实执行命令,但不返回受影响的行数。
放置
SELECT ROW_COUNT();
作为批处理中的最后一个语句并解析输出
查看文档,显然使用
-v
至少 3 次会迫使 MySQL 变得更加冗长,并且它会打印受影响的行数。示例:
mysql -vvv ...
参考:
https://dev.mysql.com/doc/refman/8.0/en/mysql-command-options.html#option_mysql_verbose
不是答案,但有用的补充,您还可以尝试其他 MySQL 信息函数(包括 ROW_COUNT() )来为您提供所需的特定信息。 请参阅此处的 MySQL 参考