在我的<p *ngIf="lorem">{{ lorem.lorem_date | fullDate }}</p>
方法中,我正在使用存储过程来Create
我的SQL Server数据库。有时,诸如INSERT INTO
之类的字段将留空。但是,它不符合我的期望。
首先,这是我的方法的样子:
Comment
当using (SqlConnection connection = new SqlConnection(connectionString))
{
string sql = "CreateTask";
using (SqlCommand command = new SqlCommand(sql, connection))
{
command.CommandType = CommandType.StoredProcedure;
.....................
parameter = new SqlParameter
{
ParameterName = "@Condition",
Value = task.Condition,
SqlDbType = SqlDbType.NVarChar
};
command.Parameters.Add(parameter);
.....................
为空时,task.Condition
收到以下错误:
:'过程或函数'CreateTask'需要未提供的参数'@Condition'。'
但是,表中的列设置为允许空值。
存储过程也如下所示:
command.ExecuteNonQuery();
因此,我应该如何调整才能使存储过程获得空值?
答案 0 :(得分:1)
如果数据为空,并且您要将DBNull.Value
插入数据库,请尝试将SqlParameter
分配给null
:
parameter = new SqlParameter
{
ParameterName = "@Condition",
Value = (object)task.Condition ?? DBNull.Value,
SqlDbType = SqlDbType.NVarChar
};