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

Collection et Stream Java Discussion :

Tableau dans requete SQL


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2008
    Messages : 160
    Par défaut Tableau dans requete SQL
    Bonjour,

    Je developpez une appli en java / sqlserver.
    J'aimerais savoir si il est possible d'inserer dans une requete un tableau dans un clause where.
    Par exemple:
    J'ai un tableau d'entier contenant plusieus valeur. j'aimerais que ma requete retourn toutes la valeur dont les id sont egaux au valeurs du tableau.
    Quelque chose du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Select * from truc where id = monTableau;
    Et voici comment je construit mes requetes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    ...
    connex = ConnexionBase.getConnex();
    	    ResultSet rs;
    	    String requete = "select * from dbo.TYPE_ETABLISSEMENT where TET_ID=?";
    	    PreparedStatement stmt = connex.prepareStatement(requete);
    // J'aimerais ici mettre un tableau.
    	    stmt.setInt(1, idTypeEtab);
    	    rs = stmt.executeQuery();
    	    while (rs.next()) {
    ...
    Merci!

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juillet 2009
    Messages
    131
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Juillet 2009
    Messages : 131
    Par défaut
    Bonjour,

    j'ai eu à faire comme tu veux faire seulement je n'ai pas ça de la même manière, moi je suis passé par un StringBuffer, comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    StringBuffer sql=new StringBuffer();
    sql.append("SELECT * FROM dbo.TYPE_ETABLISSEMENT WHERE TET_ID='");
    		sql.append(codes[0]);
    		sql.append("'");
     
    		for(int i=1;i<codes.length;i++){
    			sql.append(" OR TET_ID='");
    			sql.append(codes[i]);
    			sql.append("'");
    		}
    		return sql.toString();
    Bon après je sais pas si ça répond à ta question, mais ça marche comme ça

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2008
    Messages : 160
    Par défaut
    Oui, je fait une boucle aussi généralement en jouant avec la clause Where mais c'est moche quand meme et ca peut s'avérer un minimum pénible en utilisant les preparedStatement surtout si cela peut être remplacé par une seul ligne =) ?
    D'autres idées?

Discussions similaires

  1. variable dans requete SQL pour delphi
    Par socooooool dans le forum Bases de données
    Réponses: 9
    Dernier message: 25/01/2013, 11h27
  2. Calcul BD mais dans Requete SQL
    Par forzaxelah dans le forum Bases de données
    Réponses: 5
    Dernier message: 13/05/2006, 20h35
  3. [SQL] Problème d'addition dans requete SQL
    Par cheers94wow dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 10/05/2006, 15h05
  4. erreur dans requete Sql
    Par flOZ dans le forum Requêtes
    Réponses: 2
    Dernier message: 02/05/2006, 02h49
  5. Passage de parametres URL dans requete SQL
    Par Fenryl dans le forum ASP
    Réponses: 4
    Dernier message: 14/12/2005, 13h37

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