gpt4 book ai didi

xml - 格式化 XSLT 文档

转载 作者:数据小太阳 更新时间:2023-10-29 02:24:33 25 4
gpt4 key购买 nike

我有一个 XSLT 文件,用于将数据从表转换为 INSERT 语句。所以输出看起来像

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 列)以保持输出格式,那么有没有办法保持输出相同并在 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>

最佳答案

尝试

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:output method="text" version="1.0" encoding="UTF-8"/>
<xsl:template match="/">
<xsl:for-each select="PAGE/ROWSET/ROW">
<xsl:text>INSERT INTO some_table VALUES val1 ,val2 (</xsl:text>
<xsl:value-of select="SURNAME"/><xsl:text>, </xsl:text>
<xsl:value-of select="CITY"/><xsl:text>);</xsl:text>
<xsl:text>&#xA;</xsl:text>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>

在 XML Spy 中,带有输入

<?xml version="1.0" encoding="UTF-8"?>
<PAGE>
<ROWSET>
<ROW>
<SURNAME>sn1</SURNAME>
<CITY>c1</CITY>
</ROW>
<ROW>
<SURNAME>sn2</SURNAME>
<CITY>c2</CITY>
</ROW>
</ROWSET>
</PAGE>

我明白了

INSERT INTO some_table VALUES val1 ,val2 (sn1, c1);
INSERT INTO some_table VALUES val1 ,val2 (sn2, c2);

关于xml - 格式化 XSLT 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9681772/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com