我剛剛從sqlite3更改爲PG,並且在通過pgAdmin創建數據庫並嘗試運行遷移之後,遇到以下情況,這些我都不明白。無法在PostgreSQL上運行數據庫遷移
Pawel:bodb pawel$ rake db:create
DEPRECATION WARNING: Rake tasks in /Users/pawel/Ruby/apps/bodb/vendor/plugins/google_charts_on_rails/tasks/google_charts_on_rails_tasks.rake are deprecated. Use lib/tasks instead. (called from /Users/pawel/Ruby/apps/bodb/Rakefile:7)
firstdb already exists
Pawel:bodb pawel$ rake db:migrate
DEPRECATION WARNING: Rake tasks in /Users/pawel/Ruby/apps/bodb/vendor/plugins/google_charts_on_rails/tasks/google_charts_on_rails_tasks.rake are deprecated. Use lib/tasks instead. (called from /Users/pawel/Ruby/apps/bodb/Rakefile:7)
== AddLikesToUsers: migrating ================================================
-- add_column(:Users, :likes, :string)
rake aborted!
An error has occurred, this and all later migrations canceled:
PGError: ERROR: relation "Users" does not exist
: ALTER TABLE "Users" ADD COLUMN "likes" character varying(255)
Tasks: TOP => db:migrate
(See full trace by running task with --trace)
Rails創建我的所有表,schema.rb以小寫形式顯示它們,所以不能這樣做。 – Simpleton
@Simpleton:如果他們**是**小寫,那麼這**就是**的問題。該查詢讀取「ALTER」用戶「,而不是」ALTER users「或」ALTER Users「。 –
@Simpleton:'add_column(:Users,:likes,:string)'不正確,它應該是'add_column(:users,:likes,:string)'所以Erwin位於正確的軌道上。 –