我有一个用于将数据从表格转换为INSERT语句的XSLT文件。 所以输出看起来像格式化XSLT文档
INSERT INTO some_table VALUES (Voda, Šenov);
INSERT INTO some_table VALUES (Vorba, Vlčnov);
这对我来说很好。 我的XSLT包含此三行
<xsl:for-each select="PAGE/ROWSET/ROW">
INSERT INTO some_table VALUES (<xsl:value-of select="SURNAME"/>, <xsl:value-of select="CITY"/>);
</xsl:for-each>
,这里是这个问题,我真的不想把这么多的值在同一行(我的表中有像20列),以保持格式化输出,所以有没有办法如何保持输出相同,并在INSERT字段中输入for-each
的多行?
非常感谢答案
编辑
我想有for-each
循环这样
<xsl:for-each select="PAGE/ROWSET/ROW">
INSERT INTO some_table VALUES va1 ,val2 (
<xsl:value-of select="SURNAME"/>,
<xsl:value-of select="CITY"/>);
</xsl:for-each>
为什么你需要把它们放在同一行?有没有理由不能把参数放在不同的线上? – Bronumski 2012-03-13 10:04:56
看我的编辑。事情是,我将在这段代码上做一些调试,所以我想要很好地格式化:-) – 2012-03-13 10:22:57
如果您要使用带有'虚拟格式'的XML编辑器(不带制表符/空格的自动缩进),那么行长度将是一个非问题,因为您的XML将始终正确包装到编辑器边距,但仍然正确缩进。当然,如果您稍后切换到传统的“填充格式”编辑器,则会出现问题。 – pgfearo 2012-03-14 22:14:01