【发布时间】:2012-07-19 14:19:36
【问题描述】:
我正在使用 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,只有一台出现故障。
【问题讨论】:
-
服务器是否支持 Unicode 字符串?如果是,这些字段是这样声明的吗?
标签: sql-server delphi ado delphi-xe