Mysql2 ruby​​ gem预编译语句返回nil

时间:2016-04-07 23:32:24

标签: ruby mysql2

我正在使用Mysql2 gem通过ruby脚本执行一些基本的数据库更新。每当我通过prepared statement进行更新时,我得到的结果值为nil, 即使数据库行正在更新。

Env:
ruby 2.2.3
mysql2 0.4.3

有问题的查询:

CLIENT = Mysql2::Client.new(host: '<host>', username: '<uname>', password: '<pwd>', database: '<db>', read_timeout: 10)

update_str = %Q(UPDATE marcom
SET `value` = "<subject>"
WHERE campaign_id = ?
AND flow_key = "<xyz>")

stmt = CLIENT.prepare(update_str)

result = stmt.execute(campaign_id) #campaign_id coming from somewhere else
# result is nil

所以我的问题是,

  1. 更新成功后,我不应该获得Mysql2 Result个对象。
  2. 即使更新成功,如果结果为零,我怎么知道某些更新是否成功。

0 个答案:

没有答案