gpt4 book ai didi

c# - 不返回值的sql中的存储过程

转载 作者:行者123 更新时间:2023-11-30 19:13:24 25 4
gpt4 key购买 nike

我的函数没有返回任何东西——strReturn 是空的:

        try
{
SqlParameter[] parameter = new SqlParameter[]
{
new SqlParameter("@MerchantID", MercahntID),
new SqlParameter("@LoactionID", LoactionID)
};

SqlHelper.ExecuteNonQuery(DbConnString, System.Data.CommandType.StoredProcedure, "GetMerchantLocationZip", parameter);

return strReturn;
}
catch (Exception ex)
{
LogError("Error Occurred When Retrieving Mercahnt Location Zip: MercahntID:" + MercahntID.ToString(), ex);
return strReturn;
}
}

当我使用“exec GetMerchantLocationZip (3333, 373773)”执行此存储过程时,我在 SQL 中获得了正确的邮政编码。为什么我不能在 Visual Studio 中获取它?

Create PROCEDURE [dbo].[GetMerchantLocationZip](
@MerchantID bigint,
@LoactionID bigint)

AS

Begin

Select Zip FROM Merchant_Location
where MerchantID=@MerchantID AND LocationID =@LoactionID

End

我正在学习,如果这是一个明显的错误,我们深表歉意。谢谢大家!

最佳答案

您没有得到结果,因为您没有将代码作为查询执行。

您调用的 SqlHelper.ExecuteNonQuery() 没有返回任何结果。

看起来您正在使用 SqlHelper 应用程序 block ,所以我认为您想要的代码是(如果您在查询中返回多行):

DataSet ds = SqlHelper.ExecuteDataSet(DbConnString,
CommandType.StoredProcedure,
"GetMerchantLocationZip",
parameter);

ds 将包含查询的结果。

如果您尝试从数据库中检索单个值而不是一组行,那么您的代码将是:

object zip = SqlHelper.ExecuteScalar(DbConnString,
CommandType.StoredProcedure,
"GetMerchantLocationZip",
parameter);

关于c# - 不返回值的sql中的存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3677353/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com