Oracle對XML格式數據的存取

網上大部分的例子都是錯誤的
最關鍵的地方就是要把表示row的標籤設為rowtag,比如:
<?xml version='1.0'?>
<root>
<record>
<column1>aaaa</column1>
<column2>bbbb</column2>
</record>
</root>
假如你的表是
table aaa
(
aaa varchar(20),
bbb varchar(20)
)

那么要指定哪個標籤是記錄開始啊.這兒就要指定
save.setrowtag("record");
一般從原來的表中得到的xml是用固定的rowsettag和rowtag.名字叫
rowset和rwo
比如:
<?xml version='1.0'?>
<rowset>
<row num="1">
<column1>aaaa</column1>
<column2>bbbb</column2>
</row>
</rowset>
但你在得到字元串前可是指定你想要的名字:
qry.setrowsettag("tablename");
qry.setrowtag("recordname");
這樣就會得到
<?xml version='1.0'?>
<tablename>
<recordname num="1">
<column1>aaaa</column1>
<column2>bbbb</column2>
</recordname>
</tablename>
所以你寫進去的時候只要指定對應的標籤為rowtag就行了:
save.setrowtag("recordname");
save.insertxml(xml);就ok了.


另外,特別要注意xml是大小寫敏感的,你的recordname和recordname是兩個不同的tag