正确关闭Ruby on Rails中的SQL连接?

Jac*_*tti 3 ruby sql database-connection ruby-on-rails

我有一个非常复杂的SQL查询,在ActiveRecord中无法完成或无法轻松完成.

我创建了我的SQL查询并执行了以下操作:

sql = getcomplexsqlquery
result = ActiveRecord::Base.connection.execute(sql)
Run Code Online (Sandbox Code Playgroud)

并循环结果.

如何确保SQL连接关闭?

the*_*Man 7

不要试图关闭它.

您正在使用ActiveRecord与数据库的连接,这与其正常查询所使用的连接相同.

关闭一个将关闭另一个,结果留下一个愤怒的ActiveRecord和Rails.

  • 查询和连接之间存在差异.无论查询失败还是成功,都应保持连接.这是ActiveRecord用来与数据库通信的管道.查询只是发送到数据库的问题(或语句),它等待某种响应,并通过该连接发送.关闭连接会很糟糕.如果出现错误,查询将立即"结束",但是将保持连接,并且您不应该尝试强制关闭它,否则您将不得不重新打开它以进行进一步的查询. (2认同)