导轨移民ID列开始在1000和自动增量从那里?(Rails Migration for ID Col

2019-06-27 06:15发布

我想我的订单模式的ID的1000开始,并从那里autoincrementally计数。

可以这样通过迁移来实现?

Answer 1:

在迁移,表已创建后,更新的是这样的顺序:

create_table :products do |t|
  t.string  :name
  # other stuff
end

# for Postgres
execute "SELECT setval('products_id_seq', 1000)"

# and for mysql ...
execute "ALTER TABLE products AUTO_INCREMENT = 1000"


Answer 2:

这并没有经过测试,我不知道你使用的是什么分贝。

create_table(:order, :id => false) do |t|
   t.integer :id, :options => 'PRIMARY KEY', :default => 1000

或者如果你已经有表试试这个迁移

def change
  execute "ALTER TABLE orders AUTO_INCREMENT = 1000"
end


文章来源: Rails Migration for ID Column to Start at 1,000 and Autoincrement Up From There?