Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Invité régulier
    Inscrit en
    avril 2010
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : avril 2010
    Messages : 34
    Points : 6
    Points
    6

    Par défaut Requete selon conditions

    salut,

    j'ai ma table Access liée à vb6 via ADO.
    j'ai dans cette table deux champs:
    [date_emprunt] et [date_retour]
    je veux afficher les enregistrements dont le champ [date_retour] dans la table est vide et la différence entre la date système et la valeur du champ [date_emprunt]>=15 jour

    j'ai essayé:
    Code :
    1
    2
     
    sql="select * from emprunt where code='" & code.text & "' and date_retour="" and '" & datediff("d",date,date_emprunt)>=15 & "'
    Merci.

  2. #2
    Expert Confirmé

    Homme Profil pro Eric Metz
    Développeur informatique
    Inscrit en
    avril 2006
    Messages
    932
    Détails du profil
    Informations personnelles :
    Nom : Homme Eric Metz
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Santé

    Informations forums :
    Inscription : avril 2006
    Messages : 932
    Points : 3 199
    Points
    3 199

    Par défaut

    Perso j'essaierai :

    Code :
    1
    2
     
    sql="select * from emprunt where code='" & code.text & "' and date_retour is null and date_emprunt = '" & datediff("d",date,date_emprunt)>=15 & "'
    Mais j'ai un gros doute sur l'emploi du datediff. Il existe des fonctions propres à chaque type de DB (Access, SqlServer, ....)

    Sur quelle type de DB travaillez vous ?

  3. #3
    Membre Expert
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    juin 2007
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : juin 2007
    Messages : 670
    Points : 1 427
    Points
    1 427

    Par défaut

    Bonjour,
    Avec le code d'abouilyas, en prenant par exemple code.text="ABC", on obtient la requête SQL suivante :
    Code :
    select * from emprunt where code='ABC' and date_retour =" and '?'
    A la place du ?, je ne sais pas ce que VB peut donner car il ne connait probablement pas la variable date_emprunt.

    La bonne syntaxe dans Access serait (aujourd'hui)
    Code :
    select * from emprunt where code="ABC" and date_retour is null and date_emprunt <= #12/13/2012#
    ce qui s'obtient par le code VB :
    Code :
    sql="select * from emprunt where code=""" & code.text & """ and date_retour is null and date_emprunt <= #" & DateAdd("d", -15, Date) & "#"

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •