[SQL Server 2005] problème heure au format 12h

Résolu
sdisp Messages postés 75 Date d'inscription jeudi 27 janvier 2005 Statut Membre Dernière intervention 17 octobre 2008 - 12 août 2008 à 10:57
sdisp Messages postés 75 Date d'inscription jeudi 27 janvier 2005 Statut Membre Dernière intervention 17 octobre 2008 - 1 sept. 2008 à 10:49
Bonjour.

J'ai un soucis avec une requête sur un serveur SQL Serveur 2005 sous Windows 2003 Serveur US.
Je m'explique, j'ai un champ de type datetime (ma_tab.date), et je souhaite faire un select en séparant jour et heure.
J'ai donc fais:

SELECT CONVERT(Char(12), ma_tab.date, 103) as jour, CONVERT(char(8), ma_tab.date, 114) as heure FROM ma_tab

Mon soucis, c'est que l'heure apparait au format 12h et non 24h, bien que dans la doc du CONVERT, il est indiqué que 114 donne l'heure en 24h!

Pour info :
- ma base/table utilise un classement French_CI_AI
- si je fais un open table sous SQL Manager, mon champ date apparait sous ce format : mm/jj/aaaa hh:mm:ss AM/PM
- si je fais select ma_tab.date from ma_tab, mon champ date apparait sous ce format : aaaa-mm-jj hh:mm:ss.mmm  (hh en 12h)

J'ai essayé de faire SET LANGUAGE 'Français' mais ca ne change rien.

Auriez-vous une idée pour résoudre mon problème?

Merci.

4 réponses

sdisp Messages postés 75 Date d'inscription jeudi 27 janvier 2005 Statut Membre Dernière intervention 17 octobre 2008 1
1 sept. 2008 à 10:49
Bonjour.

Me voila, de retour de vacance, et pendant ce temps, ma collègue a résolu le problème :)
Le problème venait bien du format de la date dans le fichier texte contenant les données à importer.
En faite une fois dans ma base, les données étaient toute en AM, ce que je n'avais pas vu.

Merci pour votre aide.
@+
sdisp
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
12 août 2008 à 14:40
Après quelques essais, même problème que toi. Sur un os français et surtout un sqlserver français, l'heure reste au format 24h, même en changeant les options régionales de la machine.

Quant à SET LANGUAGE, visiblement il n'agit que sur les partie alphanumériques de la date (nom du jours, du mois, ...) pas sur les parties numériques.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
sdisp Messages postés 75 Date d'inscription jeudi 27 janvier 2005 Statut Membre Dernière intervention 17 octobre 2008 1
13 août 2008 à 09:44
Bonjour.

Merci Casy pour ta réponse, mais en faite mon soucis, c'est l'inverse, j'ai des heure en format 12h et je les voudrais en 24h (à moins que tu ai fais une erreur lors de la saisie de ta réponse!)

Personne n'a une solution pour ce problème (PS : mon SQL Serveur 2005 est lui aussi en US).

Merci.
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
17 août 2008 à 21:57
non, non, pas d'erreur. J'ai le même soucis que toi.

Tu as tout ton système en US, tu veux des heures au format français mais tu les as toujours au format US

J'ai tout mon système en français, j'ai cherché à avoir les heures au format US, mais je l'ai toujours eu au format français
J'ai juste fait l'opération inverse de toi et j'ai constater le même soucis sans en trouver de solutions.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" />
0
Rejoignez-nous