【发布时间】:2014-07-29 19:28:33
【问题描述】:
所以试图弄清楚如何从 MS Access 导出,因此生成的 XML 具有与来自另一个来源的相同的元素名称和节点..我没有成功..
所以我正在考虑从 MS Access 导出到 XML,然后使用 XSLT 转换文件中的数据以便读取。
如果有人可以帮助我,因为我整天都在尝试编写 XSLT 代码以得到我需要的东西,但失败了??
基本上,我需要创建一个 XSLT,它将所有 XML 导出转换为具有与我的“模板 XML”中相同的元素名称和节点
我的模板 XML 如下...
<DatabaseData>
<Customers>
<Idx>0</Idx>
<FirstName/>
<LastName>Undefined</LastName>
<IconIdx>0</IconIdx>
<PhoneNumber/>
<Email/>
<Street/>
<City/>
<State/>
<ZipCode/>
<Available>1</Available>
<SPIndex>0</SPIndex>
</Customers>
</DatabaseData>
//编辑// 道歉..
我曾尝试创建自己的 XSLT,但我觉得它缺少它..
<xsl:stylesheet version="1.0">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<xsl:element name="DatabaseData">
<xsl:element name="Customers">
<Idx><xsl:value-of select="Idx" /></Idx>
<FirstName><xsl:value-of select="FirstName" /></FirstName>
<LastName><xsl:value-of select="LastName" /></LastName>
<IconIdx><xsl:value-of select="IconIdx" /></IconIdx>
<PhoneNumber><xsl:value-of select="PhoneNumber" /></PhoneNumber>
<Email><xsl:value-of select="Email" /></Email>
<Street><xsl:value-of select="Street" /></Street>
<City><xsl:value-of select="City" /></City>
<State><xsl:value-of select="State" /></State>
<ZipCode><xsl:value-of select="ZipCode" /></ZipCode>
<Available><xsl:value-of select="Available" /></Available>
<SPIndex><xsl:value-of select="SPIndex" /></SPIndex>
</Customers>
</DatabaseData>
</xsl:template>
</xsl:stylesheet>
Access 到 XML 的输出信息如下:
<dataroot xmlns:od="urn:schemas-microsoft-com:officedata" generated="2014-07- 29T14:28:34">
<Customers>
<Idx>1</Idx>
<FirstName>David</FirstName>
<LastName>James</LastName>
<IconIdx>0</IconIdx>
<PhoneNumber>00000 000000</PhoneNumber>
<Email>david@email.com</Email>
<Street/>
<City>London</City>
<State>London</State>
<ZipCode>AB3 CD4</ZipCode>
<Available>0</Available>
<SPIndex>0</SPIndex>
</Customers>
</dataroot>
所以我需要..
一个。将“数据根”更改为“数据库数据” 湾。删除“生成”节点,同时删除 Access 在导出后放置的“xlmns:od”。
任何帮助将不胜感激!
【问题讨论】: