|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : octobre 2005 Messages : 15 ![]() |
Je ne parviens pas à convertir les champs texte DATE_1, DATE_2 en date pour qu'ils ne se trient pas alphabétiquement.
SELECT Numero, TITRE, DATE_1, DATE_2 FROM Rapport WHERE ... ORDER BY DATE_1 ASC"); J'ai essayé en remplaçant DATE_1 par ceci : CAST(DATE_1 AS DATE) Erreur de syntaxe (opérateur absent) dans l'expression 'CAST(DATE_1 AS DATE)'. CONVERT( DATE, DATE_1, 101 ) Fonction 'CONVERT' non définie dans l'expression Si quelqu'un a la solution...merci à lui! |
|
|
00
|
|
|
#2 |
|
Provisoirement toléré
Inscription : juin 2003 Messages : 2 622 ![]() |
__________________
Pensez au bouton
|
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : octobre 2005 Messages : 15 ![]() |
Merci, à vrai dire je ne sais pas la version de MySQL dont il s'agit mais elle n'accepte non plus cette f°.
erreur : javax.servlet.ServletException: [Microsoft][Pilote ODBC Microsoft Access] Fonction 'STR_TO_DATE' non définie dans l'expression. |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() ![]() Inscription : avril 2004 Messages : 734 ![]() |
Bonjour,
As-tu tenter de faire une brutale comparaison à grand coup de SUBSTRING pour palier au manque ?
__________________
Pensez au tag
|
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : octobre 2005 Messages : 15 ![]() |
L'idée semble bonne mais lorque j'essaye, il me renvoie
javax.servlet.ServletException: [Microsoft][Pilote ODBC Microsoft Access] Fonction 'SUBSTRING' non définie dans l'expression. Pour une raison qui m'échappe, dès qu'une fonction est un peu évoluée elle semble inconnue! |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() ![]() Inscription : avril 2004 Messages : 734 ![]() |
Là, il faut vraiment connaitre la version.
Essaies dans un premier temps de te connecter au serveur mysql et de refaire la requête directement depuis un client MySQL. MySQL Query Browser ou le client en ligne de commande sont de bonnes références. Là, observe le résultat pour voir s'il y a effectivement la même erreur. Si tel n'est pas le cas, le problème viendrait du middleware. La solution serait de passer par une fonction SQL équivalente (SUBSTR peut être). Ensuite, tu peux connaitre la version du serveur en lançant la requête SELECT VERSION().
__________________
Pensez au tag
|
|
|
00
|
|
|
#7 | |
|
Membre Expert
![]() Inscription : février 2006 Messages : 953 ![]() |
Citation:
A moins que le pilote ODBC ne soit pas le bon. |
|
|
|
00
|
|
|
#8 |
|
Invité régulier
![]() Inscription : octobre 2005 Messages : 15 ![]() |
Il s’agit d’une db access et il semble que ce soit limité parce que dès que j’essaie une f°, je reçois un message du type : Fonction 'xxx' non définie dans l'expression. Je ne peux même pas exécuter VERSION() pour répondre à Adjanakis.
|
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() ![]() Inscription : avril 2004 Messages : 734 ![]() |
Forcément, c'est une fonction réservée à mysql. Je ne connais pas les équivalents Access mais à croire e site de sqlpro, il n'est pas évident de le trouver. Si un modérateur passe, ce serait peut-être pas mal de déplacer le sujet...
__________________
Pensez au tag
|
|
|
00
|
|
|
#10 |
|
Invité régulier
![]() Inscription : octobre 2005 Messages : 15 ![]() |
J'ai enfin trouvé la cause du problème. Il faut utiliser CDate mais ça ne fonctionne qu'à condition que TOUS les enregistrements puissent être convertis (pas vides dans mon cas)
SELECT NUMERO, DATE_EN, DATE_VAL FROM ETHIC WHERE DATE_EN <> '' ORDER BY CDATE([DATE_EN]) Merci à ceux qui ont pris la peine de me répondre. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com