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 :

Parcourir une table


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 105
    Par défaut Parcourir une table
    Bonjour

    J'ai une table qui a pour clé primaire l'id couplé à un autre champ.
    Je dois faire une procédure stockée qui pour un id donné de cette table récupère toute les lignes, et pour le champ "valeur" de chaque ligne lance une requête.
    Mais mon code ne marche pas ...

    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
    CREATE PROCEDURE abc
    	-- Add the parameters for the stored procedure here
    	@id int
    AS
    BEGIN
     
    	declare @var nvarchar(50)
     
        DECLARE c1 CURSOR FOR 
        SELECT param1 FROM table1 WHERE id = @id
        OPEN c1
        FETCH NEXT FROM c1 INTO @var 
    	WHILE @@FETCH_STATUS = 0
    		BEGIN
    		SELECT DISTINCT name FROM table1 where name LIKE   '%'+@var+'%'
    		END
     
    	CLOSE c1
    	DEALLOCATE c1
    END

  2. #2
    Membre émérite Avatar de Arkhena
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 552
    Par défaut
    Citation Envoyé par Devlin111 Voir le message
    Mais mon code ne marche pas ...
    Des précisions seraient bienvenues...

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 105
    Par défaut
    Ça boucle sans arrêt, et ne renvoie qu'un seul résultat ...

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 105
    Par défaut
    C'est bon, j'ai trouvé mes erreur seul, ma procédure fonctionne, mais je n'arrive pas à récupérer les valeurs retournées dans mon code C#.
    Quelqu'un peut me dire comment faire?

  5. #5
    Invité
    Invité(e)
    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
    CREATE PROCEDURE abc
    	-- Add the parameters for the stored procedure here
    	@id int
    AS
    BEGIN
    
    	declare @var nvarchar(50)
        
        DECLARE c1 CURSOR FOR 
        SELECT param1 FROM table1 WHERE id = @id
        OPEN c1
        FETCH NEXT FROM c1 INTO @var 
    	WHILE @@FETCH_STATUS = 0
    		BEGIN
    		SELECT DISTINCT name FROM table1 where name LIKE   '%'+@var+'%'
    	    FETCH NEXT FROM c1 INTO @var 
    		END
    	CLOSE c1
    	DEALLOCATE c1
    END
    Si t'avance jamais dans la boucle, c'est sûr que tu auras toujours le même résultat indéfiniment !

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 105
    Par défaut
    Oui, c'est bon, j'ai finalement vu que j'avais oublié cette ligne ....

    Mais j'ai un autre problème maintenant (voir au dessus).

    Et sinon, y'a t'il un meilleur moyen que le curseur pour faire cela?

Discussions similaires

  1. Réponses: 1
    Dernier message: 10/05/2007, 14h26
  2. [DAO]Parcourir une table Access en VB / Pb niveau débutant
    Par EtienneG dans le forum VBA Access
    Réponses: 10
    Dernier message: 25/04/2007, 05h35
  3. Parcourir une table
    Par fgrandjean dans le forum Administration
    Réponses: 1
    Dernier message: 04/10/2006, 12h41
  4. [SQL Server] parcourir une Table avec un FOR
    Par papouAlain dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 19/06/2006, 11h49
  5. Réponses: 6
    Dernier message: 28/12/2004, 16h09

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