Module | Sequel::ADO::MSSQL::DatabaseMethods |
In: |
lib/sequel/adapters/ado/mssql.rb
|
Issue a separate query to get the rows modified. ADO appears to use pass by reference with an integer variable, which is not supported directly in ruby, and I‘m not aware of a workaround.
# File lib/sequel/adapters/ado/mssql.rb, line 13 13: def execute_dui(sql, opts=OPTS) 14: return super unless @opts[:provider] 15: synchronize(opts[:server]) do |conn| 16: begin 17: log_connection_yield(sql, conn){conn.Execute(sql)} 18: rows_affected_sql = "SELECT @@ROWCOUNT AS AffectedRows" 19: res = log_connection_yield(rows_affected_sql, conn){conn.Execute(rows_affected_sql)} 20: res.getRows.transpose.each{|r| return r.shift} 21: rescue ::WIN32OLERuntimeError => e 22: raise_error(e) 23: end 24: end 25: end