我有一个SQL Server列的类型XML
包含一些超过8000个字符的记录。我想将此列转换为varchar
。如何将超过8000个字符的XML字段转换为字符串?
我不关心截断(前8000个字符是好的)。
然而,每当我试图CONVERT(varchar(8000), Content)
我得到一个错误:
Target string size is too small to represent the XML instance
当我尝试CONVERT(varchar(MAX), Content)
我得到一个错误:
String or binary data would be truncated
当我尝试CONVERT(varchar(20000), Content)
我得到一个错误:
The size (20000) given to the type 'varchar' exceeds the maximum allowed for any data type (8000)
当我尝试CONVERT(text, Content)
时出现错误:
Explicit conversion from data type xml to text is not allowed
是否有解决方法?
投射到'varchar(max)'应该可以正常工作。 [就像这样。](http://data.stackexchange.com/stackoverflow/query/75495)。 – 2012-07-17 07:07:38
也许它的配置然后..我当然得到一个错误。 – 2012-07-17 07:23:39
@MikaelEriksson - 发布作为答案,我会接受它。我做了一个愚蠢的事情(我使用convert的特定环境导致了一个冒泡的问题)。 – 2012-07-17 07:27:18