我在 Ruby 中使用 MySQL2 来查询数据库。检查查询结果是否为空的直接方法是什么?代码如下所示:
require 'mysql2'
client = Mysql2::Client.new(:host => "localhost", :username => "root")
results = client.query("SELECT * FROM users WHERE group='githubbers'")
Mysql2
文档确实很差。但是通过检查results
你会发现它是一个Mysql2::Result
包含 3 个方法的类型。您感兴趣的是count
(或 alias size
),它将返回结果的行数。
从这里您可以轻松检查它是否是0
:
(results.count == 0)
或者,您可以打开Mysql2::Result
类并empty?
自己添加方法:
class Mysql2::Result
def empty?
(count == 0)
end
end
然后你可以这样做:
results.empty?
0 == results.size
true
如果results
为空,将返回。AFAIK 没有直接的方法(例如Array#empty?
),但是您可以对其进行修补。