我有一個託管在Heroku上的項目,並且希望更改表的自動增量開始值。我在本地使用的SQLite3和Heroku的使用PostgreSQL的這是我在遷移:更改遷移中的自動增量值(PostgreSQL和SQLite3)
class CreateMytable < ActiveRecord::Migration
def self.up
create_table :mytable do |t|
t.text :mytext
end
case ActiveRecord::Base.connection.adapter_name
when 'PostgreSQL'
execute 'ALTER SEQUENCE mytable_id_seq RESTART WITH 1000;'
when 'SQLite'
execute 'update sqlite_sequence set seq = 1000 where name = "mytable";'
else
end
end
def self.down
drop_table :mytable
end
end
本地遷移運行,但SQLite的似乎只是忽略的變化,它的工作原理在Heroku雖然。我究竟做錯了什麼?
有點OT,但你真的應該建立本地的PostgreSQL,在一個數據庫上開發和部署的另一個是對挫折的配方,並在02:00驚慌失措的電話。 – 2011-03-26 06:22:12