Fórum Ler vários result sets de um único procedure em C# #424025
19/09/2012
0
Tenho um stored procedure no banco de dados SQL Server 2012 que retorna mais de um select, ou seja, vários result sets.
Como faço para obter todos esse resultados via C#? Acho que preenchendo um DataTable não dá certo, pois não se trata apenas de uma tabela, mas várias.
Grata.
Rachel Andrade
Curtir tópico
+ 0Posts
21/09/2012
Edson Oliveira
SqlConnection oSqlConnection = new SqlConnection(connectionString);
oSqlConnection.Open();
SqlDataAdapter oSqlDataAdapter = new SqlDataAdapter("EXEC SUA_PROCEDURE", oSqlConnection);
DataSet oDataSet = new DataSet();
oSqlDataAdapter.Fill(oDataSet);
oSqlConnection.Close();
oDataSet.Tables[0];//Result 1
oDataSet.Tables[1];//Result 2
O seu resultado preencher a coleção de Tables dentro do DataSet.
Gostei + 0
26/09/2012
Rachel Andrade
Realmente eu consegui fazer da forma como você sugeriu, mas fiquei com uma dúvida: tem como as tabelas receberem nomes vindos direto do Stored Procedure. Por exemplo, suponha que meu procedimento faça select nas tabelas A, B e C. Ao preencher o DataSet, as tabelas poderiam ter os nomes A, B e C?
Grata.
Gostei + 0
27/09/2012
Edson Oliveira
Até mais
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)