एक User-Defined TableType
बनाएं आपके डेटाबेस में:
CREATE TYPE [dbo].[MyTableType] AS TABLE(
[Id] int NOT NULL,
[Name] [nvarchar](128) NULL
)
और अपने Stored Procedure
. में एक पैरामीटर परिभाषित करें :
CREATE PROCEDURE [dbo].[InsertTable]
@myTableType MyTableType readonly
AS
BEGIN
insert into [dbo].Records select * from @myTableType
END
और अपना DataTable
भेजें सीधे sql सर्वर पर:
using (var command = new SqlCommand("InsertTable") {CommandType = CommandType.StoredProcedure})
{
var dt = new DataTable(); //create your own data table
command.Parameters.Add(new SqlParameter("@myTableType", dt));
SqlHelper.Exec(command);
}
संग्रहीत-प्रक्रिया के अंदर मूल्यों को संपादित करने के लिए, आप उसी प्रकार के साथ एक स्थानीय चर घोषित कर सकते हैं और उसमें इनपुट तालिका सम्मिलित कर सकते हैं:
DECLARE @modifiableTableType MyTableType
INSERT INTO @modifiableTableType SELECT * FROM @myTableType
फिर, आप @modifiableTableType
संपादित कर सकते हैं :
UPDATE @modifiableTableType SET [Name] = 'new value'