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.NET Discussion :

Recherche sur table sql


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juin 2010
    Messages : 257
    Par défaut Recherche sur table sql
    Bonjour à tous,

    Je veux réaliser une recherche qui en fonction du mot rentré dans la zone de recherche, la recherche se fasse dans toutes les colonnes d'une table ?

    De plus ma table comporte beaucoup de champs, donc je cherche une solution qui m'éviterai de rentrer pour chaque champ :"where (champ1 like % var) or (champ2 like %var) ... "

    Est-ce que cela serai possible ??
    Merci d'avance

    Précision:
    Cela serai pour une application VB.net pour ce qui ne l'aurait pas compris ^^

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    50
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Maroc

    Informations forums :
    Inscription : Mai 2008
    Messages : 50
    Par défaut
    Je ne crois pas qu'il y a une requête qui fait ça ,alors tu doit gérer ça au niveau de votre code vb.net.

  3. #3
    Membre Expert Avatar de hunteshiva
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Février 2010
    Messages
    1 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2010
    Messages : 1 069
    Par défaut
    Comment s'appellent tes colonnes?

    s'ils s'appellent Champ1, Champ2, Champ3, ....
    tu peut générer une boucle pour créer ta requête SQL
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
            Dim MaRequeteSQL As String = Nothing
     
            For i As Integer = 1 To 5
     
                If MaRequeteSQL = Nothing Then
                    'Si la chaine est vide on lui met une instruction particuliére
                    MaRequeteSQL = "where (champ1 like % var)"
                Else
                    'Sinon on ajoute les autres colonnes
                    MaRequeteSQL = MaRequeteSQL & "or (champ" & i & " like %var) "
                End If
     
            Next
    a toi de voir sa sa te convient ou si il y a des chause a rajouter,
    je l'ais fait vite fait, fait attention aux espace, et le "1 To 5" est p-e à revoir pour ton cas"
    *Juste une idée*

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juin 2010
    Messages : 257
    Par défaut
    Pas mal ton idée hunteshiva mais malheureusement mes colonnes ne sont pas nommées "champ1,champ2..." cela aurai été trop beaux
    Leurs noms s'est par exemple "Nomcandidat, Prenomcandidat..."
    Or ton idée ma donnée une autre idée ce qui m'amène a vous poser une autre question, Peut-ton faire la même méthode avec les colonnes de ma base??

    C'est-à-dire incrémenter le numéro de colonne de la base sachant que j'ai une base locale CE ???

    Si quelqu"un trouve une solution, je suis tout ouie ^^

    Merci d'avance

  5. #5
    Membre Expert Avatar de hunteshiva
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Février 2010
    Messages
    1 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2010
    Messages : 1 069
    Par défaut
    Peut-ton faire la même méthode avec les colonnes de ma base??

    C'est-à-dire incrémenter le numéro de colonne de la base sachant que j'ai une base locale CE ???
    C'est à dire ....

    tu en a trop dit ou pas asse
    *essaye de l'imager par du code ou des screen*

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juin 2010
    Messages : 257
    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
     
     Dim MaRequeteSQL As String = Nothing
     
            For i As Integer = 1 To 5
     
                If MaRequeteSQL <> Nothing Then
     
                    MaRequeteSQL = MaRequeteSQL & "or (column(i) like %var) "
     
                else 
     
                    msgbox("Entrez une valeur avant de lancer la recherche !")
     
                End If
     
            Next
    Avec column(i) qui correspond aux colonnes de ma base !

    Tu vois le truc ??

Discussions similaires

  1. Boucle while avec action sur table SQL
    Par kamikazbe dans le forum JDBC
    Réponses: 4
    Dernier message: 01/06/2007, 11h46
  2. [Formulaire] recherche sur tables liées
    Par djudju2000 dans le forum IHM
    Réponses: 2
    Dernier message: 13/02/2007, 10h38
  3. [WD11]Recherche sur table
    Par arnaud_verlaine dans le forum WinDev
    Réponses: 1
    Dernier message: 31/01/2007, 13h11
  4. URGENT: tri sur table SQL
    Par clairette dans le forum Langage SQL
    Réponses: 4
    Dernier message: 26/05/2005, 14h53

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