postgresql - PostgreSQL 8.3 上的 Bigint

标签 postgresql bigint

我有一个 users 表,其主键 uid 的数据类型为 bigint。

我不明白为什么在尝试添加 uid = 100000349053153 的用户时出现错误:“Minteger 超出范围”。

这应该有效(根据文档:http://www.postgresql.org/docs/8.3/static/datatype.html)

最佳答案

谢谢尼古拉斯和亚当。

问题与我对 Rails 的混淆使用有关。

我认为 rake db:reset 从迁移文件重新创建数据库是错误的。 我有正确的迁移文件,但 rake db:reset 使用了 schema.rb 提供的错误信息

如果您想存储 Facebook ID,请使用(在您的迁移中):

t.integer :uid, :limit => 8

您还可以添加索引:

add_index :users, :uid, :unique => true

如果您想从头开始重新创建 Rails 数据库,请使用:

rake db:drop
rake db:create
rake db:migrate

关于postgresql - PostgreSQL 8.3 上的 Bigint,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3939653/

相关文章:

sql - PostgreSQL:有效地将 JSON 数组拆分为行

postgresql - PGSQL 错误代码 42703 列不存在

javascript - 为什么 `+0n` 会抛出错误,而 `-0n` 不会?

MYSQL 无法正确比较 big int(20)

c++ - BigInt显示函数

javascript - 解读 Uniswap V3 价格

postgresql - 错误 : operator does not exist: bit = integer

sql - 如何在postgresql中获取不同组的第一个条目

PostgreSQL 11.1 - 在执行时稳定分区修剪

php - MySql - bigints、php 和自动字符串/整数转换翻转