У меня есть следующая хранимая процедура
Create procedure psfoo ()
AS
select * from tbA
select * from tbB
Затем я получаю доступ к данным следующим образом:
Sql Command mySqlCommand = new SqlCommand("psfoo" , DbConnection)
DataSet ds = new DataSet();
mySqlCommand.CommandType = CommandType.StoredProcedure;
SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter();
mySqlDataAdapter.SelectCommand = mySqlCommand;
mySqlDataAdapter.Fill(ds);
Теперь, когда я хочу получить доступ к моим таблицам, я должен это сделать:
DataTable datatableA = ds.Tables[0];
DataTable datatableB = ds.Tables[1];
Свойство Tables dataset также получает аксессор по строке (вместо int).
Можно ли указать имя таблиц в SQL-коде, чтобы я мог вместо этого написать следующее:
DataTable datatableA = ds.Tables["NametbA"];
DataTable datatableB = ds.Tables["NametbB"];
Я использую SQL Server 2008, если это имеет значение.