相关疑难解决方法(0)

在C#中使用存储过程输出参数

我在将输出参数从Sql Server存储过程返回到C#变量时遇到问题.我已经阅读了有关此内容的其他帖子,不仅在这里,而且在其他网站上,我无法让它工作.这是我现在拥有的.目前我只是想打印回来的价值.以下代码返回null值.我试图返回的是主键.我尝试过使用@@IDENTITYSCOPE_INDENTITY()(即SET @NewId = SCOPE_IDENTITY()).

存储过程:

CREATE PROCEDURE usp_InsertContract
    @ContractNumber varchar(7),

    @NewId int OUTPUT
AS
BEGIN

    INSERT into [dbo].[Contracts] (ContractNumber)
        VALUES (@ContractNumber)

    Select @NewId = Id From [dbo].[Contracts] where ContractNumber = @ContractNumber
END
Run Code Online (Sandbox Code Playgroud)

打开数据库:

pvConnectionString = "Server = Desktop-PC\\SQLEXPRESS; Database = PVDatabase; User ID = sa;
    PASSWORD = *******; Trusted_Connection = True;";

try
{
    pvConnection = new SqlConnection(pvConnectionString);
    pvConnection.Open();
}
catch (Exception e)
{
    databaseError = true;
}
Run Code Online (Sandbox Code Playgroud)

执行命令:

pvCommand = new SqlCommand("usp_InsertContract", pvConnection); …
Run Code Online (Sandbox Code Playgroud)

c# sql-server stored-procedures

56
推荐指数
2
解决办法
23万
查看次数

标签 统计

c# ×1

sql-server ×1

stored-procedures ×1