我已经为此奋斗了几天,但我已经停止了任何进展。
我开始在 Rails 4/Ruby 2.0 应用程序的开发中运行 PostgreSQL。其中很大一部分是将我的数据从 Sqlite 迁移到 PostgreSQL。我有一个数据量很大的应用程序。
我正在遵循 Railscast 中的说明: http ://railscasts.com/episodes/342-migrating-to-postgresql
我已经启动并正确运行了 PostgreSQL。
我确实在迁移数据时遇到了一些问题,并在 Github 上找到了这篇文章: https ://github.com/ricardochimal/taps/issues/128
我按照 hak8or 提供的说明创建了一个名为“tmp”的单独简化应用程序来迁移数据。一切似乎进展顺利。数据库模式已转换,表开始被复制。
然后我收到这个错误:
postgres.rb:175:in `exec': PG::NumericValueOutOfRange: ERROR: integer out of range (Sequel::DatabaseError)
我做了一些查看我的数据并意识到我需要将一列更改为 bigint。因此,我创建并运行了迁移并重新启动了数据迁移。可悲的是,我仍然有同样的错误。
转换似乎按照创建表的顺序进行。我检查了下一个应该转换的表,并且只有两个整数字段。一个是 ID,另一个是关系的 ID,但仍然是空的。
有没有人有任何想法?我完全被难住了。