今天,通过ADO接口往PG数据库中插入数据,结果数据始终不能插入到数据库的表中,执行insert语句后,返回失败,错误码DB_E_DATAOVERFLOW。

  DB_E_DATAOVERFLOW:命令中的数值超出列中规定的范围!

  原因很清楚了,插入数据表中的字段的变量值范围超过了表定义时的范围,产生了溢出。

  一个好的编程习惯:定义字符串类型时最好分配足够大的缓冲空间。

  而且,涉及到中英文切换的情况,中文字符串长度较短,但是翻译成英文后长度就可能会明显增大,需要选择两者中最大的长度!

  附录:OLE DB函数可能返回的HRESULT错误代码

错误码                            描述
DB_E_ABORTLIMITREACHED 执行中断,可能是因为资源不足
DB_E_ALREADYINITIALIZED 企图重新初始化已经初始化的数据源
DB_E_BADACCESSORFLAGS 非法的Accessor标记
DB_E_BADACCESSORHANDLE 非法的Accessor句柄
DB_E_BADACCESSORTYPE 指定的Accessor没有带参数
DB_E_BADBINDINFO 非法的绑定信息
DB_E_BADBOOKMARK 非法的书签
DB_E_BADCHAPTER 非法的章
DB_E_BADCOLUMNID 非法的列号
DB_E_BADCOMPAREOP 比较操作无效
DB_E_BADCONVERTFLAG 非法的转换标记
DB_E_BADCOPY 拷贝出错
DB_E_BADDYNAMICERRORID 传递的DynamicErrorID非法
DB_E_BADHRESULT 传递的HRESULT非法
DB_E_BADID 无法接受DB_E_BADID,请使用DB_E_ABLEID
DB_E_BADLOCKMODE 非法的锁定模式
DB_E_BADLOOKUPID 非法的LookupID
DB_E_BADORDINAL 指定的列参数不存在
DB_E_BADPARAMETERNAME 不能识别给定的参数名称
DB_E_BADPRECISION 指定的精度非法
DB_E_BADPROPERTYVALUE 属性值非法
DB_E_BADRATIO 非法的比例
DB_E_BADRECORDNUM 指定的记录号非法
DB_E_BADREGIONHANDLE 非法的区域句柄
DB_E_BADROWHANDLE 非法的行句柄。在行记录集的开始和结尾或更新结果集时经常发生该错误。
DB_E_BADSCALE 指定的scale非法
DB_E_BADSOURCEHANDLE 非法的源句柄
DB_E_BADSTARTPOSITION 指定的行位移出界
DB_E_BADSTATUSVALUE 指定的状态标记既非DBCOLUMNSTATUS_OK又非DBCOLUMNSTATUS_ISNULL
DB_E_BADSTORAGEFLAG 不支持某个指定的存储标记
DB_E_BADSTORAGEFLAGS 不支持存储标记
DB_E_BADTABLEID 非法的表标识
DB_E_BADTYPE 指定的类型非法
DB_E_BADTYPENAME 给定的类型不能识别
DB_E_BADVALUES 非法的值
DB_E_BOOKMARKSKIPPED 尽管正常形成书签,但没有匹配行
DB_E_BYREFACCESSORNOTSUPPORTED      该供应程序不支持Accessor
DB_E_CANCELED 修改已撤销,列数没有变化
DB_E_CANNOTFREE 供应程序已经是树的所有者,该树不能释放
DB_E_CANNOTRESTART 行集不能重新启动
DB_E_CANTCANCEL 正在执行的命令不能取消
DB_E_CANTCONVERTVALUE 因为非数字溢出原因,命令中的数值不能转换为正确的类型
DB_E_CANTFETCHBACKWARDS 行集不支持向后滚动
DB_E_CANTFILTER 请求的过滤器不能打开
DB_E_CANTORDER 请求的排序器不能打开
DB_E_CANTSCROLLBACKWARDS 行集不能向后滚动
DB_E_CANTTRANSLATE 不能把当前的数描述为文本
DB_E_CHAPTERNOTRELEASED 行集是单章节的,访问新章节时,旧章节没有释放
DB_E_CONCURRENCYVIOLATION 行集使用优化的并行操作,自上次阅读后,列值已经改变
DB_E_COSTLIMIT 在给定的cost限制内不能发现查询计划
DB_E_DATAOVERFLOW 命令中的数值超出列中规定的范围
DB_E_DELETEDROW 所引用的行已经删除
DB_E_DIALECTNOTSUPPORTED 供应程序不支持指定的dialect
DB_E_DUPLICATECOLUMNID 发生重复的列标号
DB_E_DUPLICATEDATASOURCE 发生重复的数据源
DB_E_DUPLICATEINDEXID 指定的索引已经存在

  ADO 错误参考:https://msdn.microsoft.com/zh-cn/LIBRARY/jj248997.aspx

OLE DB

函数可能返回的

HRESULT

