PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

heroku run rake db:lỗi di chuyển

Có vẻ như điều sau là đúng:

  • 20120525005302_create_users.rb sẽ cố gắng tạo users trong cơ sở dữ liệu của bạn.
  • 20120611000411_devise_create_users.rb cũng sẽ cố gắng tạo users trong cơ sở dữ liệu.
  • Cơ sở dữ liệu của bạn hiện đã có users trong đó, vì vậy quá trình di chuyển không thành công trong lần di chuyển thứ hai.

Để có được users bảng trong cơ sở dữ liệu của bạn để tương ứng đúng với 20120611000411_devise_create_users.rb di chuyển, bạn có thể thực hiện một trong hai điều:

  1. Cuộn lại (hoặc thả) cơ sở dữ liệu, rồi chạy lại quá trình di chuyển. (Bạn có thể xóa 20120525005302_create_users.rb nếu nó trống.)
  2. Sửa đổi 20120611000411_devise_create_users.rb của bạn di chuyển để loại bỏ mọi users hiện có trước khi làm bất cứ điều gì khác.
  3. Sửa đổi 20120611000411_devise_create_users.rb của bạn di chuyển như sau:
    • Thay vì tạo users bảng, sửa đổi bảng hiện có.
    • Thêm và sửa đổi các thành phần cơ sở dữ liệu để tương ứng

Nói chung, nếu ứng dụng của bạn ở "trạng thái sơ sinh", thì việc tạo lại cơ sở dữ liệu có xu hướng là một cách nhanh chóng để xây dựng cấu trúc ban đầu của ứng dụng. Tuy nhiên, nếu bạn đã có dữ liệu quan trọng trong users của mình , bạn sẽ muốn giữ lại bảng đó và tiếp tục bằng cách sửa đổi 20120611000411_devise_create_users.rb di chuyển để thay đổi cơ sở dữ liệu một cách không phá hủy.

Tài liệu tham khảo



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Yêu cầu cung cấp giấy tờ cho PGDay.IT 2011 đã được gia hạn

  2. Ràng buộc kiểm tra PostgreSQL cho điều kiện khóa ngoại

  3. Cặp giá trị khóa trong PostgreSQL

  4. Tính toán kết quả Doanh thu Định kỳ Hàng tháng (MRR) bằng cách sử dụng bưu điện

  5. PostgreSQL sử dụng pg_trgm chậm hơn sau đó quét toàn bộ