Bonjour

J'ai créé au sein d'une procédure stockée Fill_Tempo une table temporaire globale ##tableTemp. Voici mon code :

Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
ALTER PROCEDURE [dbo].[Fill_Tempo]
AS
BEGIN
	create table ##tableTemp(donneesGeog GEOGRAPHY)
	DECLARE @geom GEOGRAPHY
        /* Va chercher les données à stocker dans @geom, grâce à
        la fonction get_Geom_WKT_WKB() */
	SET @geom = dbo.get_Geom_WKT_WKB()
	insert into ##tableTemp values (@geom)
	select * from ##tableTemp
END

Ensuite, dans mon code C#, je souhaite récupérer les données de la table temporaire ##tableTemp. Cette dernière ne contient qu'une ligne, et un seul champ :

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
 
// Créer une commande sql
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = con;
                cmd.CommandText = "SELECT * FROM ##tableTemp";
                cmd.CommandTimeout = 1000;
 
                // Ouvrir la connexion
                con.Open();
 
                // Récupérer les données dans le dataset
                //SqlDataAdapter sda = new SqlDataAdapter();
                //sda.SelectCommand = cmd;
                //DataSet data = new DataSet();
                //sda.Fill(data);
Il me pose problème sur la dernière ligne, en me disant que la table ##tableTemp n'existe pas...

Comment je peux faire pour pouvoir accéder à cette table dans mon code C#???