Ruby DBI - Как проверить, пуст ли набор записей - PullRequest
0 голосов
/ 22 ноября 2011

Используя Ruby DBI, как я могу проверить, пуст ли набор записей?(без перебора или выполнения запроса на подсчет)

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

1 Ответ

1 голос
/ 22 ноября 2011

Вы всегда можете просто спросить объект результата:

res = sth.execute
res.num_rows

Операция должна будет снять все соответствующие записи, поэтому, если вам нужен только счетчик, вы можете выбрать его непосредственно.

Также экранируйте свой SQL . Вы не можете просто вставить произвольные строки там. Это лучше:

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