sql >> Database teknologi >  >> RDS >> PostgreSQL

Rails &Postgres:Migrering til change_colomn giver fejl kan ikke castes til type tidsstempel uden tidszone

I Rails ville dette ligne

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

Hvis du havde data, du ville overføre, kunne du bruge følgende kode (ikke testet!):

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. Tæl antal forespørgsler hver side indlæses med PDO

  2. Hvordan oprettes pakke i Oracle SQL Developer?

  3. Strengsorteringsrækkefølge (LC_COLLATE og LC_CTYPE)

  4. Find nærmeste matchende strenge og dens understrenge ved hjælp af SQL-forespørgsel