134 votes

Comment insérer la date actuelle dans une requête d'insertion postgresql ?

INSERT into Group (Name,CreatedDate) VALUES ('Test',UTC_TIMESTAMP(), 1);

Voici la requête que j'ai utilisée pour mysql pour insérer la date et l'heure actuelles. Lorsque je l'utilise dans postgresql, j'obtiens l'erreur suivante.

    HINT:  No function matches the given name and argument types. You might need to add explicit type casts.
********** Error **********

ERROR: function utc_timestamp() does not exist
SQL state: 42883

J'ai essayé comme ci-dessous en utilisant now() mais il s'insère comme "2016-07-07 17:01:18.410677" . J'ai besoin d'insérer dans 'yyyymmdd hh:mi:ss tt' format.

INSERT into Group (Name,CreatedDate) VALUES ('Test',UTC_TIMESTAMP(), 1);

Comment insérer la date et l'heure actuelles dans une requête d'insertion de postgresql dans le format ci-dessus ?

185voto

a_horse_with_no_name Points 100769

timestamp (ou date o time colonnes) font PAS ont un "format".

Tout formatage que vous voyez est appliqué par le client SQL que vous utilisez.


Pour insérer l'heure actuelle, utilisez current_timestamp comme indiqué dans le manuel :

INSERT into "Group" (name,createddate) 
VALUES ('Test', current_timestamp);

A afficher cette valeur dans un format différent, modifiez la configuration de votre client SQL ou formatez la valeur lors de la SÉLECTION des données :

select name, to_char(createddate, ''yyyymmdd hh:mi:ss tt') as created_date
from "Group"

Pour psql (le client de ligne de commande par défaut), vous pouvez configurer le format d'affichage par le biais du paramètre de configuration DateStyle : https://www.postgresql.org/docs/current/static/runtime-config-client.html#GUC-DATESTYLE

15voto

Krutika Patel Points 62

Pour la date actuelle, vous pouvez utiliser la fonction now() dans la requête d'insertion postgresql.

Vous pouvez également consulter le lien suivant.

déclaration d'insertion dans postgres pour le type de données timestamp sans fuseau horaire NOT NULL, .

3voto

nidhoeggr09 Points 219

Vous pouvez bien sûr formater le résultat de current_timestamp() . Veuillez consulter les différentes fonctions de formatage dans le manuel officiel de l'UE. documentation .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X