|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : juin 2011 Messages : 1 ![]() |
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. |
|
|
00
|
|
|
#2 |
|
Membre confirmé
![]() |
Bonjour,
Il faut ajouter la déclaration de DBDATE dans ton connecteur JDBC. |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Développeur Java Inscription : juin 2011 Messages : 1 ![]() |
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?
|
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : août 2011 Messages : 2 ![]() |
Pourquoi n'utilises-tu pas les fonctions YEAR MONTH et DAY et ainsi formater la date à ta guise?
|
|
|
00
|
|
|
#5 |
|
Membre régulier
![]() Eric VercellettoAchitecte Informix SGBD et applications Inscription : octobre 2010 Messages : 63 ![]() |
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 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 |
|
00
|
Copyright © 2000-2012 - www.developpez.com