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

Heroku Postgres errore - l'operatore non esiste timestamp senza timezone =intero

I tuoi parametri @monday e @friday sono sbagliati, questi devono essere di tipo "timestamp senza fuso orario" ma sono creati come numeri interi, vedi il messaggio di errore. SQLite non ha tipi di dati datetime, quindi le date vengono archiviate come testo o numeri interi (timestamp unix). Questo è il motivo per cui non ricevi un messaggio di errore in SQLite.

Assicurati di creare timestamp come "2004-10-19 10:23:54" e andrà tutto bene. Un'altra opzione potrebbe essere la funzione PostgreSQL to_timestamp() per convertire il tuo timestamp unix in un timestamp:

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