Basis data (
database) dapat dibayangkan sebagai sebuah lemari arsip. Jika kita memiliki lemari arsip dan bertugas mengelolanya, maka akan melakukan hal - hal seperti memberi sampul, memberi nomor, lalu menempatkan arsip - arsip tersebut dengan urutan tertentu dalam lemari tersebut. Kalau berbicara basis data, maka seluruha data disimpan dalam basis data pada masing - masing tabel atau file sesuai dengan fungsinya, sehingga dengan mudah dapat melakukan penelusuran data yang diinginkan. Masalah yang dihadapi pada lemari arsip adalah kelambatan dalam menelusuri data yang ada pada lemari arsip tersebut, misalkan ingin mencari arsip untuk pegawai tetrentu akan dihasilkan dengan lambat, dikaernakan petugas harus mencari lembaran - lembaran yang ada pada dokumen tersebut. sedangkan kalau berbicara basis data, maka seluruh data disimpan dalam basis data pada masing - masing tabel atau file sesuai dengan fungsinya, sehingga akan dengan mudah dapat melakukan penelusuran data yang diinginkan, sehingga cepat mendapatkan informasi yang diperlukan.
1.1. Basis Data
Basis data dapat diartikan sebagai markas atau gudang, tempat besarang atau berkumpul. Sedangkan data merupakan representasi fakta dunia yang nyata yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan), barang, hewan, peristiwa, konsep, keadaan, dan sebagainya yang direkam dalam bentuk angka, huruf, symbol, teks, gambar, bunyi atau kombinasinya. Basis data (
database) merupakan kumpulan data yang saling berhubungan (punya relasi). Relasi biasanya ditunjukn dengan kunci (
key) dari setiap file yang ada. Dalam satu file terdapat record - record yang sejenis, sama besar, sama bentuk yang merupakan satu kumpulan entitas yang seragam. Satu record terdiri dari filed - field yang saling berhubungan dan menunjukan dalam satu pengertian yang lengkap dalam satu record.
Berdasarkan pengertian diatas dapat disimpulkan bahwwa basis data mempunyai beberapa kriteria penting, yaitu bersifat data oriented dan bukan program oriented, dapat digunakan oleh beberapa program aplikasi tanpa perlu mengubah basis datanya. Hal ini juga dapat dikembangkan dengan mudah baik volume maupun strukturnya sehingga dapat memenuhi kebutuhan sistem - sistem baru secara mudah.
Prinsip utama basis data adalah pengaturan data dengan tujuan utama fleksibilitas dan kecepatan dalam pengambilan data kembali. Adapun tujuan basis data diantaranya sebagai efisiensi yang meliputi speed, space, dan accurancy, menangani data dalam jumlah besar, kebersamaan pemakaian (sharebility), dan meniadakan duplikasi dan inkonsisten data.
1.2 Hirarki Data
Secara tradisional hiraki data dalam dikelompokan menjadi 3 (tiga) buh yaitu: file / berkas / tabel / relasi, rekaman /
record / baris /
tuple dan elemen data /
field / atribut / kolom. Gambar hirarki data secara jelas dapat dilihat pada gambar berikut.
1.2.1 Elemen data / field / atribut / kolom
Elemen data adalah satuan data terkecil yang tidak dapat dipecah lagi menjadi unit lain yang bermakna. Pada data pegawai, field atau atribut datanya dapat berupa: NIP, Nama_pegawai, Alamat, Kota, Telpon, dan atribut lainnya yang menyangkut pegawai. Istilah lain elemen data adalah field, kolom, item, dan atribut.
1.2.2 Rekaman / record / baris
Record adalah gabungan sejumlah elemen data yang saling terkait. Contohnya adalah NIP, Nama_pegawai, Alamat, Kota, telpon seorang pegawai dapat dihimpun dalam sebuah record atau baris. Dalam basis data relasional, rekaman biasa disebut dengan istilah tupel atau baris.
1.2.3 File / berkas / tabel / relasi
File adalah kumpulan record sejenis yang mempunyai panjang atribut / field sama, namun berbeda isi datanya. Dalam bassis data relasional, berkas mewakili komponen yang disebut tabel atau relasi. Sedangkan pengertian data value (nilai atau isi data) adalah data aktual atau informasi yang disimpan pada setiap field. Field nama pegawai menunjukan tempat dimana informasi nama pegawai disimpan, sedangkan isi datanya adalah Dina, Dini, Dodi, dan lain - lain.
1.4 Manfaat basis data
- Kecepatan dan kemudahan (speed), pemanfaatan basis data memungkinkan untuk dapat menyimpan, merubah, dan menampilkan kembali data tersebut dengan lebih cepat dan mudah.
- Efisiensi ruang penyimpanan (space), dengan basis data sfisiensi / optimalisasi penggunaan ruang penyimpanan dapat dilakukan, karena penekanan jumlah redudansi data, baik dengan sejumlah pengkodean atau membuat tabel - tabel yang saling berhubungan.
- Keakuratan (accurancy), pembentukan relasi antar data bersama dengan penerapan aturan / batasan (constraint) tipe, domain dan keunikan data dapat diterapkan dalam sebuah basis data.
- Ketersediaan (availability), dapat memilah data utama / master, transaksi, data histori hingga data kadaluwarsa. Data yang jarang atau tidak digunakan lagi dapat diatur dari sistem basis data yang aktif.
- kelengkapan (completeness), lengkap / tidaknya data dalam sebuah basis data bersifat relatif.
- Keamanan (security), untuk menentukan siapa - siapa yang berhak menggunakan bsais data beserta objek - objek didalamnya dan menentukan jenis - jenis operasi apa saja yang bleh dilakukan.
- Kebersamaan pemakaian (sharebility), basis data dapat digunakan oleh beberapa pemakai dan beberapa lokasi. basis data yang dikelola oleh sistem (aplikasi) yang mendukung multiuser dapat memenuhi kebutuhan, akan tetapi harus menghindari inkonsistensi data.
1.4 Operasi basis data
Pada sebuah disk (hard disk), basis data dapat diciptakan dapat pula ditiadakan. Pada sebuah disk juga dapat menempatkan beberapa basis data, misalkan basis data kepegawaian, akademik, penjualan, perpustakaan dan lain - lain. Sementara dalam sebuah basis data dapat ditempatkan pada satu file atau lebih. Misalkan dalam basis data penjualan terdiri dari file atau label barang, fitur, pelanggan dan transaksi barang. Operasi - operasi dasar yang dapat dilakukan basis data adalah:
- Pembuatan basis data baru (CREATE DATABASE)
- Penghapusan basis data (DROP DATABASE)
- Pembuatan file / tabel baru ke suatu basis data (CREATE TABLE)
- Penghapusan file / tabel dari suatu basis data (DROP TABLE)
- Penambahan atau pengisian data baru disebuah basis data (INSERT)
- Pengambilan data dari sebuah file / tabel (RETRIEVE / SEARCH)
- Pengubahan data dalam sebuah file / tabel (UPDATE)
- Penghapusan data dari sebuah file / tabel (DELETE)
Operasi pembuatan basis data dan tabel merupakan operasi awal yang hanya dilakukan sekali dan berlaku seterusnya. sedangkan untuk operasi pengisian data merupakan operasi rutin yang dilakukan berulang - ulang.
1.5 Persyaratan basis data
- Redudansi dan inkonsistensi data, penyimpanan data yang sama dibeberapa tempat disebut redudansi, hal ini akan menyebabkan pemborosan dan menimbulkan inkonsistensi data (data tidak konsisten) karena bila terjadi maka data harus dirubah pada beberapa tempat, hal ini tentunya tidak efisiensi.
- Pengaksesan data, data di dalam basis data harus siap di akses oleh siapa saja yang membutuhkan dan mempunyai hak untuk mengaksesnya. Oleh karena itu harus dibuat suatu program pengelolaan atau suatu aplikasi untuk mengakses data yang dikenal sebagai database management system (DBMS).
- Data terisolasi untuk terstandarisasi, jika data tersebar dalam bebarapa file dalam bentuk format yang tidak sama, maka akan menyulitkan dalam menulis program aplikasi, baik untuk mengambil dan menyimpan data. Oleh karena itu data dalam satu database harus dibuat satu format yang sama, sehingga mudah dibuat program aplikasinya.
- Masalah keamana (security), setiap pemakai sistem basis data tidak semua bagian diperbolehkan untuk mngakses semua data, misalkan data mengenai gaji pegawai hanya boleh dibuka oleh bagian keuangan, sedangkan bagian gudang dan bagian lain tidak diperkenankan untuk membukanya. Keamanan dapat diatur dan disesuaikan baik ditingkat basis data atau aplikasinya.
- Multiuser, salah satu alasan basis data dibangun karena nantinya data tersebut akan digunakan oleh banyak orang, baik dalam waktu berbeda maupun bersamaan. Oleh kaena itu diperlukan basis data yang handal dan dapat mendukung banyak pemakai atau multiuser.
1.6 Data independency
Pada aplikasi yang dibuat dengan bahasa pemrograman seperti BASIC misalnya, apabila program telah selesai dibuat dan ternyata terjadi perubahan terhadap struktur file maka program tersebut harus dirubah, ini artinya program tersebut tidak bebas terhadap database yang ada. Lain halnya jika dengan paket DBMS, apapun yang terjadi pada struktur file setiap kali hendak melihat data cukup dengan utility LIST. Data independency diartikan sebagai ketidakketergantungan data dalam basis data. Independency data dalam basis data mempunyai 2 (dua) dimensi, yaitu phisycal data independency dan logical data indepedency.
- Phisycal dataindepedency, kebolehan untuk mengubah pola fisik database tanpa mengakibatkan suatu aplikasi program ditulis kembali. Modifikasi pada level fisik biasanya hanya pada saat meningkatkan daya guna. Phisycal data indepedency diartikan bahwa teknik dan cara penyimpanan dapat mengalami perubahan tanpa harus merubah deskripsi logic basis data (conceptual view).
- Logical data indepedency, kebolehan mengubah pola konseptual tanpa mengakibatkan suatu aplikasi program ditulis kembali. Modifikasi pada level konseptual teristimewa pada saat struktur logika database berubah, ditambahkan atau dikurangi. Logical data indepedency diartikan bahwa kebutuhan data para pemkai dapat mengalami perubahan tanpa harus mengubah pandangan logic pemakai terhadap basis data atau deskripsi logic basis data (conceptual view)
Berdasarkan keterangan diatas, maka data indepedency akan memberikan jaminan berupa fleksibilitas basis data yaitu:
- Media dan metode akses data dari fisik media penyimpanan basis data dapat mengalami perubahan tanpa harus mengubah pandangan konseptual (conceptual view)
- Kebutuhan data oleh para pemakai (user) basis data dapat mengalami perubahan tanpa harus mengubah pandangan konseptual (conceptual view)
- Pemakai tidak akan mengalami kesulitan dengan perancangan basis data dan teknis penyimpanan dalam media penyimpanan data yang digunakan.
1.7 Integritas data
1.7.1 Domain intregity
Domain adalah himpunan yang dapat diberikan pada suatu atribut, yang mencakup; nama, arti, tpe data, ukuran (panjang), dan nilai yang diijinkan. Semua nilai yang disimpan pada kolom - kolom harus memiliki
domain yang sama.
1.7.2 Integrity entity
Integrity entity dirancang untuk memastikan setiap relasi atau tabel yang sudah memiliki kunci primer (
primary key), dan memastikan bahwa nilai - nilai data untuk kunci primer adalah sah atau valid, dan menjamin bahwa setiap atribut kunci primer adalah bukan NULL. Nilai NULL adalah nilai yang diberikan ke suatu atribut saat tidak ada nilai yang dimasukan atau nilai yang diterapkan tidak diketahui. Nilai NULL adalah bukan nilai melainkan ketidakhadiran nilai pada suatu atribut tertentu. Nilai NULL disini bukan nol (angka 0) dan juga bukan
space (untuk jenis data
aplha, alphanumeric dan
string), melainkan mewakili nilai data tidak diketahui (
unknown) atau tidak menentu (
indeterminate) atau kosong (
absence of value). Sebagai contoh setiap kolom dalam pendefinisian tabel dapat dilakukan dengan NULL dan NOT NULL.
- NULL untuk menyatakan nilai kolom dapat diisi
- NOT NULL untuk menyatakan nilai kolom harus diisi
CREATE TABLE tblpengarang (Kd_pengarang INTEGERVNOT NULL
Nama_pengarang CHAR (15) NOT NULL, Alamat_pengarang CHAR (30), kota CHAR(15))
Tabel diatas menyatakan:
- Kd_pengarang harus diisi
- Nama harus diisi
- Lainnya boleh tidak diisi
1.7.3 Integrity referensial
Integrity referensial adalah garis yang menghubungkan antara kunci tamu (foreign key) disuatu tabel dengan kunci primer (primary key) ditabel lainnya. Integrity referensial merupakan aturan yang memelihara konsisten antara baris - baris pada 2 (dua) relasi. Aturan ini menerapkan bahwa jika ada kunci tamu disatu relasi tertentu, maka kunci tamu itu harus sesuai dengan nilai kunci primer direlasi lain. Sebagai contoh tabel pelanggan sebagai kunci tamu pada tabel pesanan. Tanda panah menggambarkan arah dari setiap kunci tamu ke kunci primer yang berhubungan. Integrity referensial harus didefinisikan untuk setiap tanda panah pada setiap skema.
...Semoga bermanfaat..
Sumber : Graha Ilmu