1

我们可以将 SQL 查询存储在 xsl 变量中吗?

<xsl:variable name="Query" select="'SELECT X FROM ABC WHERE ID>=2'"/>

如果我这样写,我会因为发现非法“>”而出错,我已经尝试过另一种这样的方式

 <xsl:variable name="Query" select="'SELECT X FROM ABC WHERE ID gt;=2'"/>

然后我得到非法的'>'元素错误......

请帮助我如何将查询存储在变量中。

我正在使用一个涉及连接和所有 SQL 内容的大查询..我面临同样的问题,请帮帮我..

4

2 回答 2

1

利用:

<xsl:variable name="Query">SELECT X FROM ABC WHERE ID >= 2</xsl:variable>

或者可能更安全和灵活的方式使用<![CDATA[]]>

<xsl:variable name="Query"><![CDATA[SELECT X FROM ABC WHERE ID >= 2]]></xsl:variable>
于 2012-11-07T22:35:36.720 回答
1

你只是忘记了 & 字符。用这个...

<xsl:variable name="Query" select="'SELECT X FROM ABC WHERE ID &gt;=2'"/>

&在 gt 之前插入;)


请注意,结果之间存在细微差别

(a)  <xsl:variable name="var-a" select="'some text'"/>

和...

(b)  <xsl:variable name="var-b">some text</xsl:variable>

选项 (a) 导致 $var-a 成为包含一个节点的节点集 (XSLT 1.0) 或序列 (XSLT 2.0) - 该节点是文本节点。

选项 (b) 导致 $var-b 成为包含一个节点的节点集/序列 - 该节点是结果树片段 (XSLT 1.0) 或文档节点 (XSLT 2.0),而文档节点又包含文本节点.

于 2012-11-07T23:37:06.430 回答