Bonjour,

J'ai déjà créé ce sujet sur le forum sql server mais on m'a dit que les procédures étaient correctes donc je me permet de venir poster ici. http://www.developpez.net/forums/sho...d.php?t=592228

J'ai cette procédure stocké :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
CREATE PROCEDURE [dbo].[proc1]
As
BEGIN
     insert into matable(champs1) values('pouet')
     select @@identity as resultat1
END
maintenant, j'ai une deuxieme procédure qui appelle la premier :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
CREATE PROCEDURE [dbo].[proc2]
As
BEGIN
     exec proc1
     insert into matable2(champs1) values('pouet2')
     select @@identity as resultat2
END
Mon problème est que quand j'appelle proc2, je recois en retour le résultat de proc1 et je ne veux récupérer que le résultat de proc2.

Voici la partie C#
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
 
                string connectString = ConfigurationManager.ConnectionStrings["test"].ToString();
                SqlConnection conn = new SqlConnection(connectString);
                conn.Open();
 
                SqlCommand cmd = new SqlCommand("proc2", conn);
                cmd.CommandType = CommandType.StoredProcedure;
                SqlDataReader r = cmd.ExecuteReader();
 
                if (r.Read())
                {
                    int test = r.GetInt32(0);
                }
                r.Close();
                conn.Close();
Si quelqu'un pouvait m'expliquer ce qui ne va pas. Merci d'avance.