Conversion de date dans une requete SQL d'une page ASP !

pcrombez Messages postés 1 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 13 avril 2005 - 13 avril 2005 à 15:55
cs_Yopyop Messages postés 586 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 10 février 2010 - 14 avril 2005 à 12:22
Bonjour, suis débutant en asp et sql et j'ai un petit soucis donct je ne me sors pas.
ca serait chouette d'avoir de l'aide de votre part car apperrement vous maitrisez !!


Voilà:
Soit une table sql avec un champ nommé "date_acquit" de type Char de 10 de la forme "jj-mm-ssaa" ET un champ "heure_acquit" de type Char de 10 de la forme "hh:nn:ss".
Soit un formulaire avec 2 dates et 2 heures que je recupère, donc 2 strings sous la meme forme "écrite" que dans la table.


But du jeu, afficher les enreg de la table contenus dans la fourchette temporelle et horaire.
pour fair ele tes dans le where suis obligé je pense de repasser en mode date pour sql.


J'essaie de convertir toutes mes infos mais ca plante avec le CONVERT que apperremment je n'utilise pas bien.
J'ai converti mes string date et heures du formulaire selon (traces reecrites dans ma page asp ...):
1-3-2005, type = String
3/1/2005, type = Date
13-12-2005, type = String
12/13/2005, type = Date
9:12:5, String
5:12:09 AM, type = Date
12:6:26, String
12/31/1899 2:06:12 AM, type = Date
Donc je recupere bien via 2 petites fonctions ASP mes Variables en type date ...


Petite question d'ailleurs au passage, qu'est que c'est que ce 1899 dans ma 2ème date convertie ??? ca n'apparait pas dans la 1ère date convertie !!!???


Et donc le morceau de mon select qui me pose pb !!!!!


je construis mon str_sqlWhere comme ca:

sql_strWhereAcquit = "action='ACQUIT' " & _
"AND " &_
"CONVERT (datetime, date_acquit, 102) >=
CONVERT (datetime, " & ddatedeb & ", 102) " & _
"AND " &_
"CONVERT (datetime, date_acquit, 102) <=
CONVERT (datetime, " & ddatefin & ", 102) "
....
pareil pour l'heure ...


date_acquit est donc jj-mm-ssaa version francaise en char ds la table et il ne veut pas convertir vers un type date !!!!
Pourquoi ?
Comment au sein de la requete converser cette string de date francaise vers une string de date anglaise car je pense que c ca qui bloque la conversion ..????
Pensez vous qu'il reussira à converser ma date (de type "date") ddatedeb et ddatefin ???
En fait j'en sais rien la page plante au niveau du 1er convert !!!


Merci de votre aide !
cordialement
patrice


PS: a savoir, c un serveur au boulot qui stocke la page, je ne peux ni modifier le type des champs de la table, ni le faire tourner en version francaise..!!!
A voir également:

1 réponse

cs_Yopyop Messages postés 586 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 10 février 2010 1
14 avril 2005 à 12:22
Salut,

12:6:26, String
12/31/1899 2:06:12 AM, type = Date
Comme tu convertis une heure en date, et que tu ne spécifie pas la date, le convert en prend une "au hasard"

Il me semble que tu dois faire une double conversion.
Tes dates sont en string dans ta base donc ok, tu dois les convertir en date.
Mais en plus, elles sont au format francais ->buuuuuuuuuuuuuuuug.

1/4/2005 il va te le convertir, mais 13/12/2005 buuuuug (ou 12/13/2005 je sais plus).

Tu dois d'abord convertir tes dates string FR au format string américain et ensuite les convertir en type date.

... je crois

yopyop
0
Rejoignez-nous