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 readonlyASBEGIN insert into [dbo].Records select * from @myTableType END
并将您的
DataTable直接发送到sql server:
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'



