TADOQuery:字段'MyField'的EDatabaseError类型不匹配,期望:String actual:FixedWideChar'

时间:2013-05-20 21:51:00

标签: delphi delphi-2007 type-mismatch tadoquery

我有3个不同的数据库(开发,同源和prod),每个数据库都在以下Oracle版本之一:11g和10g。

我正在使用TADOQuery一次仅查询其中一个数据库中的某些数据。

当我在dev或prod中运行我的应用程序时,它会完美地返回数据。 但是当我在同源语言中运行时,我收到以下错误消息:

'字段'MyField'的EDatabaseError类型不匹配,期望:字符串实际:FixedWideChar'

我已经检查过,3个数据库的DDL是相同的,所以这不是数据类型的问题。 此外,MyField在所有这些中都是CHAR(1)。

有人能帮助我吗?

1 个答案:

答案 0 :(得分:3)

解决了问题! 答案来自这篇文章:http://objectmix.com/ado-dao-rdo-rds/392318-fixedwidechar-adodb-problem.html

我必须修复ADODB.pas中的错误,更改以下行

compatible:= FieldDef.DataType in [ftstring,ftwidestring]

compatible:= FieldDef.DataType in [ftstring,ftwidestring,ftfixedWideChar]