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

Rails &Postgres:Không thể truyền di chuyển sang change_colomn gây ra lỗi để nhập dấu thời gian không có múi giờ

Trong Rails, điều này sẽ giống như

class ChangeStatusUpdatedAtToDateTime < ActiveRecord::Migration
  def up
    remove_column :bookings, :status_updated_at
    add_column :bookings, :status_updated_at, :datetime
  end

  def down
    remove_column :bookings, :status_updated_at
    add_column :bookings, :status_updated_at, :time
  end
end

Nếu bạn có dữ liệu muốn chuyển, bạn có thể sử dụng mã sau (chưa được kiểm tra!):

class ChangeStatusUpdatedAtToDateTime < ActiveRecord::Migration
  def up
    add_column :bookings, :temp_status_updated_at, :datetime
    Booking.update_all("temp_status_updated_at = updated_at")
    remove_column :bookings, :status_updated_at
    rename_column :bookings, :temp_status_updated_at, :status_updated_at
  end

  def down
    add_column :bookings, :temp_status_updated_at, :time
    Booking.update_all("temp_status_updated_at = updated_at")
    remove_column :bookings, :status_updated_at
    rename_column :bookings, :temp_status_updated_at, :status_updated_at
  end
end


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Rails 3, ActiveRecord, PostgreSQL - Lệnh .uniq không hoạt động?

  2. làm thế nào để tôi giết một cách duyên dáng các postgres quy trình máy chủ cũ

  3. Kiểm tra các hàm PostgreSQL sử dụng và trả về con trỏ

  4. Db khác nhau để thử nghiệm trong Django?

  5. PSQLException:Máy chủ đã yêu cầu xác thực dựa trên mật khẩu, nhưng không có mật khẩu nào được cung cấp