sqlserver数据可空插入报错

Posted 杨铭宇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sqlserver数据可空插入报错相关的知识,希望对你有一定的参考价值。

 

数据库和C#中均为可空类型。
这时候直接给字段赋值为null
parameters[9].Value = null ; 
执行的时候报错了,一大堆,总之说它少了一个参数。
用sql server profiler 工具查看执行代码 如下图:
 

    

这时候才找到原因:     C#中赋值为null的字段到了数据库执行变成了default。
下面是解决方案:
加一个判断:当字段的值为null时,赋值为DBNull.Value。
parameters[9].Value = model.RedoDate == null ? (object)DBNull.Value : model.RedoDate;  

 

以上是关于sqlserver数据可空插入报错的主要内容,如果未能解决你的问题,请参考以下文章

SQLserver插入数据的时候报错不知道怎么回事

sqlserve复制

SQLServer视图用insert into插入,报错!!

sqlserve条件增加看不到的方法

sqlserver decimal 默认值是0.0 插入null 的时候会不会报错

关于sqlserve2000和sqlserver2005以后版本配置连接池的一些思路