Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : requete avec des dates [ Base de données / SQL ] (gargourifahmi)

mercredi 22 novembre 2006 à 00:42:00 | requete avec des dates

gargourifahmi

Salut, J'ai besoin d'une requete sql qui doit comparer la date de naissance des clients d'une table avec la date actuelle. cette version n'est pas acceptée en vb.net2003: sql = "select * from Customers where date de naissance <= CONVERT(DATETIME,'" & current_date & "',103)""" Est ce qq'un peut m'aider SVP

mercredi 22 novembre 2006 à 03:52:02 | Re : requete avec des dates

jack

Administrateur CodeS-SourceS
Salut
Déjà dit maintes et maintes fois :
Si le champ "date de naissance" compose réellement des espaces, il faut encadrer le nom du champ avec des crochets [ et ]
Si le champ est, dans la définition de la DB, un champ de type 'date générale', il faut faire les tests avec des # comme encadrement.
Ce qui donnerait :
   sql = "select * from Customers " & _
         " where [date de naissance] <= '#' + CONVERT(DATETIME, current_date, 103) + '#'"

Mais il faudra vérifier à quel monde appartient la variable 'current_date' :
Appartient-elle à ton programme VB ? ou à SQL ?
Si c'est une variable VB, il faudra revoir la syntaxe, du genre :
         " where [date de naissance] <= '#' + CONVERT(DATETIME, " & current_date & ", 103) + '#'"

Astuce si tu as à faire avec des champs de type texte :
Il faut bien dissocier les séparateurs de VB avec ceux de SQL.
Puisqu'il y a confusion possible entre les " de VB et ceux de SQL, SQL autorise d'utiliser les symboles ' comme encadrement des chaines. De cette manière, la syntaxe VB est allégée, plus besoin de doubler les ".
Exemple :
   sql = "select * from maTable Where Nom = 'toto la riflette'"


Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)

samedi 25 novembre 2006 à 22:36:26 | Re : requete avec des dates

gargourifahmi

salut Jack, Si vous etes la ou personne qui sait une solution a ce pb de requetes date en vb.net voila j'ai essayé cette requete mais ça ne marche pas encore sql = "select Customers.* from Customers where [date de naissance] = '#' + CONVERT(DATETIME, '" & TextBox1.Text & "', 103) + '#'" Merci d'avance.

dimanche 26 novembre 2006 à 02:46:00 | Re : requete avec des dates

jack

Administrateur CodeS-SourceS
Salut
NB : je demande à ce qu'on ne m'envoie pas de message privé. Le fait de réponse à ce post suffit à m'avertir.
La question est : Comment as-tu déclaré ton champ [date de naissance] dans ta DB ?
Si tu utilises la conversion DATETIME sous SQL, il faut impérativement que ton champ soit déclaré en type date

La conversion SQL n° 103 = "dd/mm/yyyy"
A mon avis, il faut demander cette conversion à VB, ce sera plus simple :
Dim maDate As String
maDate = Format(TextBox1.Text, "dd/mm/yyyy")

Ensuite, dans ta syntaxe SQL, si ton champ est déclaré en type :
- Date : where [date de naissance] = #" & maDate & "#"
- Texte : where [date de naissance] = '" & maDate & "'"

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accroit quand on



Cette discussion est classé dans : date, sql, requete, dates, naissance


Répondre à ce message

Sujets en rapport avec ce message

sql et les dates [ par alonsyl ] bonjour,je voudrais etre informer un mois a l'avance de la date de naissance des membres de mon service (j'utilise access).la rqte que je devrais fair Ma requete SQL ne veut pas de l'annee 2005 ! [ par foliop ] salutdans mon programme jaffiche des resultats en fonction de date :where date > #01/01/2004# and date celle marche parfaitement et me donne les resul probleme de variable date dans une requete dans une base de type sql serveur [ par samourai_alex ] G un problème avec des requete SQL effectuée grace à un recordset sous vb6.0 et sous une base de type sql serveur (pervasive sql pour ceux qui connais Probleme de date entre requete sql et access [ par malzairean ] Bonjour,J'ai une requete SQL que j'envoie a une base access sous une appli VB, le probleme c'est que sous VB je recupere la date sous format jj/mm/aaa Requete SQL [ par funtay ] bonjour, j'ai un problème de syntaxe dans une requete SQL.En fait ,j'ai une date de début (c'est un maskedbox( txt_datedeb)) et une date de fin (c'est [SQL] URGENT svp pour une requete de groupement [ par Dinbougre ] SVP c vrmt urgent et j'avance pas depuis vendredig une table CA(date, total)la date est de type jj/mm/aaaaje fais une requete qui affiche le tous les Requetes SQL [ par PaulScholes ] Je fait 2 requetes sous Access97, elle sont presque identiques, pourtant, l'une marche et pas l'autre, pourquoi ?requete N°1 :Set MyRS = MyDB.OpenReco Requete SQL... Traiter les données directement dans la requete [ par C17 ] Salut à tous, Alors voilà le problème: Je travaille sous VB avec une table access 'TTest' par exemple avec un champ 'CDate' qui contient une date. Po Problème avec les dates anglaises et françaises en passant par access via une requête sql !!! [ par neokeel ] Ben moi j'comprend plus rien avec cette histoire car tous mes formats date sont au format FRANCAIS (jj/mm/aaaa) dans mon code VB et dans ma table acce REQUETE SUR LES DATES !!!!!!!! [ par asd ] Bonjour a tous,Je m'arrache les cheveux pour ecrire une requete avec comme criteres les dates...J'ai un fichier de "TARIFS" qui ont une date de debut


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,265 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.