Kamis, 05 Desember 2013

MySQL



SEJARAH MySQL

MySQL dikembangkan sekitar tahun 1994 oleh sebuah perusahaan pengembang software dan konsultan database bernama MYSQL AB yang berada di Swedia. Waktu itu perusahaan tersebut masih bernama TcX DataKonsult AB, dan tujuan awal dikembangkannya MySQL adalah untuk mengembangkan aplikasi berbasis web pada client. Awalnya Michael "Monty" Widenius, pengembang satu-satunya di TcX memiliki sebuah aplikasi UNIREG dan rutin ISAM buatannya sendiri dan sedang mencari antarmuka SQL yang cocok untuk diimplementasikan ke dalamnya. Mula-mula Monty memakai miniSQL (mSQL) pada eksperimennya itu, namun SQL dirasa kurang sesuai, karena terlalu lambat dalam pemrosesan query. Akhirnya Monty menghubungi David Hughes, pembuat mSQL yang sedang merilis versi kedua dari mSQL. Kemudian Monty mencoba membuat sendiri mesin SQL yang memiliki antarmuka mirip dengan SQL, tetapi dengan kemampuan yang lebih sesuai sehingga lahirlah MySQL. Tentang pengambilan nama MySQL, sampai saat ini masih belum jelas asal usulnya. Ada yang berpendapat nama My diambil dari huruf depan dan belakang Monty, tetapi versi lain mengatakan nama itu diambil dari putri Monty yang kebetulan juga bernama My.

Perkembangan MySQL

Mula-mula TcX memakai mSQL, atau “mini SQL”. Barangkali mSQL adalah satu-satunya kode database open source yang tersedia dan cukup sederhana saat itu, meskipun sudah ada Postgres. Namun ternyata, menurut Monty, mSQL tidaklah cukup cepat maupun fleksibel. Versi pertama mSQL bahkan tidak memiliki indeks. Setelah mencoba menghubungi David Hughes pembuat mSQL dan ternyata mengetahui bahwa David tengah sibuk mengembangkan versi dua, maka keputusan yang diambil Monty yaitu membuat sendiri mesin SQL yang antarmukanya mirip dengan mSQL tapi memiliki kemampuan yang lebih sesuai kebutuhan.
Kemudian ahirlah MySQL. Nama MySQL (baca: mai és kju él) tidak jelas diambil dari mana. Ada yang bilang ini diambil dari huruf pertama dan terakhir nama panggilan Michael Widenius, Monty. Ada lagi yang bilang kata My diambil dari nama putri Monty, yang memang diberi nama My karena Monty memang aslinya seorang Finlandia.
MySQL versi 1.0 dirilis Mei 1996 secara terbatas kepada empat orang. Baru di bulan Oktober versi 3.11.0 dilepas ke publik. Namun mula-mula kode ini tidak diberikan di bawah lisensi General Public License, melainkan lisensi khusus yang intinya kurang lebih begini: “Source code MySQL dapat dilihat dan gratis, serta server MySQL dapat dipakai tanpa biaya tapi hanya untuk kebutuhan nonkomersial. Untuk kebutuhan komersial (mis: mengemas dan menjual MySQL, atau menyertakan MySQL dalam program komersial lain) Anda harus bayar lisensi.” Sementara distribusi Windows MySQL sendiri dirilis secara shareware.
Barulah di versi-versi akhir seri 3.22 sepanjang 1998–1999 MySQL menjadi semakin popular dan dilirik orang. Stabilitasnya sudah baik. Kecepatannya meningkat. Sudah tersedia di berbagai platform, termasuk Windows. Seri 3.22 ini banyak dipakai di berbagai instalasi.
Barulah pada Juni 2000 MySQL AB mengumumkan bahwa sejak versi 3.23.19, MySQL adalah software bebas berlisensi GPL. Artinya, “Source code MySQL dapat dilihat dan gratis, serta server MySQL dapat dipakai tanpa biaya untuk kebutuhan apa pun. Tapi jika Anda memodifikasi source code, Anda juga harus melepasnya di bawah lisensi yang sama, yaitu GPL.” Kini perusahaan MySQL AB, yang beranggotakan sekitar 10 programer dan 10 karyawan lain itu, memperoleh pemasukan terutama dari jasa konsultasi seputar MySQL. Versi publik pertama, yang hanya berjalan di Linux dan Solaris serta sebagian besar masih belum terdokumentasi itu, dengan berangsur-angsur diperbaiki dan ditambah fitur demi fiturnya tapi tetap dengan fokus utama pengembangan pada kelangsingan dan kecepatan. Artinya, fitur yang menyebabkan MySQL menjadi lambat tidaklah ditambahkan, atau ditunda dulu, atau ditambahkan tapi menjadi fitur yang opsional. Versi awal MySQL ini, meski sudah bisa dipakai untuk aplikasi Web sederhana, belumlah memadai sama sekali untuk aplikasi bisnis hingga sekarang, sehingga MySQL AB tetap memberikan dukungan technical support untuk seri ini.
Setelah itu, pada bula Agustus 2002, Muncullah MySQL versi 4.0 beta yang dirilis pada bulan Maret 2003, lalu versi 4.0 beta dikembangkan menjadi versi 4.1 beta yang dirilis pada bulan juni 2004. Kemudian pada bulan maret 2005 muncullah MySQL versi 5.0 telah dirilis. Bahkan MySQL AB memberikan embelembel recommended pada MySQL 5.0 yang akhirnya diperbarui menjadi MySQL versi 5.1 Versi 5.1 saat ini sedang dalam tahap re produksi sejak November 2005. Versi 5.1 saat ini sedang dalam tahap re produksi sejak November 2005 dan terus dilakukan pengembangan hingga sekarang ini.

