Ruby on rails 调用Rails 4中的存储过程
我正在调用一个返回多个结果的存储过程 在Rails 4中,找到的唯一解决方案是使用标志MULTI_语句启动一个新的Ruby on rails 调用Rails 4中的存储过程,ruby-on-rails,Ruby On Rails,我正在调用一个返回多个结果的存储过程 在Rails 4中,找到的唯一解决方案是使用标志MULTI_语句启动一个新的Mysql2::Client。在我看来,打开与数据库服务器的新连接是不对的 options = Rails.application.config_for(:database).merge flags: Mysql2::Client::MULTI_STATEMENTS client = Mysql2::Client.new options results = client.query
Mysql2::Client
。在我看来,打开与数据库服务器的新连接是不对的
options = Rails.application.config_for(:database).merge flags: Mysql2::Client::MULTI_STATEMENTS
client = Mysql2::Client.new options
results = client.query %Q{CALL my_proc('#{params}')}
client.close
results
所以我的问题是:目前有更好的解决方案吗?解决方案是使用
exec\u query
调用存储的进程,然后清除活动连接代码>如下所示:
results = ActiveRecord::Base.connection.exec_query %Q{CALL my_proc('#{params}')}
ActiveRecord::Base.clear_active_connections!
results
你试过这里的建议了吗?谢谢@SimoneCarletti,我在发布之前找不到您链接的anwser。