实时错误 \'-2147217887\'及思考

        下午调代码时遇到一个数据库方面引起的问题:实时错误“-2147217887”,本意是 我们在进行多步操作时,某些状态值出问题了。 (参考链接) 这也就意味着可以引起实时错误“-2147217887”的原因有很多。这里我们就不一一讨论了,我们只讨论这个问题在学生里的体现。
问题部分运行时截图:
实时错误 \'-2147217887\'及思考_第1张图片
 问题部分代码截图:
实时错误 \'-2147217887\'及思考_第2张图片
剖析:
        综合上面这两张截图,我们不难发现:我们的代码部分并没有问题。既然如此那么可能出现问题的只能是我们的数据库方面了。下面就让我们打开所使用的数据库:
实时错误 \'-2147217887\'及思考_第3张图片
          从列“tele_Number”的数据类型我们不难发现它的限制条件是char(10)。也就是说我们在与“tele_Number”对应的“联系电话”一栏中只能输入长度为10的长整型字符串,而在运行时我们输入的字符串很明显超过了这个限制条件。
解决:
        显而易见,这个问题有两种解决办法:
        一:要求用户输入的字符串长度只能在10以内 ;
        二:修改数据库。
        从友好度的角度看,第一种方法显然是不可取的,也就是说我们只能采取第二种方法“修改数据库”。那么问题来了:修改后不能保存怎么办?
实时错误 \'-2147217887\'及思考_第4张图片
        出现不能修改数据库现象的原因是SQL考虑到数据的安全性,我们只需要进行相应的修改就可以解决这个问题: 工具→选项→Designers→表设计器和数据库设计器→取消勾选“组织保存要求重新创建表的更改”→Done。(这部分分操作就给出截图,大家按照步骤来即可。)
感想:      
        在写这篇博客时,对经常遇到的实时错误有了更深的认识:一个实时错误也许不仅仅是针对一种具体的情况,更多时候一个事实错误代表的是某一类同质问题的集合。这对我们也是一种启示:没有经过总结汇总的学习不是有效的学习!

你可能感兴趣的:(实时错误 \'-2147217887\'及思考)