如何将null插入SQL字符串

时间:2017-04-07 20:31:04

标签: c# sql-server string stored-procedures

在C#代码中,我有一个字符串,它已连接在一起构建一个SQL插入语句,然后将其传递给存储过程并运行。 问题是我在连接字符串中有一个字段,称之为Salary,这是数据库中的数字。但是,因为它是用C#代码构建的,所以它显然是一个字符串。在插入Error converting data type varchar to numeric时,SP中存在错误。创建的大插入字符串一次在SP中运行,因此我无法检查SP中的各个值。而且我不能使Salary =字符串为null,因为它只是插入字符串“null”而不是空值。

2 个答案:

答案 0 :(得分:2)

您需要在代码中添加一些逻辑。

if string.IsNullOrEmpty(Salary)
{
    MyParameter = DBNull.Value;
}
else
{
    MyParameter = int.Parse(Salary);
}

答案 1 :(得分:1)

MyParameter  = string.IsNullOrEmpty(Salary) ? (object)DBNull.Value : Salary;