SQLite 3数据库无法正常读取

时间:2011-10-23 08:47:25

标签: ruby-on-rails database ruby-on-rails-3 sqlite

我必须手动在rails 3.1.1 app中创建一个sqlite3数据库,使用mysql2sqlite工具从mysql数据库转换,然后运行:

sqlite3 development.sqlite3 < mysql2sqlite_dump.sql

无论如何,development.sqlite3文件就在那里,服务器启动正常,所有页面都正常加载(没有关于丢失表或任何东西的数据库错误),但数据没有被读取...就好像它不存在一样。例如,即使在控制台中运行Event.all也会给我:

  Event Load (0.1ms)  SELECT "events".* FROM "events" 
 => [] 

什么时候应该有几个事件。查看sqlite3文件,我可以看到所有信息都在那里,但它只是没有被阅读。如果有人要求,我会发布部分数据库文件。

我的问题是:为什么数据库没有被正确读取,我怎么能这样做呢?

感谢。

1 个答案:

答案 0 :(得分:0)

好吧,我好像已经解决了这个问题。问题是mysqldump(在mysql2sqlite脚本中执行)正在丢弃,然后创建表(这是默认的),并且与模式文件冲突。因此,我根据模式文件创建了数据库,然后再次为--no-create-info添加mysqldump选项运行脚本,以便它只插入信息。

感谢大家的帮助!