Pengertian MySQL

MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris: database management system) atau DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL.

Perintah Dasar dan Fungsi dBASE



Perintah-perintah Dasar dBase

Ø Merubah Struktur Database
MODIFY STRUCTURE atau MODI STRU 

Ø Mengcopy Struktur File
COPY STRUCTURE TO [] [FIELD ]
Proses penggandaan tersebut tidak diikuti dengan datanya

Ø Mengcopy File Dbase
COPY TO [(Scope)] [FIELDS (daftar field)]
[WHILE/FOR ]
Jika akan meng-copy struktur dan copy file database pastikan file tersebut aktif

Ø Mengcopy File
COPY FILE TO 

Ø Mengubah Nama File
RENAME TO

Ø Menghapus File
DELETE FILE 
Dalam proses copy file, rename & delete file ini harus jelas extensionnya, karena proses tersebut tidak hanya untuk file database saja

Ø Membuka File Database
Sebelum mengisi data, terlebih dahulu file database harus dibuka dengan
perintah :
.USE

Ø Menutup File Database
File database yang aktif harus ditutup dengan perintah :
.USE

Ø Mengisi atau menambah data
.APPEND atau .APPEND[BLANK]
Penambahan data akan dilakukan pada posisi EOF (End Of File) dan otomatis EOF-nya akan turun lagi.

Ø Menyisipkan Data
.INSERT atau .INSERT [BLANK] [BEFORE]
Penyisipan akan diletakkan pada record setelah posisi pointer.

Ø Menghapus Data.
.DELETE [(scope)] [WHILE/For (kondisi)]
Bila tidak digunakan parameternya maka yang akan di delete adalah record pada posisi pointer.

Ø Membatalkan Penghapusan
.RECALL [(scope)] [WHILE/For (kondisi)]
Sama dengan Delete, jika tidak digunakan parameter maka yang akan dibatalkan adalah record posisi pointer

Ø Menegaskan Penghapusan
.PACK
Berbeda dengan perintah penyuntingan sebelumnya (selalu per record yang dituju), untuk perintah
BROWSE memungkinkan, meneliti dan merubah data sebanyak-banyaknya yang dapat dicakup layar.
Tombol yang dapat digunakan :
[CTRL]-A atau [HOME] : satu field ke kiri
[CTRL]-F atau [END] : satu field ke kanan
[CTRL]-Q atau [ESC] : batalkan perubahan
[CTRL]-W atau [CTRL]-[END] : simpan
[CTRL]-Y : hapus karakter dari posisi kursor
[CTRL]-B : gulung layar ke kiri
[CTRL]-Z : gulung layar ke kanan

