我试图在Rails中运行以下原始查询,但却失���了:
query = 'SELECT * FROM users WHERE id IN ($1);'
results = ActiveRecord::Base.connection.exec_query(query, "My query", [ [1,2] ]);
我做错了什么?
我遇到的错误从这里开始:
Could not log "sql.active_record" event. NoMethodError: undefined method `binary?' for 1:Fixnum
显然,我以某种方式错误地使用了[1, 2]
绑定参数,但我自己找不到合适的示例。
附言:这是一个最小失败的示例,源于一个不能转换为ActiveRecord调用链的更高级查询。换句话说 - 在构建我的查询时无法依赖Arel。
另外:rails 4.0.1
和postgresql 9.3
被使用。
query = 'SELECT * FROM users WHERE id IN (?);'
results = ActiveRecord::Base.connection.exec_query(query, [1,2])
- Utsav Kesharwani