Spesifikasi Basis Data menggambarkan struktur data fisik pada suatu sistem atau aplikasi. Spesifikasi basis data menyajikan bagaimana pen...
Secara sederhana, untuk membuat spesifikasi basis data, kita dapat menggunakan Microsoft Word atau Open Office Writer. Informasi tabel dan field berasal dari hasil analisis sistem berupa class diagram atau ERD (Entity Relationship Diagram). Nah dari spesifikasi basis data barulah dibuat struktur tabel di suatu DBMS sepertiMySQL atau Oracle. Setelah tabel-tabel di DBMS siap, barulah program (aplikasi) dibangun.
Itu adalah proses idealnya. Dalam kenyataannya seringkali kebalik. Struktur tabel dan program dibangun terlebih dahulu, baru dokumentasinya dibuat belakangan. Kondisi ini juga banyak dilakukan oleh temen-temen kita, mahasiswa yang lagi menyusun skripsi atau KKP. Program dan aplikasi dikerjain duluan, baru laporan belakangan.
Bukannya bermaksud “meng-amini” proses pengembangan aplikasi yang kebalik tersebut, namun semoga program kecil berikut ini bisa berguna. Program berikut ini dibuat dengan PHP. Tujuannya adalah meng-generate tabel spesifikasi basis data secara otomatis dari suatu DBMS, kebetulan kita akan menggunakanMySQL.
Contoh tabel hasil program
Untuk menghasilkan tabel spesifikasi basis data, program berikut ini menggunakan beberapa fungsi bawaanPHP yang berhubungan dengan MySQL, yaitu:
- a href="http://id.php.net/manual/en/function.mysql-connect.php" style="color: #206ba4; outline: none;" target="_blank">mysql_connect() untuk melakukan koneksi ke database MySQL.
- a href="http://id.php.net/manual/en/function.mysql-select-db.php" style="color: #206ba4; outline: none;" target="_blank">mysql_select_db() untuk membuka database yang akan digunakan.
- a href="http://id.php.net/manual/en/function.mysql-query.php" style="color: #206ba4; outline: none;" target="_blank">mysql_query() untuk mengeksekusi (menjalankan) perintah query ke MySQL dari PHP.
- a href="http://id.php.net/manual/en/function.mysql-fetch-row.php" style="color: #206ba4; outline: none;" target="_blank">mysql_fetch_row() untuk mengambil nilai hasil query yang dihasilkan oleh fungsi mysql_query(). Hasil query dimasukkan dalam array PHP.
- a href="http://id.php.net/manual/en/function.mysql-num-fields.php" style="color: #206ba4; outline: none;" target="_blank">mysql_num_fields() untuk menghasilkan jumlah field dari suatu tabel.
- a href="http://id.php.net/manual/en/function.mysql-fetch-field.php" style="color: #206ba4; outline: none;" target="_blank">mysql_fetch_field() untuk mendapatkan informasi (metadata) dari suatu field dalam tabel.
- a href="http://id.php.net/manual/en/function.mysql-field-len.php" style="color: #206ba4; outline: none;" target="_blank">mysql_field_len() untuk mendapatkan informasi panjang (length) setiap field dalam tabel.
Program
Dan berikut ini program lengkapnya.
<html>
<head><title>MySQL Database Spesification Creator</title>
<style type="text/css">
table.db-table { border-right:1px solid #ccc; border-bottom:1px solid #ccc; }
table.db-table th { background:#eee; padding:5px; border-left:1px solid #ccc; border-top:1px solid #ccc; }
table.db-table td { padding:5px; border-left:1px solid #ccc; border-top:1px solid #ccc; }
</style>
</head>
<body>
<?php
/* connect to the db */
/* show tables */
$table = $tableName[0];
echo '<h3>',$table,'</h3>';
$i = 0;
echo '<table cellpadding="0" cellspacing="0" class="db-table">';
echo '<tr><th>No</th><th>Nama Field</th><th>Type</th><th>Panjang</th><th>Keterangan</th></tr>';
echo '<tr>';
echo '<td>'.($i+1).'</td>'; //nomor
echo '<td>'.(($meta->primary_key)?'<u>'.$meta->name.'</u>' : $meta->name).'</td>'; //nama field
echo '<td>'.$meta->type.'</td>'; //tipe field
echo '<td>'.$length.'</td>'; //panjang
echo '<td>'.$meta->name.'</td>'; //keterangan
echo '</tr>';
$i++;
}
echo '</table><br />';
}
?>
</body>
</html>
Tidak ada komentar