PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 11/12/2012 22:55:37

baradji
Membre

Probleme insertion de champs vide dans une colonne date

Bonjour,
j'importe des données de excel vers postgresql,
j'aio fait un controle qui lorsque le champs last_audited n'est pas renseigné, on insert la date actuel, sinon on recupere la valeur du champs.

INSERT INTO organisation(excel_unique_id,last_audited)
VALUES (1,CASE WHEN TRIM('') = '' THEN (select now()::date) ELSE ''::date END);

mais j'ai une rerreur lorsque je lance la reqeute

ERROR:  invalid input syntax for type date: ""

********** Error **********

ERROR: invalid input syntax for type date: ""
SQL state: 22007

quelquun a t'il une idée?

Hors ligne

#2 11/12/2012 23:38:00

gleu
Administrateur

Re : Probleme insertion de champs vide dans une colonne date

Sincèrement, comment PostgreSQL pourrait savoir quelle date vous voulez entrer si vous lui donnez une chaîne vide ? c'est pas une date valide, ça.


Guillaume.

Hors ligne

#3 12/12/2012 18:15:39

baradji
Membre

Re : Probleme insertion de champs vide dans une colonne date

OUF, finalement j'ai casté et ca marche avec ca

INSERT INTO organisation(excel_unique_id,last_audited)
VALUES (1,(SELECT CASE when TRIM('') = '' THEN ('now'::text)::date ELSE (TRIM('')::text)::date END));

merci

Hors ligne

#4 12/12/2012 19:20:07

dverite
Membre

Re : Probleme insertion de champs vide dans une colonne date

De toute façon comme TRIM('') vaut toujours '' le CASE n'a pas lieu d'être.
VALUES(1,now()) fera la même chose.

Hors ligne

Pied de page des forums