如何访问默认的Rails sqlite db?

kos*_*tja 54 aptana sqlite ruby-on-rails ruby-on-rails-3

我希望在使用Rails进行开发时查看数据库中的数据(实际上在所有3个开发,测试和生产中).我没有碰过这些配置,所以应该很容易,但我找不到任何有用的信息.

我不知道连接字符串是什么或输入它的位置,因为Aptana(v.3)似乎缺少我从Eclipse中知道的旧的数据源资源管理器视图.有人能指出我正确的方向吗?

编辑:我正在研究linux - Mint 12

Gaz*_*ler 80

你忽略了提到你正在使用的操作系统.

一种方法是sqlite3在终端中使用该命令.

sqlite3 db/development.sqlite3
Run Code Online (Sandbox Code Playgroud)

但是,对于检查行等问题,最好使用rails控制台.

rails c
> User.all # Where user is your model.
Run Code Online (Sandbox Code Playgroud)

注意:不要直接通过sqlite3更改数据库架构,如果您来自不同的Web堆栈背景,可能会习惯这种情况.这是因为下次运行迁移时,状态将与rails期望的不同.


Ste*_*eet 41

Rails 3提供了一个通用命令,用于访问正确的数据库客户端,并为当前环境传入正确数据库的名称.该命令rails dbconsole可以缩短为rails db

$ rails db
SQLite version 3.6.12
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> 
Run Code Online (Sandbox Code Playgroud)

这个命令提供的不仅仅是Gazler的答案,事实上他建议使用控制台是个好建议,但是这个方法的好处是,如果你的数据库在其他环境中有所不同,它将使用正确的客户端.


Tar*_*pta 8

使用

SQLite> .tables
Run Code Online (Sandbox Code Playgroud)

这将为您提供所选数据库中存在的所有表的列表

@@激活consol

SQLite> rails dbconsole
Run Code Online (Sandbox Code Playgroud)

@@显示表格

SQLite>.tables
Run Code Online (Sandbox Code Playgroud)

@@显示表中的所有行

SQLite> select * from posts
Run Code Online (Sandbox Code Playgroud)


Dmi*_*eev 6

有一个很棒的应用程序来浏览sqlite3数据库.SQLite数据库浏览器.

PS你提到你正在使用Aptana工作室.我已经开始使用这个IDE学习RoR了,但后来发现了Sublime Text并且从未想过使用其他任何东西,因为我建议你检查一下.

干杯

  • 感谢@Dmitry的提示,+1.我快速浏览了SQLite Db浏览器,但它不鼓励我看到最后一个稳定版本已经在2005年发布,并且开发在2009年停止了.现在我正在使用[SQLite Manager插件for firefox](https:/ /addons.mozilla.org/en-US/firefox/addon/sqlite-manager/).是的,与Aptana合作是一种简短而不愉快的体验.来自Java,并与IntelliJ合作,我已经选择了令人惊叹的[RubyMine IDE](http://www.jetbrains.com/ruby/),并且自从没有回头:) (4认同)