Senin, 21 Mei 2012

Pengantar Data Base Management System MySQL


Pengantar Data Base Management System MySQL

Database atau basis data dapat dibayangkan ibarat sebuah lemari arsip. Jika anda bekerja diperkantoran tentu sangat banyak arsip-arsip atau dokumen kantor yang disimpan kedalam lemari tersebut. Sering anda melihat bahwa penempatan arsip didalam lemari tidak dilakukan secara sembarangan/acak, tapi diberi pembeda antara satu arsip dengan arsip yang lainnya. Pembedanya dapat berupa nomor urut, warna sampul, urutan letak atau berdasarkan tanggal dan lain sebagainya. Begitu juga halnya dengan buku telpon/alamat yang anda punyai, biasanya diatur menurut abjad nama atau kategori tertentu, seperti teman, keluarga, klien dan lain sebagainya. Semuanya disimpan dan diatur menurut aturan tertentu sesuai dengan yang diinginkan. Upaya anda untuk menyusun dan melakukan hal diatas baru akan terasa kalau data arsip dan daftar alamat yang dimiliki sudah banyak. Mengapa hal ini anda lakukan ? tidak lain tujuannya adalah untuk memudahkan dalam mencari atau mengambil data tertentu dalam arsip maupun buku alamat tadi secara Cepat dan mudah. Bayangkan kalau semua arsip atau daftar buku alamat tersebut tidak diatur penyusunannya, tentu akan sangat sulit untuk mencari arsip atau nomor telpon tertentu. Tidak saja sulit tapi akan sangat membutuhkan waktu yang lama.
DBMS (DataBase Management System) adalah sistem yang secara khusus dibuat untuk memudahkan pemakai dalam mengelola basis data. Sistem ini dibuat untuk mengatasi kelemahan sistem pemrosesan yang berbasis berkas.Pada pendekatan yang berbasis berkas, umumnya perancangan sistem didasarkan pada kebutuhan individual pemakai, bukan berdasarkan kebutuhan sejumlah pemakai. Setiap kali terdapat kebutuhan baru dari seorang pemakai, kebutuhan segera diterjemahkan kedalam program komputer. Akibatnya, kemungkinan besar setiap program aplikasi menuliskan data tersendiri. Sementara itu ada kemungkinan data yang sama juga terdapat pada berkas-berkas lain yang digunakan oleh program aplikasi lain. Database digunakan untuk menyimpan informasi, memelihara informasi, dan membuat informasi tersebut tersedia saat dibutuhkan. kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil kueri (query) basis data disebut sistem manajemen basis data (database management system, DBMS). Sistem basis data dipelajari dalam ilmu informasi.
Untuk mengelola database diperlukan suatu perangkat lunak yang disebut DBMS (Database Management System). DBMS merupakan suatu sistem perangkat lunak yang memungkinkan user (pengguna) untuk membuat, memelihara, mengontrol, dan mengakses database secara praktis dan efisien. yang termasuk (contoh) ke dalam DBMS :


    • Microsoft SQL Server
    • Oracle
    • Sybase
    • Interbase
    • XBase
    • Firebird
    • MySQL
    • PostgreSQL
    • Microsoft Access
    • dBase III
    • Paradox
    • FoxPro
    • Visual FoxPro
    • Arago
    • Force
    • Recital
    • dbFast
    • dbXL
    • Quicksilver
    • Clipper
    • FlagShip
    • Harbour
    • Visual dBase
    • Lotus Smart Suite Approach
Database Language
1.        Data Definition Language (DDL), kelompok perintah untuk mendefinisikan atribut-atribut basis data, contohnya create, alter, drop. DDL adalah sebuah metode Query SQL yang berguna untuk mendefinisikan data pada sebuah Database, Query yang dimiliki DDL adalah :
·      CREATE      : Digunakan untuk membuat Database dan Tabel
·      Drop              : Digunakan untuk menghapus Tabel dan Database
·      Alter              : Digunakan untuk melakukan perubahan struktur tabel yang telah dibuat, baik menambah Field ( Add ), mengganti nama Field ( Change ) ataupun menamakannya kembali ( Rename ), dan menghapus Field ( Drop ).
2.        Data Manipulation Language (DML), kelompok perintah untuk memanipulasi data dalam basis data, contohnya select, insert, delete, dan update. DML adalah sebuah metode Query yang dapat digunakan apabila DDL telah terjadi, sehingga fungsi dari Query DML ini untuk melakukan pemanipulasian database yang telah dibuat. Query yang dimiliki DML adalah :
·      INSERT : Digunakan untuk memasukkan data pada Tabel Database
·      UPDATE: Digunakan untuk pengubahan terhadap data yang ada pada Tabel database
·      DELETE: Digunakan untuk Penhapusan data pada tabel Database
3.        SQL (Structured Query Language), SQL adalah bahasa yang digunakan untuk pengaksesan database. Menurut ANSI (American National Standards Institute), bahasa ini merupakan standar untuk Relational Database Management Systems (RDBMS).
Dalam pembuatan DBMS diperlukan beberapa komponen fungsional penyusunnya sebagai berikut:
·         DML Precompiler : mengkonversi pernyataan-pernyataan DML yang dimasukkan di dalam program aplikasi ke dalam pemanggilan prosedur normal di dalam bahasa induknya. Procompiler harus berinteraksi dengan query processor untuk membuat kode-kode yang diperlukan.
·         Query Processor : menterjemahkan pernyataan-pernyataan bahasa query ke dalam instruksi-instruksi low-level yang dimengerti oleh database manager.
·         DDL Compiler : mengkonversi pernyataan DDL ke dalam sekumpulan table yang mengandung metadata atau “data mengenai data”
·         Database Manager : menyediakan interface antara data low-level yang disimpan didalam basisdata dengan program-program aplikasi dan queries yang dikirimkan ke system.
Keunggulan DBMS
Salah satu tujuan dari DBMS adalah memberikan tampilan kepada pengguna dalam hal menyampaikan data. Untuk itu dalam DBMS terdapat Level Abstraksi Data. Level ini berguna untuk menyembunyikan detail atau kompleksitasnya basis data seperti bagaimana data disempan dan diolah. Sehingga pengguna hanya melihat tampilan yag dibutuhkan oleh pengguna.
Fungsi yang lebih penting dari DBMS adalah proteksi dan maintain database dalam jangka panjang.
  1. Proteksi: mengandung system protectionyang menangani kondisi malfunction (crash) baik pada hardware ataupun software, juga mengandung security. Protection yang menangani pengaksesan oleh user terlarang.
  2. Maintain: mengandung sistem maintaining yang selalu meningkatkan kebutuhan perubahan tiap waktu.
Adapun keunggulan lain dari DBMS adalah:
·         Kepraktisan artinya media penyimpanan berukuran kecil tetapi padat informasi.
·         Kecepatan artinya pengambilan dan pengubahan data jauh lebih cepat.
·         Mengurangi kejemuan artinya terhindar mengulangi pekerjaan yang berulang-ulang.
·         Kekinian artinya Informasi pada DBMS bersifat mutakhir dan akurat setiap saat.

Abstraksi Data
Abstraksi data merupakan tingkatan-tingkatan pengguna dalam memandang bagaimana sebenarnya data diolah dalam sebuah sistem database sehingga menyerupai kondisi yang sebenarnya dihadapi oleh pengguna sehari-hari.. Sebuah DBMS seringkali menyembunyikan detail tentang bagaimana sebuah data disimpan dan dipelihara (diolah) dalam sebuah sistem database, dengan tujuan untuk memudahkan pengguna dalam menggunakan DBMS tersebut. Karena itu seringkali data yang terlihat oleh pemakai sebelumnya berbeda dengan yang tersimpan secara fisik.

Terdapat 3 level abstraksi : 
  1.  Level Fisik (Physical Level)
Lapis fisik merupakan lapis terendah, lapis ini menjelaskan bagaimana (how) data sesungguhnya disimpan. Pada lapis inilah struktur data dijabarkan secara rinci.
  1. 2.      Level Logik / Konseptual (Conceptual Level)
Lapis konseptual lebih tinggi dari lapis fisik. Lapis ini menjabarkan data apa (what) saja yang sesungguhnya disimpan pada basisdata, dan juga menjabarkan hubungan-hubungan antardata secara keseluruhan. Seorang pengguna dalam level ini dapat mengetahui bahwa data mahasiswa disimpan pada tabel mahasiswa, tabel krs, tabel transkrip dan lain sebagainya. Level ini biasa dipakai oleh DBA.
  1. 3.      Level Penampakan/pandangan (View Level)
Lapis pandangan merupakan lapis tertinggi pada abstraksi data. Pada lapis ini pengguna hanya mengenal struktur data yang sederhana, yang berorientasi pada kebutuhan pengguna. Data yang dikenal oleh masing-masing pengguna bisa berbeda-beda dan barangkali hanya mencakup sebagian dari basis data. Misalnya: Bagian keuangan hanya membutuhkan data keuangan, jadi yang digambarkan hanya pandangan terhadap data keuangan saja, begitu juga dengan bagian akuntansi, hanya membutuhkan data akuntansi saja. Jadi tidak semua pengguna database membutuhkan seluruh informasi yang terdapat dalam database tersebut.
Database Software
      DB2 - http://www-306.ibm.com/software/data/db2/
      Microsoft SQL Server - http://www.microsoft.com/sql/
       Oracle - http://www.oracle.com
      Sybase - http://www.sybase.com/
       Interbase - http://www.borland.com/interbase
       Microsoft office Access
      Firebird - http://www.firebirdsql.org/
      MySQL – http://www.mysql.com
      PostgreSQL - http://www.postgresql.org/

MySQL
MySQL dikembangkan oleh sebuah perusahaan Swedia bernama MySQL AB, yang kala itu bernama TcX DataKonsult AB, sejak sekitar 1994–1995. MySQL adalah sebuah system manajemen database yang saling berhubungan. Sebuah  hubungan databse dari data yang tersimpan pada table yang terpisah daripada menyimpan semua data pada ruang yang sangat besar. Hal ini menambah kecepatan dan fleksibilitas.

MySQL memiliki beberapa keistimewaan dan keunggulan, antara lain :
  1. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
  2. Perangkat lunak sumber terbuka. MySQL didistribusikan sebagai perangkat lunak sumber terbuka, dibawah lisensi GPL sehingga dapat digunakan secara gratis.
  3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.
  4. ‘Performance tuning’, MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
  5. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.
  6. Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (query).
  7. Keamanan. MySQL memiliki beberapa lapisan keamanan seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta sandi terenkripsi.
  8. Skalabilitas dan Pembatasan. MySQL mampu menangani basis data dalam skala besar, dengan jumlah rekaman (records) lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
  9. Konektivitas. MySQL dapat melakukan koneksi dengan klien menggunakan protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT).
  10. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa Indonesia belum termasuk di dalamnya.
  11. Antar Muka. MySQL memiliki antar muka (interface) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).
  12. Klien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan (tool)yang dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petunjuk online.
  13. Struktur tabel. MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL ataupun Oracle.
Tipe data dalam MySQL


Perintah dasar MySQL
Perintah – perintah  SQL dalam database MySQL, yaitu
a. Memasukkan atau menambah record baru ke dalam database.
b. Mengeksekusi query database
c. Mengambil data dari database
d. Mengubah record pada database
e. Menghapus record pada database
Perintah SQL dapat diketik dengan huruf besar atau kecil (non case sensitive). Setelah selesai mengetik perintah di MySQL harus diakhiri dengan tanda titik koma sebagai penanda akhir dari perintah MySQL. Perintah SQL dapat diketik dengan huruf besar atau kecil (non case sensitive).

Pernyataan dasar MySQL
·         Alter: Mengubah struktur tabel
·         Create: Menciptakan database atau tabel
·         Delete : Menghapus baris pada tabel
·         Drop : Menghapus tabel
·         Insert : Menambahkan baris pada tabel
·         Select : Memilih baris dan kolom pada tabel
·         Update : Mengubah nilai pada sebuah baris

Contoh MySQL
CREATE TABLE tblpengarang (
      kd_pengarang INT UNIQUE NOT NULL,
      nama                CHAR(15) NOT NULL,
      alamat              CHAR(30),
      kota                 CHAR(15) )

Keterangan:
Tblpengarang = Nama Tabel
Kd_pengarang, nama, alamat, kota = Nama Kolom
Integer, char =  Tipe data
Char(30) = Panjangnya maksimal 30 karakter
Null = Nilai kolom harus diisi
Unique = nilai pada kolom tidak boleh ada yang sama (bersifat unik).

Tidak ada komentar:

Posting Komentar