2
有沒有辦法獲得使用ActiveRecord::Base.connection.execute
SQL操作產生的受影響的行數?受影響的行ActiveRecord :: Base.connection.execute與Postgres
我發現this answer適用於MySQL適配器,但它不適用於Postgres。
或者,如果有辦法獲得SQL文本響應(例如「UPDATE 126」),那也可以。
有沒有辦法獲得使用ActiveRecord::Base.connection.execute
SQL操作產生的受影響的行數?受影響的行ActiveRecord :: Base.connection.execute與Postgres
我發現this answer適用於MySQL適配器,但它不適用於Postgres。
或者,如果有辦法獲得SQL文本響應(例如「UPDATE 126」),那也可以。
您可以使用cmd_tuples
方法:
sql = "UPDATE users SET updated_at = '#{DateTime.now}' WHERE id = 1"
ActiveRecord::Base.connection.execute(sql).cmd_tuples
# => 1
文檔:http://www.rubydoc.info/gems/pg/0.17.1/PG%2FResult:cmd_tuples