我尝试将DataTable从ExcelDataReader传递到SQL Server存储过程:
DataTable dt = hasil.Tables[0];
try
{
using (SqlCommand cmd = new SqlCommand("spOrderingNewStore", con))
{
cmd.Parameters.AddWithValue("@orderingNewTable", SqlDbType.Structured).Value = dt;
con.Open();
cmd.ExecuteNonQuery();
}
}
catch (Exception ex)
{
retMessage = ex.Message;
result = false;
}
dt
是ExcelDataReader中的DataTable
,然后我尝试将DataTable
传递给参数
我创建新的表格类型:
CREATE TYPE [dbo].[orderingNewTable]
AS TABLE
(
[Id] [VARCHAR](128) NULL,
[Name] [VARCHAR](128) NULL
)
并将其定义为存储过程中的参数:
@orderingNewTable orderingNewTable READONLY
INSERT INTO dbo.AAA
SELECT * FROM @orderingNewTable
DataTable
应该怎么做,以便可以将其作为参数传递给SQL Server存储过程?
我尝试将其插入数据库表,但未插入任何数据,已经尝试更改typename和sqldbtype。
谢谢