您的位置首页百科词条

从数据类型 varchar 转来自换为 numeric 时出错.怎么解决

从数据类型 varchar 转来自换为 numeric 时出错.怎么解决

首先这个问题涉及到ADO编程。

既然你使用了TADOQUERY控件。说明你应该对这方专松面有一些了解了。

下面我会和你说下调试的方法和问题出现的原因以及解决方案。

专粉较讲称几家1.调试

当你在***.execsql;这句设置断点,即鼠标停留在该行,按下F5。

右击选择菜单Debug-Evaluate/Modify弹出对话框,在Expression输入adoquery1.***.text按下回车

Result将显示该数据的内容。你将得到一条完整的数据库赶皇李际买犯复承操作语句。

复制该SQL语句,到查询分析器或者轿戚PL/SQL中执行。将得到错误原因。

2.原因

由于你的插入语句使用的是含有引号的值,根据标准SQL语法,理解为字符数组。而你数据库中的表字段是数字类型的。由于数据类型不相符。数据库报错。错误原因即你题目中写到的。

3.解决方案

将SQL语句修州陵改一下,或者修改数据库中的表字段结构。(一家护零胞封顶证般情况表结构不会轻易变动,除非是设计时不合理)

4.优化

关于SQL的优化方案有很多类型。例如你题目中的写法,运行时准确性可以保证,但是效率可以提高。比如将sql的拼写使用绑定变量方式。如果批量使用该语句时,可以多条一起提交。优化的原理是利用数据库自带的缓存,提高效率。

另外,表在设计时竟可册帆戚能不要使用中文。控件名称多使用一些有意义的属联道父刚序变量名。比如InsertQuery,Date,Account.

祝你在使用中得到更快的技术提升。同时代码有很好的天末赵氧急吸权真延可读性。