Pengertian Database XML

Pengertian Database XML
Database XML


Pengertian Database XML - Artikel Flash & Reset kali ini adalah membahas tentang pengertian database XML. Sebuah XML merupakan representasi dari data yang bisa didefinisikan sesuai keinginan pengguna. Karena formatnya yang standar dan fleksibel, XML sering dipergunakan pada berbagai pertukaran informasi. Dan hal ini biasanya dimanfaatkan oleh para praktisi pemrograman komputer sebagai keuntungan tersendiri karena XML bisa disimpan ke dalam basis data dan memprosesnya. Jadi pengertian database XML merupakan database yang sangat dinamis dalam melakukan pengolahan data.

Pengertian Database


Dari artikel yang pernah Flash & Reset tuliskan sebelumnya tentang apa itu database. Database merupakan kumpulan data yang disimpan secara sistematis di dalam komputer yang dapat diolah maupun dimanipulasi menggunakan sebuah software tertentu untuk menghasilkan sebuah informasi. Definisi database meliputi spesifikasi berupa tipe data, struktur data dan juga batasan-batasan pada data yang akan disimpan.

Pengertian Database XML


Pada dasarnya pengertian database XML adalah basis data yang memungkinkan kita untuk menyimpan XML dan melakukan query atau operasi lainnya terhadap data XML tersebut. Salah satu DBMS yang mendukung XML adalah SQL Server.

Dalam SQL Server sudah mendukung tipe data XML, ada typed XML dan untyped XML. Typed XML berarti data XML tersebut berkaitan dengan sebuah XML schema collection, dan sebaliknya untuk untyped XML. XML schema collection mengandung skema XML yang berguna untuk memvalidasi data XML yang boleh tersimpan di dalam suatu basis data. Hal ini berarti bahwa, jika terdapat data XML baru yang formatnya tidak sesuai dengan skema yang telah didefinisikan, maka sistem akan menganggapnya sebagai data yang tidak valid.

Sebagai contoh, kita akan membuat skema XML untuk data Mahasiswa yang berisi NIM, Nama, Email, IPK. Contohnya sebagai berikut :

CREATE XML SCHEMA COLLECTION MahasiswaSchema AS
'<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:t="http://localhost/test/mahasiswa"
targetNamespace="http://localhost/test/mahasiswa">
<xsd:element name="Mahasiswa">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="t:NIM" />
<xsd:element ref="t:Nama" />
<xsd:element ref="t:Email" />
<xsd:element ref="t:IPK" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="NIM" type="xsd:string" />
<xsd:element name="Nama" type="xsd:string" />
<xsd:element name="Email" type="xsd:string" />
<xsd:element name="IPK" type="xsd:decimal" />
</xsd:schema>'

Kemudian, kita buat tabel yang mempunyai kolom bertipe data XML yang valid dengan skema di atas.

CREATE TABLE Biodata (
ID INT IDENTITY PRIMARY KEY,
Mahasiswa XML (MahasiswaSchema) NOT NULL
)

Untuk melakukan insert pada database XML, hampir sama dengan database pada umumnya dan tidak jauh beda. Berikut ini contoh insert data pada Database XML.

INSERT INTO Biodata
VALUES ('
<Mahasiswa xmlns="http://localhost/test/mahasiswa">
<NIM>13504018</NIM>
<Nama>Anggriawan Sugianto</Nama>
<Email>anggriawan.sugianto@gmail.com</Email>
<IPK>3.50</IPK>
</Mahasiswa>
')

Perlu untuk diperhatikan bahwa format XML yang akan kita sisipkan di atas harus sama dengan format pada skema XML terkait. Apabila tidak (misalnya, kurang 1 elemen), maka DBMS akan menganggap hal tersebut menjadi tidak valid.

Apabila untuk melakukan query terhadap basis data relasional kita menggunakan bahasa SQL, maka untuk melakukan query terhadap XML yang kita gunakan adalah bahasa XQuery.

Berikut ini contoh penggunaan bahasa XQuery untuk menampilkan daftar NIM dan mahasiswa yang IPK minimalnya 3.5.

SELECT Mahasiswa.value('
declare default element namespace "http://localhost/test/mahasiswa";
(/Mahasiswa/NIM)[1]', 'varchar(8)') AS NIM,
Mahasiswa.value('
declare default element namespace "http://localhost/test/mahasiswa";
(/Mahasiswa/Nama)[1]', 'varchar(32)') AS Nama
FROM Biodata
WHERE Mahasiswa.value('
declare default element namespace "http://localhost/test/mahasiswa" ;
(/Mahasiswa/IPK)[1]', 'decimal') >= 3.50

Berikut contoh penggunaan XQuery untuk mengubah IPK data mahasiswa.

UPDATE Biodata
SET Mahasiswa.modify('
declare default element namespace "http://localhost/test/mahasiswa" ;
replace value of (/Mahasiswa/IPK)[1] with 4.00')
WHERE Mahasiswa.value('
declare default element namespace "http://localhost/test/mahasiswa" ;
(/Mahasiswa/NIM)[1]', 'varchar(8)') = '13504018'

Banyak sekali fitur-fitur query yang bisa dilakukan menggunakan XQuery. Yang hal ini akan memberikan keleluasaan pada para programmer untuk bisa mengembangkan aplikasinya.

Demikian artikel tentang Pengertian Database XML. Semoga dengan adanya artikel ini bisa memberikan pengetahuan baru bagi para praktisi IT untuk mengetahui tentang pengertian database XML. Semoga artikel ini bermanfaat.
Pengertian Database XML Database XML Pengertian Database XML - Artikel Flash & Reset kali ini adalah membahas tentang pengertian database XML.   Sebuah X...

Artikel Terkait

Berikan Komentar

  1. Untuk menulis kode gunakan <i>KODE</i>
  2. Untuk menyisipkan kode ke dalam Syntax Highlighter gunakan <em>KODE YANG LEBIH PANJANG</em>
  3. Kode harus di-parse terlebih dulu agar bisa ditulis.
  4. Centang Notify me untuk mendapatkan notifikasi balasan komentar melalui Email.
histats