gpt4 book ai didi

c# - 显示 SQL Server 存储过程的单个返回值的函数

转载 作者:太空宇宙 更新时间:2023-11-03 10:38:14 24 4
gpt4 key购买 nike

我有一个不带参数的 SQL Server 存储过程。它通过数据库找到最常记录的屏幕分辨率,并将所述分辨率作为唯一返回值输出。

存储过程采用两列,ScreenWidthScreenHeight(均为 int)并将它们与 x 连接> 在两者之间返回屏幕分辨率的单个文本值

存储过程如下:

ALTER PROCEDURE [dbo].[uspRetMostCommonScreenRes]
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;

-- Insert statements for procedure here
SELECT TOP 1
CAST(ScreenWidth as nvarchar(MAX)) + 'x' +
CAST(ScreenHeight as nvarchar(MAX)) AS Resolutions
FROM
BrowserInfoes
GROUP BY
CAST(ScreenWidth as nvarchar(MAX)) + 'x' + CAST(ScreenHeight as nvarchar(MAX))
ORDER BY
COUNT(*) DESC
END

这执行得非常好并返回值 1600x1024

然后我想在 C# 中创建一些代码来获取这个唯一值并将其存储到字符串值中。

我在 C# 和 SQL Server 之间的接口(interface)方面的唯一经验是通过 Entity Framework 输入数据,所以我不知道如何完成这项任务。

最佳答案

你正在尝试做的伪代码如下

using(SqlConnection cnn = new SqlConnection(....here the connection string ....))
using(SqlCommand cmd = new SqlCommand("uspRetMostCommonScreenRes", cnn))
{
cnn.Open();
cmd.CommandType = CommandType.StoredProcedure;
string result = cmd.ExecuteScalar().ToString();
}

此代码需要 connection string这允许您的 C# 程序连接到您的数据库。然后你定义一个SqlCommand指向您的存储过程和您的连接
最后,您可以打开连接,将命令文本标记为 StoredProcedure 名称并执行 ExecuteScalar方法。

using 语句负责关闭和处理连接和命令

关于c# - 显示 SQL Server 存储过程的单个返回值的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26617966/

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