小编use*_*873的帖子

将空白字段值传递给存储过程ASP .NET C#

如果textBox字段为空,我想将SQL Server 2008数据库表中的所有行返回到SQL数据源.所以我用一个if @date IS NULL子句创建了一个存储过程.

虽然存储过程似乎在Visual Studio 2008中正常工作,但实际网页没有显示任何结果.

我猜我必须向DBNull存储过程发送一个值if if textBox.Text == string.Empty.我试过了,SqlDataSource1.SelectParameters.Add但似乎我得到转换错误DBNull.Value到字符串.

这是我的问题的根源还是我错过了其他的东西?DBNull.Value如果文本字段为空,我将如何传递到存储过程?

.net sql sql-server asp.net dbnull

5
推荐指数
1
解决办法
6833
查看次数

ASP .NET C#SQL在ExecuteScalar上返回DBNULL

好的我已经创建了一个产品表[ID,itemCode],一个销售表和一个返回库存物品的SUM的视图.事情是,如果该物品尚未售出,则视图中没有该物品的记录.我需要检查物品是否有库存才能完成进一步的销售等.

我做的是这样的:

    string selectSQL = "SELECT [total] FROM [stock] WHERE ([itemCode] = " + TextBoxCode.Text + ")";
    SqlConnection con = new SqlConnection(connectionString);
    SqlCommand com = new SqlCommand(selectSQL, con);
    try
    {
        con.Open();          
        object obj = com.ExecuteScalar();

        if (obj == null) //(also tried is DBNull)
        {
            lblStatus.Text = "Does not exist in stock";
        }
        else
        {
            sum = com.ExecuteScalar().ToString();
            lblStatus.Text = "Items in stock: " + sum;
        }
    }
    catch (Exception err)
    {
        lblStatus.Text = err.Message;
    }
    finally
    {
        con.Close();
    }
Run Code Online (Sandbox Code Playgroud)

当物品实际存在于库存中时它工作正常但如果没有记录我得到错误: …

c# sql-server asp.net

1
推荐指数
1
解决办法
6111
查看次数

标签 统计

asp.net ×2

sql-server ×2

.net ×1

c# ×1

dbnull ×1

sql ×1