问题:
“ System.Data.SqlClient.SqlException ”类型的未经处理的异常在System.Data.dll中发生。其他信息:将截断字符串或二进制数据
这是在做机房收费系统基本数据设定这一模块时遇到的问题。
本来在代码的UI层用Try……Catch捕获到了异常,如下图:
但没遇到过这个问题的人,光看这个肯定也解决不了问题,于是我把Try……Catch注释掉,找到了抛异常的详细信息:
解决:
一看是 “ System.Data.SqlClient.SqlException ”,想都不用想,肯定是数据库方面的问题,经过调试,发现向数据库中插入的字段值basicDataBLL.SetDate的值为“2014/6/17 星期二”:
但是我在数据库中给这个字段设置的数据类型为varchar(10),这不是远远小于“2014/6/17 星期二”所占的空间嘛!于是果断增加了数据类型的容量,把varchar(10)编程varchar(20),问题得到解决。
总结:
又进行了一番测试,在数据库中把其他一些字符串、text等类型的字段的可存储容量减小,也出现了这个问题,得到了一个结论: