插入的存储过程

Stored Procedure for insert

我将 datatable 作为我的存储过程中的参数,我试图将它的一些列插入到一个数据库 table 中,但我不知道正确的句法。

这是我试过的

ALTER PROCEDURE [dbo].[spInsertInvoice]
    @tblInvoice [TypeExcel] READONLY
AS
BEGIN
    SET NOCOUNT ON;

    INSERT into Invoice(InvoiceNo, InvoiceDate, CustomerName,[Subject], Reference)
    VALUES (SELECT Template, Invoice_No, InvoiceDate, Cust_Name,[Subject], Reference FROM @tblInvoice)
END

请指导我如何在 table.

中正确插入值

您需要采用 select 而不是值的插入形式:

insert into theTable (col1, col2, ...)
select col1, col2, ...
from ...
where...

select 的所有功能都可用(列别名、分组、连接、子查询……)。