IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Requête Sql ADO


Sujet :

VB 6 et antérieur

  1. #1
    Futur Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Requête Sql ADO
    Bonjour ,

    Depuis quelque jour , je développe un programme de gestion de stock et j'utilise le contrôle ADODB pour accéder à une base Access

    Voici ma déclaration :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Public Sub connection()
    Set con = New ADODB.connection
    con.CursorLocation = adUseClient
    con.Provider = "microsoft.jet.oledb.4.0"
    con.ConnectionString = App.Path & "\BD\geststock.mdb"
    con.Open
    End Sub
    Mon problelme :
    J'essaie de verifier sur la base de données , l'existance d'un enregistrement avec plusieurs conditions définit sur des zone de texte .

    Voilà mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Dim Rsql  As String
    Call connection
    Set rs = New ADODB.Recordset
    Set rs1 = New ADODB.Recordset
     
    Rsql = "select N°BS,CP,DIAM from BondeSortie where N°BS='" & Val(nbs.Text) & "'  And _ CP='" & code.Text & "'  And _ DIAM='" & Val(diametre.Text) & "' ;"
    rs.Open Rsql, con, adOpenDynamic, adLockOptimistic
     
        If rs.RecordCount = 0 Then
            MsgBox "aucun enregistrement"
        End If
    Mais ceci me généré un problème d'exécution:



    Pourriez vous m'aidez !

    Merci

    Bon fin de weekend

    SBensalah

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    B'jr,

    c'est quoi les underscore : "_" , au milieu de ta requête?

  3. #3
    Membre expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Points : 3 685
    Points
    3 685
    Par défaut
    +1 pour les undescores et je me demande aussi pour N°BS si les ' sont necessaires, je ne suis pas tres sur mais ne faudrait-il pas ecrire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ...where N°BS=" & Val(nbs.Text) & "  And... 

  4. #4
    Futur Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Oui
    Bonjour,

    Merci pour votre réponse si rapide .

    C'est vrai j'ai _ , au debut voulais pas me passer le code seulement si j'ajoute sa. j'ai du peut etre fait des erreurs dans la syntaxe.
    merci
    ! maintenant sa généré un autre problème.

    "type de données incompatible dans l'expression du critère"

    Sachant que les champ :
    CP : texte.
    N°BS: numerique
    DIAM:numérique.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Dim Rsql  As String
    Call connection
    Set rs = New ADODB.Recordset
    Set rs1 = New ADODB.Recordset
     
    Rsql = "select N°BS,CP,DIAM from BondeSortie where N°BS='" & Val(nbs.Text) & "'  And  CP='" & code.Text & "'  And  DIAM='" & Val(diametre.Text) & "' ;"
    rs.Open Rsql, con, adOpenDynamic, adLockOptimistic
     
        If rs.RecordCount = 0 Then
            MsgBox "aucun enregistrement"
        End If
    Merci pour votre aide

    sbensalah

  5. #5
    Futur Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Resolu
    Merci pour vos réponses!

    Pour ceux qui veulent avoir la solution de mon problème :

    j'avais un probleme au niveau du code dans
    _ Premièrement
    et aussi sur les ' '

    le bon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Dim Rsql  As String
    Call connection
    Set rs = New ADODB.Recordset
    Set rs1 = New ADODB.Recordset
     
    Rsql = "select N°BS,CP,DIAM from BondeSortie where N°BS=" & Val(nbs.Text) & "  And  CP=" & code.Text & " And  DIAM=" & Val(diametre.Text) & ";"
    rs.Open Rsql, con, adOpenDynamic, adLockOptimistic
     
        If rs.RecordCount = 0 Then
            MsgBox "aucun enregistrement"
        End If
    Merci à vous

    Bonne journée et bon fin de weekend

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ADO] Requête SQL invalide
    Par CrazySeb dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 21/06/2008, 09h11
  2. Requête SQL via les composants ADO sur une Table Access 97
    Par Didier100 dans le forum Bases de données
    Réponses: 9
    Dernier message: 21/12/2007, 14h43
  3. [ADO] requêtes SQL
    Par care dans le forum Bases de données
    Réponses: 6
    Dernier message: 16/02/2007, 12h44
  4. VBA obtenir texte SQL requète avec ADO
    Par cbleas dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 02/08/2006, 15h08
  5. Access & ADO : Requête SQL multibases ?
    Par MaTHieU_ dans le forum Bases de données
    Réponses: 7
    Dernier message: 15/06/2006, 17h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo