Précédent   Forum du club des développeurs et IT Pro > Autres langages > Général Visual Basic 6 et VBScript > VB 6 et antérieur
VB 6 et antérieur Visual basic 6 et versions antérieures. Avant de poster -> La FAQ VB6, Les tutoriels VB
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 27/12/2012, 01h21   #1
abouilyas
Invité de passage
 
Inscription : avril 2010
Messages : 30
Détails du profil
Informations forums :
Inscription : avril 2010
Messages : 30
Points : 4
Points : 4
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.
abouilyas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2012, 21h17   #2
infosam76
Membre Expert
 
Homme Eric Metz
Développeur informatique
Inscription : avril 2006
Messages : 515
Détails du profil
Informations personnelles :
Nom : Homme Eric Metz
Âge : 36
Localisation : Belgique

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

Informations forums :
Inscription : avril 2006
Messages : 515
Points : 1 601
Points : 1 601
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 ?
infosam76 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 28/12/2012, 14h25   #3
tedo01
Membre Expert
 
Femme
Ingénieur développement logiciels
Inscription : juin 2007
Messages : 625
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France, Ain (Rhône Alpes)

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

Informations forums :
Inscription : juin 2007
Messages : 625
Points : 1 432
Points : 1 432
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) & "#"
tedo01 est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 16h50.


 
 
 
 
Partenaires

Hébergement Web