我正在使用 Delphi XE 的服务,我从客户端收到一个 ClientDataset。当我检查 ftWideText 字段的类型时,系统检测到该字段是 ftBlob。为了理解原因,我已将 ClientDataset 保存到一个文件中,但我得到的 XML 包含该字段定义的错误。我得到:
<FIELD attrname="TEXTTEST" fieldtype="bin.hex" SUBTYPE="" SUBTYPE="WideText" />
正确时属性 SUBTYPE 出现两次:
<FIELD attrname="TEXTTEST" fieldtype="bin.hex" SUBTYPE="WideText" />
此问题仅出现在服务器上;其他工作正常。我不知道问题出在哪里,如果是Delphi,ADO,SQL Server。
如果我将 Web 服务更改为使用相同数据库的另一台计算机,则一切正常。我认为这是计算机上安装的组件的 ADO 问题。
更新:我在使用 Windows 2003 Server 计算机时遇到了同样的问题。两台装有 MDAC 2.8 SP2(ODBC 组件版本 3.526)的计算机都失败了。我在其中一台计算机上安装了 Microsoft SQLServer 2008 R2,问题已解决。我需要知道使用 SqlServer2008 安装或重新安装了什么来解决问题。显然与 ADO 有关,但现在我有两台机器具有相同版本的 ADO,只有一台出现故障。