[英]LINQ to SQL with stored procedures and user defined table type parameter
[英]Parameter passing to stored procedures in SQL
我有一个从C#代码中调用的SQL过程。
cmd = new SqlCommand("InsertData", con, transaction);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@IP_No", SqlDbType.VarChar, 50);
cmd.Parameters["@IP_No"].Value = data.IP_No;
result = cmd.ExecuteNonQuery().ToString();
这是我的程序:
(
@IP_No varchar(15),
@Indent_No varchar(20)
)
AS
BEGIN
set @Indent_No = (SELECT IndentId from IdTable)
INSERT INTO InsertData(IP_No,Indent_No)
VALUES(@IP_No,@Indent_No)
Update IdTable set IndentId=IndentId+1;
END
基本上,我希望将ID从不断增加的数据库中提取。 它引发此错误:
过程或函数期望未提供参数@Indent_No。
请帮忙!
由于仅在存储过程内部使用@Indent_No
,因此无需将其声明为输入参数。 您需要在存储过程的主体中声明它
CREATE PROCEDURE InsertData
(
@IP_No varchar(15)
)
AS
BEGIN
DECLARE @Indent_No varchar(20)
set @Indent_No = (SELECT IndentId from IdTable)
INSERT INTO InsertData(IP_No,Indent_No)
VALUES(@IP_No,@Indent_No)
Update IdTable set IndentId=IndentId+1;
END
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.