9

我正在将我的应用程序从 MySQL 迁移到 Postgres。如果我执行 a rake db:schema:load,它会很好地加载到 Postgres 中,并且我的所有测试都会通过。

如果我这样做rake db:migrate:reset了,那么我之前设置的一个整数列将:limit => 1被设置为 have :limit => 2

我的迁移设置如下:

t.integer "foo", :limit => 1, :null => false

这仅仅是 Postgres 的最小尺寸较小的问题吗?

4

2 回答 2

6

PostgreSQL 中的smallint类型占用两个字节,接受从 -32768 到 +32767 的数字。

tinyintMySQL中没有like占用 1 个字节并接受从 -128 到 127 的数字。

于 2012-04-11T04:21:16.970 回答
3

Postgres 不提供 1 字节整数类型。整数的最小数据类型是 2 字节的 smallint。

于 2012-04-11T04:22:09.373 回答