Ø MencariRecord
.SKIP [exp N]

Ø Memindahkan Pointer Maju atau Mundur
.LOCATE [] FOR 

Ø Melihat Data
.DISPLAY / LIST [OFF] [(scope)] [daftar field] [WHILE (kondisi)] [FOR
(kondisi)] [TO PRINT]

OFF : Untuk menampilkan atau mematikan nomor record
SCOPE : terdapat 4 pilihan
RECORD n : hanya pada record ke n
NEXT n : sebanyak n record mulai dari pointer
ALL : semua record
REST : semua record setelah pointer
WHILE : dilakukan selama kondisi bernilai benar, berhenti
FOR : dilakukan selama memenuhi kondisi

Perbedaan :
LIST : Menampilkan data secara terus menerus
DISPLAY : Menghentikan penampilan data untuk setiap 20 baris

Fungsi-fungsi dBASE

1.      Fungsi Integer berfungsi untuk membulatkan suatu bilangan
Sintaks :
INT (Ekspresi Numerik)
Contoh :
.? int(7.9)
7
.X=7.5
7.5
.? int(-2.1)
-2
.? int(X+2)
9

2.       Fungsi String berfungsi untuk mengubah numerik menjadi karakter.
Sintaks :
STR ( [] [desimal])
Contoh :
.? str(15.49345)
15
.? str(15.500001)
16
Panjang : Panjang ekspresi numerik termasuk titik desimal
Desimal : Posisi desimal dalam ekspresi

3.      Fungsi Substring berfungsi untuk mengambil beberapa karakter
Sintaks :
SUBSTR ( [] [number of chr])
Contoh :
.store “STMIK GUNADARMA” TO NAMA
.? substr(NAMA,7)
GUNADARMA
.? substr(“1853 4780 21245”,6,2)
47

4.      Fungsi Val berfungsi untuk merubah karakter menjadi Numerik
Sintaks :
VAL (ekspresi karakter)
Contoh :
.? val(“ABCD”)
0
.? val(“12.456”)
12.456
.? val(“123ABC”)
123

5.      Fungsi Length berfungsi untuk menghitung panjang karakter
Sintaks :
LEN (ekspresi karakter)
Contoh :
.? len(“XYZ”)
3
.? len(“1234567”)
7
6
.? len(“ABC DE”)
6

6.        Fungsi Log berfungsi untuk menghitung logaritma natural.
Sintaks :
LOG (ekspresi karakter)
Contoh :
.? log(10)
2.30


7.       Fungsi Round berfungsi untuk pembulatan numerik (sampai desimal angka)
Sintaks :
ROUND (ekspresi karakter, )
Contoh :
.? round(1.234567,2)
1.23
      .? round(1.237654,2)
1.24

          8.    Fungsi Space berfungsi untuk membuat karakter blank sebanyak ekspresi numerik
Sintaks :
SPACE(ekspresi numerik)
Contoh :
.? “Halo”+space(5)+”Bandung”
Halo Bandung
.Kosong=4
.? “Univ”+space(Kosong)+”Gunadarma”
Univ Gunadarma

9.     Fungsi SQRT berfungsi untuk mencari akar dari suatu ekspresi numerik
Sintaks :
SQRT (ekspresi numerik)
Contoh :
.? sqrt(16)
4
.store 100 to B
.? sqrt(B)
10

10.  Fungsi Trim berfungsi untuk menghilangkan spasi yang terdapat di ujung karakter
        Sintaks :
       TRIM(ekspresi karakter)
       Contoh :
       .? trim(“Saya “)
       Saya
       .? trim(” saya ”)
       saya
       .? trim(“Halo “)+”Bandung”
       HaloBandung