PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

postgreSQL modifie le type de données de la colonne en horodatage sans fuseau horaire

Si create_time est de type TEXT avec une valeur de date valide, il sera plus facile de procéder au changement comme suit (il est conseillé de faire d'abord un vidage de table en tant que sauvegarde) :

-- Create a temporary TIMESTAMP column
ALTER TABLE AB ADD COLUMN create_time_holder TIMESTAMP without time zone NULL;

-- Copy casted value over to the temporary column
UPDATE AB SET create_time_holder = create_time::TIMESTAMP;

-- Modify original column using the temporary column
ALTER TABLE AB ALTER COLUMN create_time TYPE TIMESTAMP without time zone USING create_time_holder;

-- Drop the temporary column (after examining altered column values)
ALTER TABLE AB DROP COLUMN create_time_holder;