加入收藏 | 设为首页 | 会员中心 | 我要投稿 温州站长网 (https://www.0577zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 如何通过rails迁移设置Postgres中主键(ID)列的起始点

发布时间:2021-03-14 21:44:18 所属栏目:MsSql教程 来源:网络整理
导读:我正在将一个rails应用程序部署到heroku,后者使用PostgreSQL作为后端.在我的数据库迁移中,我通常会将报告等内容的ID字段设置为至少1000,大多数客户似乎不喜欢从1开始. 通常我使用mysql,我只是在创建表后添加一个特定的sql: def self.up create_table :rep

我正在将一个rails应用程序部署到heroku,后者使用PostgreSQL作为后端.在我的数据库迁移中,我通常会将报告等内容的ID字段设置为至少1000,大多数客户似乎不喜欢从1开始.

通常我使用mysql,我只是在创建表后添加一个特定的sql:

def self.up
    create_table :reports do |t|
       t.references :something
       ...
    end
    execute("ALTER TABLE reports AUTO_INCREMENT = 1000;")
end

有没有人知道如何为PostgreSQL实现同样的目标,理想情况下我希望迁移来构建表本身,这样就不是特定于DB的.

我想实现我的目标的一个愚蠢的方法是在循环中创建和删除999条记录,哎哟.

解决方法

不知道红宝石和铁路部分,但查询你所说的是
ALTER SEQUENCE reports_something_seq RESTART 1000;

您将需要查找表格中的序列名称和postgresql文档以获取有关此事项的一般教育;-)

(编辑:温州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读