我正在使用ruby on rails并且有一个sql说:
connection = ActiveRecord::Base.connection
sql = "UPDATE infos SET value_number = #{val_fun} WHERE pk1 = '#{func[:tbl]}' AND pk2 = '#{clin_row}' AND pk3 = '#{clin_col}' AND mk1 = '#{patient_id}' AND mk2 = '#{visit_id}'"
connection.execute sql
将执行sql,如果有相应的pk1,pk2,pk3,mk1和mk2,则value_number的值将被更新,如果没有相应的pk1,则pk2 ......将不更新该值。在这两种情况下,我得到一个[]作为回报。
如果相应的记录存在,是否可以在不检查之前确定值是否已更新? 我的意思是在connection.execute sql上有一个函数会告诉我有多少值被更新了?
提前致谢。