begin process at 2012 02 16 12:05:18
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Base de données

 > 

Access

 > 

RecordCount


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

RecordCount

jeudi 12 juillet 2007 à 18:23:51 | RecordCount

toofar

Bonjour,

J'ai créé un recordset à l'aide d'une requête SQL et je l'ai paramétrée en fonction de plusieurs listes de choix.

Seulement le RecordCount me compte à chaque fois un seul enregistrement alors que celui ci en compte plusieurs... (Pour preuve le résultat est différent quand je l'execute dans SQL)
Cela viendrait il du fait que j'utilise des liste de choix pour conditionner ma requête ??

Voici mon code :

Dim rs As DAO.Recordset
    Set rs = db.OpenRecordset("SELECT AGREMENTS.OBJECTID " & _
                        "FROM Agrements " & _
                        "WHERE (((AGREMENTS.MILLESIME)=" & Me.zl_millesime.Column(0) & ") " & _
                        "AND ((AGREMENTS.DATE)=#" & stock_date & "#) " & _
                        "AND ((AGREMENTS.dossier)=" & Me.zl_dossier.Column(0) & ") " & _
                        "AND ((AGREMENTS.cave)=" & Me.zl_cave.Column(0) & ") " & _
                        "AND ((AGREMENTS.cuve)=""" & Me.zl_cuve.Column(0) & """));")

Voyez vous une quelconque erreur !

Merci
jeudi 12 juillet 2007 à 18:47:38 | Re : RecordCount

Exploreur

Membre Club
Salut,

Moi je pense que dans ta requête, il doit te manquer des qui doivent entourés tout ce qui "touche" à du carractère(chaine)...

A+
Exploreur

 Linux a un noyau, Windows un pépin

 

jeudi 12 juillet 2007 à 19:14:40 | Re : RecordCount

jack

Administrateur CodeS-SourceS
Salut
- Puisque ta requète ne s'adresse qu'à une seule table, pas la peine de la préciser avant le nom des champs
- Abondance de parenthèse nuit à la compréhension.
- Comme le dit Exploreur, il doit manquer des ' pour encadrer les chaines.
- SQL accepte l'encadrement de chaine avec " mais aussi '. Ca tombe bien car le mélange SQL et VB deviendrait bien lourd.
- Ton champ DATE est mal choisi car il ressemble à un mot clé des langages. Dans ce cas, encadre-le avec des crochets droits [ et ] afin que le moteur ne se trompe pas.
- Il est important de respecter la casse des noms des champs (DATE est en maj alors que les autres en min : bizarre)

Voilà ce que pourrait donner ta requète en supposant que tous tes champs soient définis comme des chaines (sauf DATE apparemment) :

Set rs = db.OpenRecordset( _
      "SELECT OBJECTID " & _
        "FROM Agrements " & _
       "WHERE MILLESIME = '" & Me.zl_millesime.Column(0) & "' " & _
         "AND [DATE] = #" & stock_date & "# " & _
         "AND dossier = '" & Me.zl_dossier.Column(0) & "' " & _
         "AND cave = '" & Me.zl_cave.Column(0) & "' " & _
         "AND cuve = '" & Me.zl_cuve.Column(0) & "';")

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
jeudi 12 juillet 2007 à 23:28:11 | Re : RecordCount

jmfmarques

Membre Club
Réponse acceptée !

Bonsoir (et salut à Jack et à Exploreur),

Voici ce qui me trouble :

"Pour preuve le résultat est différent quand je l'execute dans SQL"

Nuance !
Quand tu lances ta requête directement, ce sont des données, que tu mets dans ta requête, pas des variables...

Il suffit que l'une seule de ces données soit autre (même a un caractère près) que le contenu de la variable correspondante pour que le résultat ne soit pas le même en lançant directement ta requête (avec des valeurs) et en la lançant avec des variables ..

envoie plutot le texte de ta requête dans une textbox, copie-le et lance ensuite cette requête telle quelle directement depuis SQL... tu en auras ainsi le coeur vraiment net..

vendredi 13 juillet 2007 à 09:41:05 | Re : RecordCount

toofar

Merci pour vos réponses !!!
vendredi 13 juillet 2007 à 09:44:59 | Re : RecordCount

moustachu

Membre Club
Réponse acceptée !
Salut, Et si tu fais un rs.MoveLast avant de faire ton recordcount, ça ne marche pas mieux ? Souvent, il faut s'être positionné sur le dernier enreg pour savoir combien il y en a.

++
 Moustachu
vendredi 13 juillet 2007 à 09:58:14 | Re : RecordCount

toofar

Re.
stock_date est une variable date qui permet de conserver la date d'une liste de choix et qui la transforme à l'aide d'une fonction (jj/mm/aaaa -> mm/jj/aaaa). Car SQL lit les dates à l'anglosaxonne...


vendredi 13 juillet 2007 à 10:36:09 | Re : RecordCount

toofar

Salut jmfmarques, j'ai suivi tes conseils en envoyant le résultat de la requête dans une TextBox puis en recopiant celle-ci dans une SQL, il me trouve le bon nombre d'enregistrements et non pas 1 seul enregistrement quel que soit le nombre exact...

Merci


Cette discussion est classée dans : and, column, recordcount, zl, agrements


Répondre à ce message

Sujets en rapport avec ce message

Création tâches Outlook 2007 depuis Excel 2007 [ par seblap47 ] Bonjour, Comment créer une tâche dans un autre dossier que celui par défaut dans outlook ? Je voudrais créer mes taches dans un dossier nommé "Antiv Janus Schedule and Timeline Controls for .NET [ par etoile100100 ] Bonjour, Comment peut-on se bénéficier des samples de janus? Mon probléme est que je ne peut pas ajouter un sample de janus à mon application [^^co Faire un drag and drop de plusieurs lignes entre 2 grids [ par Maroxye ] Bonjour, Ma question est dans le sujet. J'ai trouvé sur le net comment faire un drag and drop entre 2 datagridview mais ça fonctionne uniquement sur Pouvez vous m'aider à corriger mon erreur svp [ par BitterSweetLife ] j'ai fais un erreur mais j'arrive pas à la corriger Sub jeu() Dim x As Integer Dim y As String Dim s As Integer x = Int(Rnd() * 0) + 2 s = InputBox SELECT SYNTAXE ERROR [ par abouassem ] BON SOIR QUELQ'un peut_il m'aider SVP Corriger moi le code suivant [color=blue]Private Sub cmdUpdate_Click() On Error GoTo UpdateErr Dim SQL As New requete [ par espsl25 ] bonjour les requêtes ci après s'exécutent mais elles ne retournent ps des données, j'arrive pas à comprendre pourquoi set rst3 = dbs.OpenRecordset( wpf / drag and drop [ par EdOster ] Bonjour, je cherche un exemple de 'drag and drop', tres simple : selectionner des fichiers dans un file manager (Windows Explorer or PowerDesk), drag requette imbriqué [ par saadouli7 ] bonjour, j'ai deux requettes :la premiere consiste à determiner le bloc et le nombre des séances que lui est affectées pendant un jour donné pour une PRobleme d'icone de drag and drop [ par foufidou ] Bonjour Tout le monde, j'ai une treeview dans laquel je fais un drag drop d'element, aucun probleme la dessus tout va nickel. ce qui marche pas c'est


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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 : 2,075 sec (3)

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