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

MS SQL Server Discussion :

problème de requete (OR et AND)


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 41
    Par défaut problème de requete (OR et AND)
    Voici le code en question :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    Public Function affichage(ByVal param As String) As DataTable
     
            Dim dt As New DataTable
            Dim word() As String
            word = param.Split(" ")
     
            If param = "" Then
                sql = "Select * from histoSortiePiece, client "
                sql = sql & "where histoSortiePiece.client = client.idClient"
            Else
                sql = "Select * from histoSortiePiece, client "
                sql = sql & "where histoSortiePiece.client = client.idClient"
                For i As Integer = 0 To word.Length - 1
                    sql = sql & " and nomClient like '%" & word(i) & "%'"
                    sql = sql & " or designPiece like '%" & word(i) & "%'"
                    sql = sql & " or reference like '%" & word(i) & "%'"
                Next
            End If
            oAcces.fillTable(sql).Fill(dt)
            Try
                Return (dt)
            Catch ex As Exception
     
            End Try
            'Return (oAcces.consult(sql))
        End Function
     
    la variable "Param" est renseigné par un mot quelconque. Si je tape "MONNET" qui est un nom de client, il m'affiche la ligne correspondante. Mais je tape "rette47" qui est une reference, il me met les lignes en desordre qui concerne ts les clients alors que ce n'est pas le cas. Aidez moi s'il vous plait!

  2. #2
    Membre averti
    Inscrit en
    Juin 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 41
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
     
    Public Function affichage(ByVal param As String) As DataTable
     
            Dim dt As New DataTable
            Dim word() As String
            word = param.Split(" ")
     
            If param = "" Then
                sql = "Select * from histoSortiePiece, client "
                sql = sql & "where histoSortiePiece.client = client.idClient"
            Else
                sql = "Select * from histoSortiePiece, client "
                sql = sql & "where histoSortiePiece.client = client.idClient"
                For i As Integer = 0 To word.Length - 1
                    sql = sql & " and nomClient like '%" & word(i) & "%'"
                    sql = sql & " or designPiece like '%" & word(i) & "%'"
                    sql = sql & " or reference like '%" & word(i) & "%'"
                Next
            End If
            oAcces.fillTable(sql).Fill(dt)
            Try
                Return (dt)
            Catch ex As Exception
     
            End Try
            'Return (oAcces.consult(sql))
        End Function
    la variable "Param" est renseigné par un mot quelconque. Si je tape "MONNET" qui est un nom de client, il m'affiche la ligne correspondante. Mais je tape "rette47" qui est une reference, il me met les lignes en desordre qui concerne ts les clients alors que ce n'est pas le cas. Aidez moi s'il vous plait!

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 77
    Par défaut
    je pense que c'est que des "and" qu'il te faut dans tes conditions

  4. #4
    Membre averti
    Inscrit en
    Juin 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 41
    Par défaut
    oui mais si je mets ça :

    je mets le nom du client, il va rien afficher

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 77
    Par défaut
    euuh ... exprime ta requête en français alors ... pour voir si ça colle au code.
    ton select tu veux qui renvoie koi ?

  6. #6
    Membre averti
    Inscrit en
    Juin 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 41
    Par défaut
    ok

    je m'explique :

    cette requete permet une selection dans deux tables liées, dependant d'un paramètre quelconque. Qd je tape un mot comme "MERR" par ex, il va rechercher sur chaque champs. S'il trouve, il affiche les lignes où cette partie de mot y est. Tu comprends?

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 77
    Par défaut
    peut être ...je sais pas attend on va voir si tu fait ça sa te va ? :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    sql = "Select * from histoSortiePiece, client "
                sql = sql & "where histoSortiePiece.client = client.idClient"
                For i As Integer = 0 To word.Length - 1
                    sql = sql & " and ( nomClient like '%" & word(i) & "%'"
                    sql = sql & " or designPiece like '%" & word(i) & "%'"
                    sql = sql & " or reference like '%" & word(i) & "%' )"

  8. #8
    Membre averti
    Inscrit en
    Juin 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 41
    Par défaut
    T'es vraiment un dieu toi! Qd j'ai un pb, c'est toujours toi qui me debloque! Merci du font du coeur! ça marche comme sur les roulettes! Merci!

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

Discussions similaires

  1. [EJBQL] Problème de requete
    Par rivierem dans le forum Java EE
    Réponses: 3
    Dernier message: 16/10/2004, 10h05
  2. Problème sous requete MySQL
    Par gavelin dans le forum Langage SQL
    Réponses: 3
    Dernier message: 20/07/2004, 10h36
  3. Problème de Requete...
    Par sebiv dans le forum Langage SQL
    Réponses: 6
    Dernier message: 29/04/2004, 16h21
  4. Problème de requete avec Innodb
    Par silef dans le forum Requêtes
    Réponses: 3
    Dernier message: 14/04/2004, 12h54
  5. Problème de requete multis-selections
    Par tripper.dim dans le forum SQL
    Réponses: 9
    Dernier message: 03/09/2003, 13h08

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