ruby on rails 怎么执行sql语句
2个回答
2015-02-07
展开全部
Rails总是会做渗姿一些假设为您加速开发。通常,这种假设是正确而有帮助的。不过,它们并不总能有益丛手绝于性能,并且还会导致资源使用的效率低下——尤其是数据库资源。
另一个显著的挑战是N+1问题......这会导致很多小查询的执行,而不是一个单一的大查询。例如,ActiveRecord无从知道一组父记录中的哪一个会请求一个子记录,所以它会为薯明每个父记录生成一个子记录查询。由于每查询的负荷,这种行为将导致明显的性能问题。
由于ActiveRecord 能够让如此众多的任务变得轻而易举,Rails开发人员常常会形成 “SQL 不怎样” 的一种态度,即便在更适合使用SQL的时候,也会避免SQL。创建和处理数量巨大的ActiveRecord对象的速度会非常缓慢,所以在有些情况下,直接编写一个无需实例化任何对象的SQL查询会更快些。
另一个显著的挑战是N+1问题......这会导致很多小查询的执行,而不是一个单一的大查询。例如,ActiveRecord无从知道一组父记录中的哪一个会请求一个子记录,所以它会为薯明每个父记录生成一个子记录查询。由于每查询的负荷,这种行为将导致明显的性能问题。
由于ActiveRecord 能够让如此众多的任务变得轻而易举,Rails开发人员常常会形成 “SQL 不怎样” 的一种态度,即便在更适合使用SQL的时候,也会避免SQL。创建和处理数量巨大的ActiveRecord对象的速度会非常缓慢,所以在有些情况下,直接编写一个无需实例化任何对象的SQL查询会更快些。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询