我想按以下方式运行原始SQL查询:
ActiveRecord::Base.connection.execute(some_query);
我可以捕获执行查询时发生的任何错误吗?如果是,怎么办?
execute
是否返回任何内容?它没有在文档中说。干杯
最佳答案
您可以像往常一样挽救错误。例如:
begin
ActiveRecord::Base.connection.execute(some_query)
rescue
# do stuff with exception
end
看看MySql (for example) adapter's code看看发生了什么。
在这种情况下,
execute
返回一个MySql::Result
对象。关于ruby-on-rails - 如何从Rails的ActiveRecord::Base.connection.execute中捕获错误?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1887389/