sql - 如何一步步在rails中查询SQL?

标签 sql ruby-on-rails activerecord

我一直在网上到处寻找答案,但没有成功。我在哪里输入我的查询?在 rails c?我知道我必须使用 ActiveRecord::base.connection 但我不知道它必须在哪里运行。对不起,如果这是一个愚蠢的问题。

最佳答案

Rails 使用名为 ActiveRecord 的 ORM 与 SQL 数据库交互:

http://guides.rubyonrails.org/active_record_basics.html

语法简单明了,您可以通过使用 rails console(缩写为 rails c)打开您的 Rails 控制台来输入查询。

例如,如果我想查找 Question 表中的所有记录,我打开控制台并简单地键入 Question.all:

irb(main):001:0> 问题.all

...转换为以下 SQL 查询:

问题加载(4.2 毫秒)SELECT 'questions'.* FROM 'questions'

如果您想在 Rails 控制台中执行原始 SQL 命令,您可以使用 ActiveRecord::Base.connection.execute(some_string) 并将 SQL 作为字符串对象。

您可以直接将 SQL 字符串作为参数编写,也可以预先将其声明为变量:

sql = "some raw sql"
ActiveRecord::Base.connection.execute(sql)

查看此问题了解更多信息:Rails raw SQL example

关于sql - 如何一步步在rails中查询SQL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29399517/

相关文章:

ruby-on-rails - 堆栈级别太深 - Re : has_many to belongs_to Association

ruby-on-rails - ActiveRecord destroy_all 抛出 StatementInvalid

sql - 限制类别页面上产品列表中子类别的项目数量?

php - 仅当两列(持续时间和分数)不同时,如何增加 mysql 中的排名?

sql - 数据立方体设计 : hard-to-aggregate measure

ruby-on-rails - 如何实现用户电子邮件首选项?

ruby-on-rails - 开始在 Rails 中进行测试

ruby-on-rails - Rspec - 你必须激活 Authlogic::Session::Base.controller - 我已经尝试过常见的建议

SQL嵌套查询作业

mysql - 查找不仅仅是特定 SKU 的订单