SQL Server 2000 XML 路径('') 错误

发布于 2024-12-17 14:01:39 字数 428 浏览 2 评论 0原文

SELECT
**FIELDS**
AS [text()] --Stops the XMLPATH line rendering output as XML
FROM #temp
WHERE  **CONDITIONS**
FOR XML PATH('') 

这在 SQL Server 2000 中不起作用(不受支持)。 我尝试过使用 FOR XML RAW 但它返回大量无用信息。即:

 <row text x0028 x0029="blah, blah"> <row text x0028 x0029="blah"> 

上面的代码当前从表中的每一行返回一个串联字符串(由不同类型的多列组成)。

如何在 SQL Server 2000 中实现这一目标?

SELECT
**FIELDS**
AS [text()] --Stops the XMLPATH line rendering output as XML
FROM #temp
WHERE  **CONDITIONS**
FOR XML PATH('') 

This doesn't work in SQL server 2000 (unsupported).
I have tried using FOR XML RAW but it returns loads of useless information. i.e:

 <row text x0028 x0029="blah, blah"> <row text x0028 x0029="blah"> 

The above code currently returns a concatenated string(made up of multiple columns of varying types) from every single row in the table.

How can I achieve this in SQL Server 2000?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

陪你搞怪i 2024-12-24 14:01:39

SQL Server 2000 中的串联:

declare @s varchar(8000);
set @s = '';

select @s = @s + field1 + field2 + field3
from #temp
where ...
order by ...;

select @s;

Concatenation in SQL Server 2000:

declare @s varchar(8000);
set @s = '';

select @s = @s + field1 + field2 + field3
from #temp
where ...
order by ...;

select @s;
泛滥成性 2024-12-24 14:01:39

XML 数据类型在 2000 年不受支持,它于 2005 年引入。SQL

2000 确实引入了 FOR XML,但仅支持RAWAUTOEXPLICIT

The XML datatype isn't supported in 2000, it was introduced in 2005.

SQL 2000 did introduce the FOR XML, but it only supported RAW, AUTO, and EXPLICIT

指尖上得阳光 2024-12-24 14:01:39

您必须在 FOR XML PATH(' ') 中定义一些文本或字符,例如,
FOR XML PATH('abc')。您还可以使用 FOR XML RAW('abc') 输出原始 XML。

You've to define some text or character inside FOR XML PATH(' ') like,
FOR XML PATH('abc'). You can also use FOR XML RAW('abc') for outputting raw XML.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文