抽取数据出现ODBC data source<IP>error message for operation <SQLGetData>: <[Microsoft][SQL Server Native Client 10.0]Invalid Descriptor Index>
一、问题描述
抽取数据时出现ODBC data source<IP>error message for operation <SQLGetData>: <[Microsoft][SQL Server Native Client 10.0]Invalid Descriptor Index>,重新测试出现Data type mismatch:In query<Query>,an expression of type <VARCHAR> is mapped to column <ZRBM> of type <LONG>.Specify an expression of compatitble type or change the type of the output column。意思就是数据类型不匹配,varchar类型的ZRBM数据被映射到LONG类型的ZRBM,确认相冲突的数据类型表达式,或者目标字段改变数据类型。
查询网上说是要按数据库表字段的顺序抽取数据,仔细对比之后发现原来的表和现在的表字段顺序不一致,咨询过后发现系统管理员将某字段删除后重新创建,原本是LONG类型的,修改成VARCHAR类型,源表是varchar类型,目标表是long类型,导致错误。
二、解决
重新选择query导入源,将两边的类型变成一致的。