Ruby DBI - 如何检查记录集是否为空

时间:2011-11-22 14:33:51

标签: ruby dbi

使用Ruby DBI,如何检查记录集是否为空? (没有迭代它或进行计数查询)

sth = dbh.prepare("select * from things WHERE created_at > '#{start}'")
sth.execute

1 个答案:

答案 0 :(得分:1)

您可以随时询问结果对象:

res = sth.execute
res.num_rows

但是,操作必须下拉所有匹配的记录,因此如果您只需要计数,则可能需要直接选择。

逃避您的SQL 。你不能只在那里放任意字符串。这样更好:

sth = dbh.prepare("select * from things WHERE created_at > '%s'" % sth.escape_string(start))