хранимой процедуры, которые возвращают несколько результатов:установить имя таблицы результатов в хранимой процедуре
CREATE PROCEDURE [dbo].[GetMultipleTable]
AS
BEGIN
if exists (select something from somewhere where somecondition = 1)
begin
select * from firsttable
end
select * from secondtable
END
при выполнении хранимой процедуры, используйте SqlDataAdapter
«s Fill метода для заполнения DataSet
с несколькими таблицами.
DataSet ds;
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds);
Я могу получить результаты. но я думаю, что мы можем сделать лучше, чем это:
var index = 0;
if(ds.Tables.Count > 1){
DataTable first = ds.Tables[index];
index++;
// do something
}
DataTable second = ds.Tables[index];
// do something
Мне любопытно, можем ли мы получить таблицу по имени вместо индекса. как ..
DataTable first = ds.Tables["first"];
// do something
if(ds.Tables.Containts("second"))
{
DataTable second = ds.Tables["second"];
// do something
}
вопрос: возможно ли установить имя таблицы результатов в хранимой процедуре?
Если невозможно назвать таблицу результатов, возврат пустого результата кажется хорошей идеей. благодарим за советы и обмен. –
Да, это мистическое желание улучшить производительность. Я пытаюсь уменьшить круговое движение в/из базы данных. –