将Access表导出为XML时出现问题。
基本上我正在做的是首先运行一个select查询,它从2个表中取出我想要的列并将它们放入一个,然后我可以右键单击该表并导出为XML。
选择看起来像:
SELECT
tblProducts.ProductID,
tblProducts.Description,
tblStock.Stock,
tblStock.Min,
tblStock.Max,
StoreID
INTO
tblTempStockExport
FROM
tblProducts
INNER JOIN
tblStock
ON
tblProducts.STK = tblStock.ID
WHERE
tblStock.Stock > 0
OR
tblStock.Min > 0
OR
tblStock.Max > 0;
StoreID参数不在表中,并且会在查询运行时提示用户输入值,这部分工作正常,当我查看新表时数据是正确的,但是当我执行XML导入时我输入的值似乎编码不正确,显示为:
<StoreID>QQBsAGEAbgA=</StoreID>
这里有什么我想念的吗? 感谢
答案 0 :(得分:0)
好像你得到的数据是base64编码的。 Access为二进制类型执行此操作,但我不知道为什么它会像这样返回。 查看相应的XSD文件,看看它是否真的是base64编码的,以及Access认为它应该是什么XML数据类型。
您始终可以尝试使用base64 VBA例程(例如this VB6/VBA code - haven't looked at it, though)解码数据。
它是什么数据类型?一个长整数自动编号?或者是其他东西? 使用an online base64 decoder解码样本会产生一些2字节的字符集,其中包含Alan似乎。
此外,您并未说明您正在使用的Access版本以及是否已应用最新的Servicepack - 这有时可能会有所帮助。