存储过程工作正常并且在 SQL 服务器中不 return null,但在 VS 中它 returns null
Stored procedure works fine and does not return null in SQL Server, but in VS it returns null
我正在尝试从数据库中获取单个值。
在 SQL-Server 中它工作正常,我得到一个不为空的值。但是每当我尝试从 VS 执行此操作时,代码中的 "status" 变量总是变为空,即使它获取参数并正确连接数据库也是如此。
这是我的代码:
string id = textboxOrderDate.SelectedValue;
SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["iremConnection"].ConnectionString);
con.Open();
SqlCommand command = new SqlCommand("SELECT_ORDERSTATUS_BY_ORDERID", con);
command.CommandType = CommandType.StoredProcedure;
SqlParameter paramID = new SqlParameter("@ORDERID", id);
command.Parameters.Add(paramID);
string status= (string)command.ExecuteScalar();
//string status=command.ExecuteScalar().ToString();
con.Close();
我还尝试使用数据适配器用数据表填充数据集以检索我想要的值。但是,不幸的是数据表行计数等于 0。我的存储过程工作正常我不明白为什么它与 VS 的工作方式不同。这是我的存储过程:
ALTER PROCEDURE [dbo].[SELECT_ORDERSTATUS_BY_ORDERID]
@ORDERID VARCHAR(50)
AS
SELECT dbo.OrderTable.Status
FROM OrderTable
WHERE @ORDERID=OrderID
好的,我找到问题了。我使用 DateTime 类型作为 OrderID,它与数据库中存储的不匹配。数据库在末尾用零存储它,因此它与我的 c# 代码发送的内容不匹配。
谢谢大家
我正在尝试从数据库中获取单个值。 在 SQL-Server 中它工作正常,我得到一个不为空的值。但是每当我尝试从 VS 执行此操作时,代码中的 "status" 变量总是变为空,即使它获取参数并正确连接数据库也是如此。 这是我的代码:
string id = textboxOrderDate.SelectedValue;
SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["iremConnection"].ConnectionString);
con.Open();
SqlCommand command = new SqlCommand("SELECT_ORDERSTATUS_BY_ORDERID", con);
command.CommandType = CommandType.StoredProcedure;
SqlParameter paramID = new SqlParameter("@ORDERID", id);
command.Parameters.Add(paramID);
string status= (string)command.ExecuteScalar();
//string status=command.ExecuteScalar().ToString();
con.Close();
我还尝试使用数据适配器用数据表填充数据集以检索我想要的值。但是,不幸的是数据表行计数等于 0。我的存储过程工作正常我不明白为什么它与 VS 的工作方式不同。这是我的存储过程:
ALTER PROCEDURE [dbo].[SELECT_ORDERSTATUS_BY_ORDERID]
@ORDERID VARCHAR(50)
AS
SELECT dbo.OrderTable.Status
FROM OrderTable
WHERE @ORDERID=OrderID
好的,我找到问题了。我使用 DateTime 类型作为 OrderID,它与数据库中存储的不匹配。数据库在末尾用零存储它,因此它与我的 c# 代码发送的内容不匹配。
谢谢大家