在 MS Sql 中存在一些 Delphi 7 不支持的数据类型,例如 XML 数据类型。
我希望将 XML 数据类型转换为文本数据类型,以便在 Delphi 中处理。
是否有一种方法可以从 XML 转换为文本呢?
在 MS Sql 中存在一些 Delphi 7 不支持的数据类型,例如 XML 数据类型。
我希望将 XML 数据类型转换为文本数据类型,以便在 Delphi 中处理。
是否有一种方法可以从 XML 转换为文本呢?
select cast(XMLCol as nvarchar(max)) as XMLCol
或者对于非Unicode:
select cast(XMLCol as varchar(max)) as XMLCol
你无法显式地将数据类型转换为“text”。
我添加了as XMLCol
以确保转换后的数据具有与列相同的名称。当然,你不必这样做。
编辑:
以下是一些链接。我们建议您始终使用nvarchar(max)而不是text
。 Microsoft已表示将在未来的版本中弃用此类类型。nvarchar(max)应该提供2GB:
http://www.petefreitag.com/item/734.cfm
http://www.teratrax.com/articles/varchar_max.html
http://msdn.microsoft.com/en-us/library/ms187752(v=SQL.90).aspx
SELECT CAST(YourXMLColumn as nvarchar(max))
FROM YourTable
我刚刚尝试了以下解决方案,是的,你确实需要 as XMLCol
select cast(XMLCol as nvarchar(max)) as XMLCol