Précédent   Forum des professionnels en informatique > Bases de données > Autres SGBD > Informix
Informix Forum d'entraide Informix
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/06/2011, 17h23   #1
Invité de passage
 
Inscription : juin 2011
Messages : 1
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 1
Points : 0
Points : 0
Par défaut Problème du format de date en Informix

Bonjour,

Je développe une application en JDBC qui exécute des requête directement, c'est à dire sans passer les paramètres par PreparedStatement. Le format de date entrée est "jj/mm/aaaa" mais le serveur n'accepte que le format ISO "aaaa-mm-jj".
J'ai essayé à ajouter la variable d'environnement DBDATE=DMY4/ (je suis en Windows XP, donc j'ai fait "set DBDATE=DMY4/") mais ça n'a pas marché. Je ne peux pas utiliser la function "to_date". Est-ce qu'il y a un autre moyen pour convertir la date ou non? Merci beaucoup.
nkhang est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2011, 11h44   #2
Membre confirmé
 
Avatar de blackstreet
 
Inscription : avril 2004
Messages : 268
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 268
Points : 236
Points : 236
Envoyer un message via MSN à blackstreet Envoyer un message via Yahoo à blackstreet
Bonjour,

Il faut ajouter la déclaration de DBDATE dans ton connecteur JDBC.
blackstreet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2011, 14h19   #3
Invité de passage
 
Homme
Développeur Java
Inscription : juin 2011
Messages : 1
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur Java
Secteur : Service public

Informations forums :
Inscription : juin 2011
Messages : 1
Points : 1
Points : 1
Citation:
Envoyé par blackstreet Voir le message
Bonjour,

Il faut ajouter la déclaration de DBDATE dans ton connecteur JDBC.
Merci de votre réponse. En fait, je ne peux pas toucher l'url de la connexion. C'est le serveur qui distribue la datasource. Donc la solution est de modifier l'environnement du côté client. Avez-vous autre moyen pour configurer l'environnement de client?
ngthkh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2011, 13h28   #4
Invité de passage
 
Inscription : août 2011
Messages : 2
Détails du profil
Informations forums :
Inscription : août 2011
Messages : 2
Points : 2
Points : 2
Pourquoi n'utilises-tu pas les fonctions YEAR MONTH et DAY et ainsi formater la date à ta guise?
albator_123 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2011, 11h47   #5
Membre régulier
 
Homme Eric Vercelletto
Achitecte Informix SGBD et applications
Inscription : octobre 2010
Messages : 63
Détails du profil
Informations personnelles :
Nom : Homme Eric Vercelletto
Âge : 51
Localisation : France, Finistère (Bretagne)

Informations professionnelles :
Activité : Achitecte Informix SGBD et applications
Secteur : Conseil

Informations forums :
Inscription : octobre 2010
Messages : 63
Points : 95
Points : 95
Bonjour,

question stupide: comment est déclarée la colonne en question dans ta table?
date ou datetime XXX to YYY ?

lorsque tu dis le seul format accepté est "aaaa-mm-dd", ceci me suggère la possibilité que le type est "datetime year to day". Donc vérifie déjà celà.

Si c'est un type DATE, les variables d'environnement qui agissent sur le format sont, en plus de DBDATE sur ton client:
CLIENT_LOCALE, DB_LOCALE mais aussi GL_DATE. En testant les combinaisons ( pas toujours simple ) tu devrais avoir ta réponse.

Si c'est un type DATETIME, c'est la variable DBTIME qui agira sur les entrées/sorties du client, pas DBDATE.

Il faut que tu en saches plus sur la "collation"de ta base de données avant de commencer. fais comme ceci
Code :
echo "select dbs_collate from sysdbslocale where dbs_dbsname = \"nom-de -ta-base\"" | dbaccess sysmaster
Si la requête ne marche pas, c'est que tu es en Informix SE. Il faut dans ce cas que je retrouve comment obtenir la collation.

et joue avec les valeurs des variables d'environnement client que je t'ai cité.
Un peu pénible, mais tu es obligé


Bon courage
Eric
begooden-it est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h20.


 
 
 
 
Partenaires

Hébergement Web