PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

heroku Błąd Postgres - operator nie istnieje znacznik czasu bez strefy czasowej =liczba całkowita

Twoje parametry @monday i @friday są nieprawidłowe, muszą być typu „znacznik czasu bez strefy czasowej”, ale są tworzone jako liczby całkowite, zobacz komunikat o błędzie. SQLite nie ma żadnych typów danych typu datetime, więc daty są przechowywane jako tekst lub liczby całkowite (uniksowe znaczniki czasu). Dlatego w SQLite nie pojawia się komunikat o błędzie.

Upewnij się, że tworzysz znaczniki czasu, takie jak „2004-10-19 10:23:54”, a wszystko będzie dobrze. Inną opcją może być funkcja PostgreSQL to_timestamp() aby przekonwertować swój uniksowy znacznik czasu na znacznik czasu:

@sent_emails = ContactEmail.all(:conditions => ['date_sent >= to_timestamp(?) and date_sent <= to_timestamp(?)', @monday, @friday])



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Unikalne połączenie w tabeli

  2. Alternatywny format wyjściowy dla psql

  3. Zaszyfruj dane w postgresql

  4. PostgreSQL:pomiędzy z datetime

  5. O wpływie całostronicowych zapisów