错误代码

ADO 调用Execute失败,异常码DB_E_DATAOVERFLOW的更多相关文章

  1. ADO方式,VC调用Execute执行INSERT INTO插入变量SQL语句的写法

    ADO方式,VC调用Execute执行INSERT INTO插入变量SQL语句的写法 有些情况下,SQL SERVER 2008r2中需要保存float,int类型的数据,当C 中的变量为double ...

  2. 调用 SSPI 失败,请参见内部异常。接收到的消息异常,或格式不正确。

    完整异常信息: System.Security.Authentication.AuthenticationException: 调用 SSPI 失败,请参见内部异常. ---> System.C ...

  3. 调用 SSPI 失败,请参见内部异常 解决方法

    2017-11-12 12:49:53:706] OnServerConnectionAvailable error : System.Security.Authentication.Authenti ...

  4. atitit.架构设计---方法调用结果使用异常还是返回值

    atitit.架构设计---方法调用结果使用异常还是返回值 1. 应该返回BOOL类型还是异常 1 2. 最终会有四种状况,抛出异常.返回特殊值.阻塞.超时 1 3. 异常的优缺点点 1 4. jav ...

  5. https 调用验证失败 peer not authenticated

    https 调用验证失败 peer not authenticated 报错日志: Caused by: javax.net.ssl.SSLPeerUnverifiedException: peer ...

  6. [已解决]:调用 LoadLibraryEx 失败,在 ISAPI 筛选器 "c:\Windows\Microsoft.NET\Framework\v4.0.30319\\aspnet_filter.

    现象:我的是 win7, iis7, 64bit, 打开网站错误如下: 错误摘要 HTTP 错误 500.0 - Internal Server Error 调用 LoadLibraryEx 失败,在 ...

  7. 在执行xp_cmdshell的过程中出错,调用'LogonUserW'失败,错误代码:'1909'

    在上篇文章Could not obtain information about Windows NT group/user 'xxxx\xxxx', error code 0x5里面,我介绍了SQL ...

  8. Java 集合快速失败异常

    快速失败 在JDK中,查看集合有很多关于快速失败的描述: 注意,此实现不是同步的.如果多个线程同时访问一个哈希映射,而其中至少一个线程从结构上修改了该映射,则它必须 保持外部同步.(结构上的修改是指添 ...

  9. [置顶] Ajax程序:处理异步调用中的异常(使用Asp.Net Ajax内建的异常处理方法)

    无论在Window应用程序,还是Web应用程序以对用户友好的方式显示运行时的异常都是很有必要,尤其对于可能有很多不确定因素导致异常的Web应用程序;在传统的Web开发中,处理异常的方式——设计专门一个 ...

随机推荐

  1. mongo操作及相关资料

    mongo操作 find方法 db.collection_name.find(); 查询所有的结果: select * from users; db.users.find(); 指定返回那些列(键): ...

  2. ny540 奇怪的排序 简单题

    奇怪的排序 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 最近,Dr. Kong 新设计一个机器人Bill.这台机器人很聪明,会做许多事情.惟独对自然数的理解与人类不一 ...

  3. vue2.0的ajax

    Vue 原本有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2.0 之后,官方就不再更新 vue-resource 目前主流的 Vue 项目,都选择 axios ...

  4. LeetCode: Min Stack 解题报告

    Min Stack My Submissions Question Solution Design a stack that supports push, pop, top, and retrievi ...

  5. Django 笔记(来源于讲师)以及常见问题的解决

    写1.Django加载静态文件 1.首先在项目的根目录下,新建static文件夹 2在settings.py中加入这两句话.表明从项目的跟目录找static文件夹 3.在HTML文件中导入{% loa ...

  6. SharePoint API测试系列——Manage SharePoint Site Policy & Expiration Email with CSOM API

    转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 对CSOM(Not SSOM) Site Policy & Expiration Emai ...

  7. [转]一步一步部署SSIS包图解教程

    本文就SQL统计分析SSIS包的部署进行一次详细的部署图解教程,Sql Server Integration Services 提供了非常简单的部署工具,利用这些工具可以方便地将包文件(*.dtsx) ...

  8. 设置将Maven的jar包发布到lib

    2,设置将Maven的jar包发布到lib下. Add -> Java Build Path Entries -> Maven Dependencies -> Finish 设置完成 ...

  9. python学习笔记(18)--eclipse更换主题

    说明: 1. 在eclipse marketplace 搜索color ide pack安装 2. 参考文章和评论http://blog.csdn.net/wusuopubupt/article/de ...

  10. 章鱼哥出品—VB.NET DataGridView绑定数据源 "与货币管理器的位置关联的行不能设置为不可见" 问题的解决

    DtaGridView绑定数据源后.假设想让数据条件显示的话,直接使用  My_Row.Visible = False就会出错.错误类型是 "与货币管理器的位置关联的行不能设置为不可见&qu ...