Я пытаюсь передать объемные значения моей хранимой процедуре, используя таблицу данных следующим образом:
var idlist = new DataTable();
idlist.Columns.Add("sid", typeof(int));
idlist.Columns.Add("suid", typeof(int));
idlist.Rows.Add(new object[] {1, 1});
idlist.Rows.Add(new object[] {1, 2});
cmd.Parameters.Add(new SqlParameter("@SID", Convert.ToString(idlist)));
В SQL Server хранимая процедура выглядит следующим образом:
ALTER PROCEDURE [dbo].[SUBNETTEMP]
(
@SID as IDLISTS READONLY
)
AS
BEGIN
Create table [tempIDTable] (sid int, suid int)
Insert into [tempIDTable]
select * from @SID
END
IDLISTS
определяется как тип таблицы следующим образом:
CREATE TYPE IDLISTS AS TABLE (
SID int, SUID int )
go
После запуска программы я не уверен, почему моя хранимая процедура не создает temIDTable
. Я не уверен, успешно ли выполнена хранимая процедура или нет? Может кто-нибудь, пожалуйста, помогите.
Спасибо.