关于sql语句如何传递null参数的问题
我用c#写了一个向数据库写记录的语句,如下:
string sql;
sql = "INSERT INTO AA(SysNo, AAA, BBB) " +
"VALUES (@SysNo, @AAA, @BBB)";
SqlParameter[] parameters = {
new SqlParameter("@SysNo", SqlDbType.Int),
new SqlParameter("@AAA", SqlDbType.Int),
new SqlParameter("@BBB", SqlDbType.NVarChar, 40)
};
parameters[0].Value = 1;
//当变量var小于零时字段AAA的值设置为空
if( var > 0 ) parameters[1].Value = var;
parameters[2].Value = "AAAAA";
cmd.ExecuteNonQuery(sql, parameters);
现在的问题是如果var等于0,系统会提示参数@AAA没有赋值,但我想让字段AAA为空,不知有什么方法?