begin process at 2012 02 15 10:53:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Base de données

 > 

SQL

 > 

requête SQL dans code VB6 : fonction "replace"


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

requête SQL dans code VB6 : fonction "replace"

mercredi 19 septembre 2007 à 10:24:43 | requête SQL dans code VB6 : fonction "replace"

antoine_ferard

Je développe une appli en VB6 avec une base Acces.

J'ai besoin de récupérer via une requête SQL, la somme des achats sur 1 an.

La table ACHATS a une valeur [DACHAT] pour la date de l'achat et [MACHAT] pour le montant de l'achat.

Dans VB6, je créé une variable "Rqte" qui prend pour valeur la requête à exécuter. J'exécute cette requête de la manière suivante : 
       Set Rst1 = New ADODB.Recordset
       Rst1.Open Rqte, BaseConnect, adOpenStatic, adLockReadOnly

Mon problème est que la valeur  [DACHAT] est au format texte (impossible de le changer), et donc je dois la convertir dans la requête pour pouvoir tester que cette date est située dans la dernière année. Je fais comme suit :
      "select sum(machat) from achats where cdate(replace(dachat, ".", "/")) >= (date - 365)"

Il resort une erreur au niveau du "replace".
Désolé si c'est pas très clair mais si qqun à une solution ça serait cool. Merci
mercredi 19 septembre 2007 à 10:32:49 | Re : requête SQL dans code VB6 : fonction "replace"

lolokun

Salut,

Dans les requetes SQL les dates doivent être encadrées de #
Et regarde peut-être du côté de la fonction format..
mercredi 19 septembre 2007 à 10:37:49 | Re : requête SQL dans code VB6 : fonction "replace"

antoine_ferard

j'ai mis celà, désormais le problème est que la variable dachat n'existe pas. pouvez-vous m'aider.

...WHERE cdate('" & Replace(dachat, ".", "/") & "')>=cdate('18/09/2004')
mercredi 19 septembre 2007 à 10:44:41 | Re : requête SQL dans code VB6 : fonction "replace"

PCPT

Administrateur CodeS-SourceS
Réponse acceptée !
salut,
tu confonds la VB et l'SQL....

les fonctions VB sont executées avant la requête.
avant (énoncé) tu la mettais en dur dans la chaîne donc elle ne risquait pas d'être interprétée

ensuite (correction) tu sépares le code (ok) mais avec un nom de champs qui n'existe pas ENCORE puisque la requête n'est pas executée, donc forcément le champs est pris comme une variable qui n'existe pas non plus

tu ne pourras pas faire de test de chaîne proprement à cause des points

le seul moyen ici est de ne pas faire de WHERE, et de filtrer ensuite tes résultats, puisque là tu pourras tester la date et modifier comme tu veux

++


Prenez un instant pour répondre à ce sondage svp
mercredi 19 septembre 2007 à 10:45:55 | Re : requête SQL dans code VB6 : fonction "replace"

Nicko11

Salut,

je pense que tu dois, soit changer le type de données (text vers numeric) soit utiliser un recordset pour recupérer les donnée que tu souhaites manuellement pour effectuer ensuite ton traitement.


mercredi 19 septembre 2007 à 10:46:10 | Re : requête SQL dans code VB6 : fonction "replace"

lolokun

Dachat est un champ de ta table tu peux y accéder avec Rst1.fields("DACHAT')
mercredi 19 septembre 2007 à 10:48:51 | Re : requête SQL dans code VB6 : fonction "replace"

Nicko11

tu as une raison particuliere qui te pousse a choisir le format text pour ce champ.
mercredi 19 septembre 2007 à 11:00:57 | Re : requête SQL dans code VB6 : fonction "replace"

antoine_ferard

oui, je suis obligé de garder un format text pour le champ dachat, je vais finalement retenir la solution de PCPT... merci quand-même... peace


Cette discussion est classée dans : vb6, sql, replace, requête, achats


Répondre à ce message

Sujets en rapport avec ce message

Fonction dans requête SQL sous VB [ par tbbuim1 ] Bonjour à tous,J'ai une requête SQL sous Access qui utilise la fonction Replace et elle marche très bien.sql = "Select * from Table where Champ1 = Rep VB6 ADO SQL [ par JeffC1977 ] Salut...J'ai un petit problème que je ne suis pas capable de régler...Je veux faire une recherche dans un Base de Données Access et demandé dans ma Re VB6 ADO SQL [ par JeffC1977 ] Salut à tous..Je suis incapable de faire une requête afin de demander de me sortir tout les éléments non vide d'une colonne...Je veux que s'il y a du VB6 ADO Requête SQL [ par JeffC1977 ] Salut....J'ai besoin d'aller chercher une information dans une table acces sans faire une recherche...J'ai toujours utiliser les requêtes SQL pour fai VB6 Requête SQL ADO [ par JeffC1977 ] Salut à tous....J'ai un petit problème avec ma requête SQLVoici la requête que j'utilise...RS.Open "SELECT [PointX],[PointY],[PointZ] FROM [POINT] WHE ComboBox sur requête SQL (VB6 + Recordset) [ par dough29 ] Bonjour !Je travaille actuellement sur un projet VB6 avec un accès sur une base Access via les recordset.J'aimerai faire des combobox du même style qu Replace dans SQL via VB6 [ par antoine_ferard ] En VB6, je code ceci :   Rqte = "select replace(vl, ".", ",") from fonds where designation = 'BTP ACTIONS'"   Set Rst3 = New ADODB.Recordset   Rst3.Op Requête SQL dans une boucle VB6? [urgent SVP] [ par chefinf ] J'ai fais un code en vb6 contenant une requête (sql) d'insertion dans une table Access, mais le problème c'est que la requête execute seulement la 1èr Requête SQL sous VB6 [ par jeanluc ] SalutJ?ai problème de requête SQL et cherche une solution :Je cherche à extraire des infos dans une table(ACCESS 2000)Voici ma requêtemaRequete = "SEL Pb requête SQL [ par Patrik ] Bonjour,J'ai 2 tables : - ListeClients (Clt, Magasin, DateCreation) - Achats (NumHa, CLT, Magasin, Montant)Ce que je souhaite obtenir (une seule requê


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,930 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales