Pemahaman Database
Database
secara mudah dapat kita sebut sebagai gudang data. Secara teori,
database adalah kumpulan data atau informasi yang kompleks, data-data
tersebut disusun menjadi beberapa kelompok dengan tipe data yang sejenis
(disebut tabel), di mana setiap datanya dapat saling berhubungan satu
sama lain atau dapat berdiri sendiri, sehingga mudah diakses.
- Program Pengelola Database
Dalam
basis data, database dapat kita kelola menggunakan program aplikasi
basis data, misalnya: MySQL, Access, PostgreSQL, dan SQL Server.
Aplikasi yang dapat membuat dan mengelola database sering disebut SMBD (Sistem Manajemen Basis Data) atau DBMS (Data Base Manajemen System).
Ada dua perbedaan SMBD (Sistem Manajemen Basis Data) yang sering kita gunakan, yaitu database yang bersifat Stand Alone dan database yang bersifat Database Server. Berikut ini, pengkategoriannya:
- Database Server (berjalan client/server):
- MySQL
- MsQL
- PostgreSQL
- SQL Server
- Oracle
- Interbase, dan lain-lain.
- MySQL
- Bukan Database Server (berjalan stand alone):
- Mircrosoft Access
- Paradox
- dBase, dan lain-lain.
- Database Server MySQL
- Database Server MySQL
- Mircrosoft Access
MySQL merupakan database server
yang awalnya hanya berjalan pada sistem Unix dan Linux. Seiring
berjalannya waktu dan banyaknya peminat yang menggunakan database ini,
MySQL merilis versi yang dapat diinstal pada hampir semua platform,
termasuk Windows.
Lisensi dari MySQL adalah freeware.
Kita dapat mendownload dan menggunakannya tanpa harus membayarnya.
Meskipun kita menjual produk menyertakan software MySQL, kita tidak
melanggar hak cipta.
Pada
buku ini, semua contoh latihan menggunakan MySQL server versi 5.0.x.
Anda dapat mendapatkan versi terbaru dari MySQL pada alamat website www.mysql.com.
- Sebutan Umum Database Server
Umumnya, orang menyebut database seperti MySQL, PostgreSQL, atau yang lainnya dengan sebutan Database Server saja. Namun, ada beberapa orang yang menyebutnya dengan istilah Database Enggine, Mesin Database, SMBD, DBMS, Back End,
ataupun langsung menyebut dengan program database saja. Sebenarnya,
beberapa istilah tersebut sama, terserah Anda saja untuk menyebutnya.
- Keterkatian MySQL dan SQL
Mungkin
bagi Anda yang baru pertama dengan MySQL akan bingung dengan dua kata
"SQL" dan "MySQL". Pertanyaan yang mungkin muncul adalah, ini satu atau
dua bentuk aplikasi? Yah... saya bisa memaklumi munculnya pertanyaan
tersebut, sama dengan yang ada di benak saya pada saat mulai mengenal
MySQL.
Bagi
Anda yang sebelumnya sudah pernah belajar atau sudah pernah membaca
buku basis data, mungkin Anda akan mendapatkan pembahasan khusus
mengenai SQL pada bagian akhir buku tersebut. Apakah SQL itu sebenarnya,
dan apa bedanya dengan MySQL itu sendiri?
Baiklah, SQL merupakan kependekan dari kata "Structured Query Language".
SQL merupakan suatu bahasa permintaan yang terstruktur. Kenapa
terstruktur? Karena pada penggunaannya, SQL memiliki beberapa aturan
yang telah distandarkan oleh asosiasi yang bernama ANSI.
Jadi,
SQL adalah bahasa permintaan yang melekat pada satu database atau SMBD
tertentu, sedangkan MySQL merupakan database server-nya. Dengan kata
lain, MySQL merupakan SMBD-nya dan SQL adalah perintah atau bahasa yang
melekat di dalam SMBD tersebut.
Sebagai
suatu bahasa permintaan, SQL tidak hanya melekat pada MySQL server
saja, tetapi juga didukung oleh SMBD lainnya seperti MsQL, PostgreSQL,
Interbase, dan Oracle. Selain itu, SQL juga didukung oleh database bukan
server seperti MS Access maupun Paradox.
Tingkatan Aplikasi Database
Apabila
kita kategorikan, aplikasi yang akan kita buat dapat dibedakan menjadi
tiga, yaitu: berbasis Stand Alone, Multy User, dan Client/Server.
- Aplikasi Database Berbasis Stand Alone
Aplikasi yang berjalan Stand Alone adalah aplikasi yang hanya berjalan pada satu komputer dan hanya mampu diakses oleh satu orang dalam satu waktu. Database
(Back End) berserta program aplikasinya (Front End) berada dalam satu komputer, dan pengguna mengaksesnya dalam waktu dan tempat yang sama.
(Back End) berserta program aplikasinya (Front End) berada dalam satu komputer, dan pengguna mengaksesnya dalam waktu dan tempat yang sama.
Biasanya,
aplikasi seperti ini, kita buat untuk menangani pengolahan data atau
sistem informasi yang lingkupnya kecil. Database yang sering digunakan
adalah MS Access, Paradox, dBase, dan FoxPro. Sedangkan program
aplikasinya bebas menggunakan apa saja, seperti Visual Basic, Delphi,
atau CPP.
- Aplikasi Database Berbasis Multi User
Aplikasi yang berbasis Multi User artinya program tersebut dapat digunakan oleh banyak pengguna dalam satu waktu dan dalam tempat yang berbeda.
Isitilah Multi User
di atas memang sangat familiar dengan bahasa kita, yaitu banyak
pengguna. Pada prinsipnya, program yang dibuat hampir sama dengan jenis
sebelumnya atau jenis Stand Alone. Hanya saja, pada aplikasi
yang berbasis Multi User, databasenya dapat diakses secara bersama dalam
satu waktu oleh 2 orang atau lebih.
Konsepnya sangat sederhana, dengan cara membuat sebuah aplikasi Stand Alone, kemudian database-nya kita Sharing
(bagi pakai) kepada komputer lain yang hendak mengakses database
tersebut. Database yang dapat digunakan sama, yaitu: MS Access, dBase,
dan Paradox.
- Aplikasi Database Berbasis Client/Server
Untuk membuat aplikasi yang berbasis Client/Server, kita pasti membutuhkan aplikasi database yang bertindak sebagai Server (pusat) data dan komputer yang dijadikan sebagai Client (pengakses). Sehingga dalam aplikasi ini, kita harus menggunakan database server sebagai media penyimpanan datanya.
Dari kemampuan datanya, aplikasi yang berbasis Client/Server tentu memiliki kemampuan, data dapat diakses oleh dua orang atau lebih dalam satu waktu.
Yang membedakan antara aplikasi Multi User dan Client Server sebagai berikut:
- Aplikasi Multi User belum tentu Client/Server.
- Aplikasi Client/Server pasti juga berbasis Multi User.
- Aplikasi Multi User sifat databasenya hanya di-sharing (bagi pemakaian/ pemakaian bersama-sama).
- Aplikasi Client/Server sifat databasenya berjalan dalam jaringan dengan sistem Remote.
- Aplikasi Multi User dapat menggunakan SMBD biasa, yaitu Access, Paradox, atau dBase.
- Aplikasi Client/Server, databasenya harus berbasis Database Server, seperti MySQL, dan PostgreSQL.
- Aplikasi Multi User tidak terjamin keamanan datanya.
- Aplikasi Client/Server sangat terjamin keamanan datanya, karena mampu menangani autentifikasi user.
Memahami Perintah SQL
Telah
dikatakan sebelumnya bahwa SQL merupakan sebuah bahasa perimintaan yang
melekat pada suatu SMBD termasuk MySQL. Perintahnya dapat kita sebut
dengan query. Dalam penggunaannya, perintah SQL dikategorikan menjadi
tiga sub perintah, yaitu DDL (Data Definition Language), DML (Data Manipulation Language,) dan
DCL (Data Control Language).
DCL (Data Control Language).
- Data Definition Language (DDL)
Data Definition Language (DDL) merupakan sub bahasa SQL yang digunakan untuk membangun kerangka database. Ada tiga perintah yang termasuk dalam DDL, yaitu:
- CREATE : Perintah ini digunakan untuk membuat, termasuk di antaranya membuat database baru, tabel baru, view baru, dan kolom.
- ALTER :
Perintah ini digunakan untuk mengubah struktur tabel yang telah dibuat.
Pekerjaannya mencakup mengganti nama tabel, menambah kolom, mengubah
kolom, menghapus kolom, maupun memberikan atribut pada kolom.
- DROP : Perintah ini digunakan untuk menghapus database dan tabel.
- Data Manipulation Language (DML)
Data Manipulation Language (DML) merupakan
sub bahasa SQL yang digunakan untuk memanipulasi data dalam database
yang telah terbuat. Perintah yang digunakan, di antaranya:
- INSERT :
Perintah ini digunakan untuk menyisipkan atau memasukkan data baru ke
dalam tabel. Penggunaannya setelah database dan tabel selesai dibuat.
- SELECT :
Perintah ini digunakan untuk mengambil data atau menampilkan data dari
satu tabel atau beberapa tabel dalam relasi. Data yang diambil dapat
kita tampilkan dalam layar prompt MySQL secara langsung maupun
ditampilkan pada tampilan aplikasi.
- UPDATE : Perintah ini digunakan untuk memperbarui data lama menjadi data terkini. Jika Anda memiliki data yang salah atau kurang up to date dengan kondisi sekarang, maka dapat diubah isi datanya menggunakan perintah UPDATE.
- DELETE :
Perintah ini digunakan untuk menghapus data dari tabel. Biasanya data
yang dihapus merupakan data yang sudah tidak diperlukan lagi. Pada saat
menghapus data, perintah yang telah dijalankan tidak dapat digagalkan,
sehingga data yang telah hilang tidak dapat dikembalikan lagi.
- Data Control Language (DCL)
Data Control Language (DCL) merupakan sub bahasa SQL yang digunakan untuk melakukan pengontrolan data dan server databasenya. Perintah DCL, di antaranya:
- GRAND :
Perintah ini digunakan untuk memberikan hak/ijin akses oleh
administrator (pemilik utama) server kepada user (pengguna biasa). Hak
akses tersebut berupa hak membuat (CREATE), mengambil (SELECT),
menghapus (DELETE), mengubah (UPDATE), dan hak khusus berkenaan dengan
sistem databasenya.
- REVOKE :
Perintah ini memiliki kegunaan terbalik dengan GRAND, yaitu untuk
menghilangkan atau mencabut hak akses yang telah diberikan kepada user
oleh administrator.
0 komentar:
Posting Komentar