我有一个带有少量NULL列的表..并且我创建了一个存储过程。
在Web表单的控件中输入值时,我需要在所有字段中键入值
否则,我会收到一条错误消息:
System.FormatException:输入字符串的格式不正确。
在线上:
cmd.Parameters.Add(new SqlParameter("@Mob2", Convert.ToInt32(TextBox5.Text)));
我什至尝试做
cmd.Parameters.Add(new SqlParameter("@Mob2", int.parse(TextBox5.Text)));
但是我无法在TextBox控件中将其保留为NULL。
在表中,数据类型为
numeric(10,0)
..在我提到的nvarchar(10)
存储过程中,插入时我已经进行了这样的转换,Convert(numeric(10,0),@Mob2)
但这似乎没有得到转化。
最佳答案
Convert.ToInt32(TextBox5.Text)
对于空字符串将始终失败。因此,请检查以下内容:
object val = string.IsNullOrEmpty(theString) ? (object)DBNull.Value
: int.Parse(theString);
关于c# - 空值未插入,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11913088/