Bermain dengan XML
Sekarang kita akan belajar menggunakan XML untuk akses data di MS-SQL server 2000 Keatas. Mulai versi 2000 kita bisa menikmati mudahnya menghasilkan XML dari record data SQL Server sekaligus menyimpannya kedalam database.
Klausul FOR XML
Untuk menghasilkan dokumen XML dari baris (row/record) data, cukup berikan perintah Select yang biasa dipakai untuk mengambil data, dan tambahankan klausa FOR XML diakhir perintah. Contoh :
Select Cust.CustomerID,OrderHeader.SalesOrderID,OrderHeader.Status,Cust.CustomerType From Cust Cust INNER JOIN OrderHeader OrderHeader On Cust.CustomerID = OrderHeader.CustomerID FOR XML AUTO
Perintah diatas akan mengambil data dari table Customer(Cust) dan Sales Order Header (OrderHeader) kemudian menampilkannya dalam format dokumen XML. Mode AUTO yang ditambahkan diklausa tersebut berarti menyusun XML yang dihasilkan dalam bentuk pohon XML sederhana. Mode lainnya adalah : RAW, EXPLICIT dan PATH
Fungsi OPENXML
Fungsi OPENXML digunakan untuk menampilkan baris data dari dokumen XML. Fungsi sudah ada sejak versi 2000 dan ditingkatkan pada versi 2005, termasuk pemakaian variabel xml.
Silahkan lihat pemakaian fungsi OPENXML berikut ini :
DECLARE @doc xml
SET @doc = ‘<?xml version=”1.0″?>
<SalesInvoices InvoiceID=”1000″ CustomerID=”123″>
<Items>
<Item ProductCode=”12″ Quantity=”2″ UnitPrice=”12.99″/>
<Item ProductCode=”41″ Quantity=”2″ UnitPrice=”17.45″/>
<Item ProductCode=”2″ Quantity=”2″ UnitPrice=”2.99″/>
</Items>
</SalesInvoice>’
Declare @dochandle int
EXEC sp_xml_preparedocument @docHandle OUTPUT, @doc
SELECT * FROM
OPENXML(@docHandle,’SalesInvoice/Items/Item’,1)
WITH
(ProductCode Int, Quantity Int, UnitPrice smallmoney)
EXEC sp_xmlremovedocument @docHandle





stmikbg.com adalah web untuk komunitas bagi anak-anak stmik bumigora khususnya dan anak-anak IT umumnya, baek yang cupu maupun yang expert.