Kuliah Teknologi Web 1
STMIK AKAKOM
Oleh : Ir. M. Guntara,M.T.
TRANSFORMASI BASIS DATA KE BERKAS XML Berdasarkan struktur basis data relasional, dengan struktur kolom dan baris, dan format XML dibentuk dalam elemen dan atribut yang dibuat sendiri dengan struktur menyerupai HTML, maka diperlukan konversi atau penterjemah sehingga berkas XML bisa dibentuk. Ilustrasi transformasi database ke XML seperti Gambar III.4.
Nama
Alamat
Jur
Basis data Guntara
Pr Cepoko Indah
TI
Transformasi basis data ke XML
Guntara
Berkas XML Pr Gambar III.4. Bagan Transformasi basis data ke XMLCepoko Indah
Femi Klaten TI Proses Dwi transformasi tersebut menggunakan
-
bahasa SQL, untuk akses ke basis data, pemrograman PHP untuk transportasi server ke client dan DOM Document PHP, untuk membuat format XML dan berkas XML. Proses ini tidak perlu menggunakan HTML bila tidak diperlukan interfacing yang user friendly.
Tahapan proses transformasi meliputi 1. 2. 3. 4.
Mengambil data menggunakan SQL dari basis data (Mysql_query(SQL) Pembentukan array menggunkaan PHP (mysql_fetch_array/Mysql_fetch_row) Penempatan data hasil query ke bentuk XML menggunakan DOM Document PHP Penyimpana bentuk XML ke berkas XML.
1
Kuliah Teknologi Web 1
STMIK AKAKOM
Oleh : Ir. M. Guntara,M.T.
Berkas XML ini walau dibentuk dari PHP (bisa dari bahasa yang lain) tetapi bisa diakses dengan berbagai bahasa yang mendukung untuk itu karena XML adalah standar untuk transportasi data. Proses mengurai dari bentuk dan berkas XML sering disebut dengan parsing XML. Dengan adanya parsing XML ini berkas XML dapat dibentuk menjadi keluaran sesuai dengan keinginan.
ALGORITMA TRANSFORMASI DATABASE KE XML Algoritma dibawah ini disusun dengan asumsi database dan tabel sudah tercipta dengan sturktur sebagai berikut Database : nama_database nama_tabel(field_1,field_2,..,field_n)
Algoritma : 1.
Mulai Koneksi ke MySQL Server- Mysql_connect Koneksi ke database-Mysql_select_db Jalankan Query Selection untuk mengambil record –Mysql_Query(SELECT …..) Transformasi hasil query ke array (Mysql_fetch_array) Transformasi hasil query ke variabel PHP( $var=var[index]) $var_1 field_1; $var_2 field_2; $var_3 field_3;
… 2
Kuliah Teknologi Web 1
STMIK AKAKOM
Oleh : Ir. M. Guntara,M.T.
$var_n field_n;
Transformasikan var PHP ke XML a. Bila menggunakan atribut <elemen-utama> <sub-elemen
atribut_1 var_1
atribut_2 var_2
……. atribut_n var_n/>
<sub-elemen
atribut_1 var_2
atribut_2 var_2
……. atribut_n var_n/>
...... b.
Bila menggunakan elemen
<elemen-utama> <sub-elemen> <sub-sub-elemen_1> var_1 <sub-sub-elemen_2> var_2 …… <sub-sub-elemen_n> var_n <sub-elemen> <sub-sub-elemen_1> var_1 3
Kuliah Teknologi Web 1
STMIK AKAKOM
Oleh : Ir. M. Guntara,M.T.
<sub-sub-elemen_2> var_2 …… <sub-sub-elemen_n> var_n ...... Simpan ke file .XML (algoritma tersendiri dipaparkan di bawah ) Selesai
MENYIMPAN HASIL TRAN SFORMASI KE BERKAS X ML 1. 2. 3. 4. 5. 6. 7.
Membuat obyek DOMDocument $dok=new DOMDocument(‘1.0’); Deklarasikan obyek document dengan output=true $dok->formatOutput=true Ciptakan root elemen $akar=$dok->CreateElement(‘sub-elemen’); Menciptakan elemen (node) baru $dok->appendChild($akar); Menciptakan sub elemen $dok->createlElement(‘sub-elemen’); Menciptakan node untuk sub-elemen $akar->appendChild($sub-elemen); Menciptakan atribut dan nilai Bila menggunakan atribut : $sub-elemen=$dok->createTextNode(atribut1) $atribut1->value = $var_1; $sub-elemen=$dok->createTextNode(atribut2) 4
Kuliah Teknologi Web 1
STMIK AKAKOM
Oleh : Ir. M. Guntara,M.T.
$atribut2->value = $var_2; $sub-elemen=$dok->createTextNode(atribut3) $atribut3->value = $var_3;
……. Bila menggunakan elemen: $sub-elemen= $dok->createElement(‘atribut1',$var_1); $akar->appendChild($sub-sub-elemen1); $sub-elemen= $dok->createElement(‘atribut2',$var_2); $akar->appendChild($sub-sub-elemen2); $sub-elemen= $dok->createElement(‘atribut3',$var_3); $akar->appendChild($sub-sub-elemen3); …… } $dok->appendChild($akar);
8.
Simpan ke file .xml $dok->save("nama_berkas.xml")
CONTOH APLIKASI
5
Kuliah Teknologi Web 1
STMIK AKAKOM
Oleh : Ir. M. Guntara,M.T.
DATABASE
HASIL OUTPUT : NEGARA_ATRIBUT.XML
SCRIPT PROGRAM
Kuliah Teknologi Web 1
STMIK AKAKOM
Oleh : Ir. M. Guntara,M.T.
mysql_connect("localhost","root","root"); mysql_select_db(daftar_negara); $x=mysql_query("select nama,benua from negara"); $dok= new DOMDocument('1.0', "UTF-8"); $akar=$dok->createElement('daftar-negara'); $dok->appendChild($akar); while($y=mysql_fetch_array($x)) { $neg=$y[nama];$ben=$y[benua]; $pohon= $dok->createElement('negara');// deklarasi elemn $akar->appendChild($pohon); //<=======tambahkan elemen $atribut1 = $dok->createAttribute('nama');//buat atribut1 $atribut1->value = $neg;//buat isi atribut $pohon->appendChild($atribut1);//<=======tambahkan atribut1 $atribut2 = $dok->createAttribute('benua');//buat atribut 2 $atribut2->value = $ben;//buat isi atribut 2 $pohon->appendChild($atribut2);//<=======tambahkan atribut 2 } $dok->appendChild($akar); $dok->save("negara_atribut.xml"); ?>
7