2

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

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

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

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

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

有谁能够帮助我?

4

1 回答 1

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]
于 2013-05-21T20:14:34.727 回答