我在 SQL 中生成 XML:
我已經為它寫了一個代碼:
SELECT DISTINCT aa_sender_logicalid_schemaversionid AS
[Sender/LogicalID/@schemeID/@schemeName]
這是代碼的一部分,運行它時出現以下錯誤:
列名“Sender/LogicalID/@schemeID/@schemeName”包含 FOR XML 要求的無效 XML 識別符號;'@'(0x0040) 是第一個錯誤字符。
我想在 LogicalID 標記中獲取以下屬性。
<LogicalID schemeID="schemeID1" schemeName="schemeName1" schemeAgencyID="schemeAgencyID1" schemeAgencyName="schemeAgencyName1" schemeVersionID="schemeVersionID1" schemeDataURI="http://uri1" schemeURI="http://uri1" accountingEntity="accountingEntity1" location="location1" variationID="1" lid="http://uri1">LogicalID1</LogicalID>
任何人都可以幫助弄清楚。謝謝。
uj5u.com熱心網友回復:
您不能在單個列別名中指定多個屬性,例如Sender/LogicalID/@schemeID/@schemeName,它們需要是單獨的列,每個列都有其別名,例如以下...
select
ID as [@schemeID],
Name as [@schemeName],
AgencyID as [@schemeAgencyID],
AgencyName as [@schemeAgencyName],
VersionID as [@schemeVersionID],
DataURI as [@schemeDataURI],
URI as [@schemeURI],
Entity as [@accountingEntity],
Location as [@location],
VariationID as [@variationID],
LID as [@lid],
LogicalID as [text()]
from --Select from your real table(s) here
(values
('schemeID1', 'schemeName1', 'schemeAgencyID1', 'schemeAgencyName1', 'schemeVersionID1', 'http://uri1', 'http://uri1', 'accountingEntity1', 'location1', '1', 'http://uri1', 'LogicalID1')
) SomeAlias (ID, Name, AgencyID, AgencyName, VersionID, DataURI, URI, Entity, Location, VariationID, LID, LogicalID)
for xml path('LogicalID'), root('Sender');
這會產生類似于以下內容的 XML 輸出...
<Sender>
<LogicalID
schemeID="schemeID1"
schemeName="schemeName1"
schemeAgencyID="schemeAgencyID1"
schemeAgencyName="schemeAgencyName1"
schemeVersionID="schemeVersionID1"
schemeDataURI="http://uri1"
schemeURI="http://uri1"
accountingEntity="accountingEntity1"
location="location1"
variationID="1"
lid="http://uri1">LogicalID1</LogicalID>
</Sender>
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/436289.html
上一篇:圖片不適合ImageButton-KotlinAndroidStudio
下一篇:XSLT-參考HREF元素
