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

Django:Zmień TimeField na DateTimeField w models.py

To dlatego, że time nie można przekonwertować (przesyłać) na timestamp (ani ich warianty związane ze strefą czasową) w PostgreSQL. Np. to również się nie powiedzie:

SELECT 'now'::time::timestamp

W takich przypadkach powinieneś użyć USING klauzula w Twojej ALTER TABLE oświadczenie (jeśli możesz je edytować bezpośrednio):

ALTER TABLE [ IF EXISTS ] [ ONLY ] name [ * ]
ALTER [ COLUMN ] column_name
[ SET DATA ] TYPE data_type [ COLLATE collation ] [ USING expression ]

Twoje zapytanie będzie wyglądać np.:

ALTER TABLE "my_model"
ALTER COLUMN "column_name"
SET DATA TYPE TIMESTAMP WITH TIME ZONE USING 'yesterday'::date + "column_name"


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy istnieje sposób na rzucenie typu danych postgresql 9.3, aby mógł wpływać tylko na jedną stronę?

  2. Jak usunąć wszystkie tabele z bazy danych PostgreSQL?

  3. ALTER zapytanie bardzo wolno na małej tabeli w PostgreSQL

  4. Pobieram COUNT z sqlalchemy

  5. Postgresql throw null wartość w kolumnie narusza ograniczenie not-null podczas korzystania z relacji oneToMany w JPA