Sabtu, 25 Februari 2012

Materi MySQL

MYSQL
Pendahuluan
SQL ( Structured Query Language ) adalah bahasa stndart yang digunakan untuk mengakses server database . Semenjak tahun 70-an bahasa ini telah dikembangkan oleh IBM, yang kemudian diikuti dengan adanya Oracle, Informix dan Sybase. Dengan menggunakan SQL, proses akses database menjadi lebih user-friendly dibandingkan dengan misalnya dBase ataupun Clipper yang masih menggunakan perintah – perintah pemrograman murni. Selain MySQL, ada beberapa jenis pemograman yang berorientasi database yang dapat digunakan untuk aplikasi di web seperti ORACLE. Oracle merupakan sebuah perusahaan besar di dunia yang cakupan bisnis salah satunya adalah penjualan software dan pembuatan software database yang diperuntukkan bagi perusahaan-perusahaan besar di dunia. Karena softwarenya tidak bebas di “pasaran” atau tidak free software maka sebagian besar perusahaan kecil atau menengah atau programmer web masih menggunakan database MySQL sebagai software database perusahaan atau webnya.
Berita terayar mengabarkan bahwa ORACLE merupakan perusahaan yang mendapatkan keuntungan terbesar dalam bisnis software database. MySQL adalah sebuah server database SQL multiuser dan multi-threaded. SQL sendiri adalah salah satu bahasa database yang paling populer di dunia. Implementasi program server database ini adalah program daemon 'mysqld' dan beberapa program lain serta beberapa pustaka. MySQL dibuat oleh TcX dan telah dipercaya mengelola sistem dengan 40 buah database berisi 10,000 tabel dan 500 di antaranya memiliki 7 juta baris (kira-kira 100 gigabyte data). Database ini dibuat untuk keperluan sistem database yang cepat, handal dan mudah digunakan. Walaupun memiliki kemampuan yang cukup baik, MySQL untuk sistem operasi Unix bersifat freeware, dan terdapat versi shareware untuk sistem operasi windows. Menurut pembuatnya, MySQL disebut seperti "my-ess-que-ell" dan bukan my-sequel ! Sebagaimana database sistem yang lain, dalam SQL juga dikenal hierarki server dengan database-database. Tiap-tiap database memiliki tabel-tabel. Tiaptiap tabel memiliki field-field. Umumnya informasi tersimpan dalam tabel – tabel yang secara logik merupakan struktur 2 dimensi terdiri atas baris dan kolom.Field-field tersebut dapat berupa data seperti int , realm char, date, time dan lainnya. SQL tidak memiliki fasilitas pemrograman yang lengkap, tidak ada looping ataupun percabangan ,misalnya. Sehingga untuk menutupi kelemahan ini perlu digabung dengan bahasa pemrograman semisal C.
Dalam training ini kita menggunakan MySQL sebgai SQL server karena
berbagai kelebihannya. Antara lain;
1. Source MySQL dapat diperoleh dengan mudah dan gratis
2. Sintaksnya lebih mudah dipahami dan tidak rumit
3. Pengaksesan database dapat dilakukan dengan mudah
Keunggulan MySQL
? MySQL merupakan program yang multi-threaded, sehingga dapat dipasang pada server yang memiliki multi-CPU.
? Didukung program-program umum seperti C, C++, Java, Perl, PHP, Python, TCL APIs dls.
? Bekerja pada berbagai platform. (tersedia berbagai versi untuk berbagai sistem operasi).
? Memiliki jenis kolom yang cukup banyak sehingga memudahkan konfigurasi sistem database.
? Memiliki sistem sekuriti yang cukup baik dengan verifikasi host.
? Mendukung ODBC untuk sistem operasi Microsoft Windows.
? Mendukung record yang memiliki kolom dengan panjang tetap atau panjang bervariasi. dan masih banyak keunggulan lainnya
? MySQL merupakan software yang free, dan bisa di download di www.mysql.com. Sedangkan software database lainnya seperti ORACLE merupakan software yang harus di beli.
? MySQL dan PHP saling terintegrasi. Maksudnya adalah pembuatan database dengan menggunakan sintak PHP dapat di buat. Sedangkan input yang di masukkan melalui aplikasi web yang menggunakan script server-side seperti PHP dapat langsung dimasukkan ke database MySQL yang ada di server dan tentunya web tersebut berada di sebuah web server.
Sistem Server Database MySQL
Sistem database MySQL memiliki sistem sekuritas dengan tiga verifikasi yaitu user(name), password dan host. Verifikasi host memungkinkan untuk membuka sekuriti di 'localhost', tetapi tertutup bagi host lain (bekerja di lokal komputer). Sistem sekuriti ini ada di dalam database mysql dan pada tabel user. Proteksi juga dapat dilakukan terhadap database, tabel, hingga kolom secara terpisah.
Referensi
Referensi pengetahuan tentang MySQL secara umum telah dipandang cukup dari manual yang telah diberikan oleh TcX (mysql_3.22). Beberapa buku lain tengan database SQL banyak dijumpai dan dapat memberikan pengetahuan tambahan tentang pemrograman SQL.
Akses Databases Pada umumnya akses ke database melalui tiga tahapan, yaitu :
1. Koneksi ke database (persiapan)
2 .Query/permintaan data (operasi)
3. Pemutusan koneksi
Koneksi ke database dilakukan menggunakan fungsi-fungsi
mysql_connect(), mysql_pconnect(), mysqlselect_db().
Untuk lebih lanjutnya, kita akan membahasnya pada bagian modul berikutnya.
Instalasi MySQL
Untuk bisa bekerja dengan software MySQl, tentunya software tersebut harus terinstal terlebih dahulu di komputer kita. Untuk mendapatkan software tersebut kita dapat download dari website resmi MySQL yaitu http://www.mysql.com. Di website tersebut ada beberapa software MySQL dari yang terlama sampai yang terbaru. Dalam modul ini kita akan menggunakan MySQL versi mysql-3.23.32- win. Setelah anda download, file tersebut harus di ekstrak supaya kita dapat menginstalnya. Setelah di ekstrak maka kita install dengan menekan file setup dua kali. Selanjutnya ikuti instruksi yang ada ketika instalasi.
Setelah kita berhasil menginstal software tersebut, maka untuk menjalankannya kita harus memulainya dari Dos-Prompt. Buka tampilan Dos- Prompt dari menu program pada tombol start. Jika kita meletakkan file instalasi mysql di direktori “c:\mysql” maka pada tampilan Dos-Prompt kita masuk ke directori tersebut.
Dari gambar di atas, maka dapat dijelaskan bahwa :
Pada baris pertama yaitu c:\windows\cd\
Dengan di tulisnya cd\ berarti kita pindah ke directori asal yaitu “c:\”. Ada juga sintak “cd..” yang berarti bahwa kita naik ke folder yang di atas folder sebelumnya. Karena ketika kita menginstalnya di folder c:\mysql maka kita harus masuk ke mysql. Untuk mengkonfigurasinya maka kita harus masuk ke folder “bin” dengan menuliskan pada tampilan Dos-Prompt “c:\mysql\bin” Agar modul mysql berjalan dengan baik dan dapat terakses dengan benar maka kita harus menjalankan mysqldump yang ada di folder bin dengan sintak mysqld~2, juga kita harus menjalankan mysql-opt dengan sintak mysqld~1.
Sintak mysqladmin reload merupakan perintah untuk mengaktifkan mysql dan agar user dan passwordnya dapat aktif dengan baik. Sintak mysqladmin –u root password smkti berarti nama user adalah root dan password-nya adalah smkti. Hal ini sangat berguna ketika kita ingi menghubungkan sintak PHP dengan MySQL karena untuk menghubungkannya kita membutuhkan nama user yang memiliki database tertentu dengan password yang harus terproteksi supaya user lain tidak dapat melihat dan menggangu ini database yang telah ada.
Langkah selanjutnya adalah :

Untuk bisa masuk kedalam system MySQL maka kita harus menuliskan sintak :
mysql –u root –p
Maka akan muncul kalimat enter password . Password yang kita masukkan adalah password yang sudah kita nyatakan pada sintak sebelumnya yaitu smkti.
Jika telah nampak sintak :
mysql>
mysql>
maka kita telah masuk kedalan system database MySQL tersebut.
Tipe Data
Beberapa jenis tipe data dalam MySQL memiliki tipe tersendiri dalam tiap field di table databasenya.
MySQL mengenal beberapa type data field, yaitu :
1. Tipe data numerik
Tipe data numerik dapat dibedakan menajdi dua kelompok, yaitu tipe data integer dan tipe data floating point. Tipe data integer untuk data bilangan bulat sedangkan tipe data floating point digunakan untuk bilangan desimal.
2. Tipe data string
3. Tipe data waktu
Tipe data char() dan varchar() pada prinsipnya sama. Yang menjadi perbedaannya adalah pada jumlah memori yang dibutuhkan untuk penyimpanan. Memori penyimpanan yang dibutuhkan tipe data char() bersifat statis, besarnya tergantung pada berapa jumlah karakter yang ditetapkan pada saat field tersebut dideklarasikan. Sebaliknya, tipe data varchar() besar memori penyimpanan tergantung terhadap berapa karakter yang digunakan ditambah 1 byte yang berisi data jumlah karakter yang digunakan.
Pengantar Sintak Dasar
MySQL merupakan bahasa pemograman database di mana penulisan sintaknya tidak serumit bahasa pemograman lainnya seperti java, C++ dan sebagainya. Satu hal yang perlu diingat bahwa setiap penulisan script MySQL di Dos-Prompt harus selalu diakhiri dengan tanda titik koma (;). Di dalam source MySQL yang telah terinstal secara default telah terisi
sebuah database yang bernama mysql dan tes . Untuk dapat menampilkan apasaja nama database yang telah ada maupun yang akan kita buat, gunakan sintak :
Mysql> show databases;
Perhatikan contoh di bawah ini :
Contoh di atas menunjukkan bahwa dengan menggunakan sintak show databases; berarti kita dapat menampilkan seluruh nama database yang telah ada. Sintak untuk bisa masuk kedalam salah satu system database tersebut adalah :
Mysql>use nama_database;
Perhatikan gambar di bawah ini :
Dengan mengetikkan sintak use mysql; dan keluar kalimat database change, berarti kita telah masuk ke dalam database mysql yang telah ada. Di setiap database tentu ada terdapat beberapa table yang menjadi komponen dasar sebuah database. Sintak untuk menampilkan seluruh table yang telah ada di dalam database mysql adalah :
mysql>show tables;
perhatikan gambar di bawah :
Dari gambar di atas, kita dapat melihat bahwa di dalam database mysql sudah ada beberapa table yang telah default dari mysql-nya sendiri. Didalam database tersebut ada table columns_priv (columns_privilege), db, host, tables_privilege, dan user di mana tiap tablenya memiliki fungsi tertentu yang dapat diakses oleh tiap user. Database mysql ini biasanya sering digunakan bagi webmaster sebagai tempat penyimpanan data, karena table-table yang telah ada dan table yang dibutuhkan sebagian besar telah terpenuhi. Fungsi tiap table tersebut akan kita bahas di bawah ini.
Untuk bisa melihat isi seluruhnya dari salah satu table sepeti user, maka gunakan sintak sebagai berikut :
msql>select*from user;
Membuat Database Baru
Membuat database
Untuk membuat sebuah database dengan nama ‘formulir’ kita tidak perlu harus keluar terlebih dahulu dari salah satu database walau kita sebelumnya telah masuk ke dalamnya, untuk membuatnya gunakan syntax berikut
mysql>create database formulir;
Perhatikan gambar di bawah ini :
Jika ada kalimat query ok, 1 row affected (0,88 sec) berarti kita telah berhasil membuat sebuah database yang bernama formulir. Dan untuk menghapusnya, gunakan sintak sebagai berikut :
mysql>drop database formulir;
Perhatikan gambar di bawah ini :
Pada kondisi di atas, apabila kita lupa meletakkan tanda titik koma (;) di akhir kalimat maka pada baris setelahnya akan keluar tanda (->). Di samping tanda tersebut harus kita beri tanda titik koma (;) agar dapat berjalan dengan baik.
Membuat tabel
Setelah kita memasuki sebuah database, kita dapat mulai membuat tabel – tabel sesuai dengan keperluan kita. Dalam database dikenal primary key, yaitu field yang menjadi acuan data terhadap field-field lainnya dan primary key tidak boleh null.Misalkan nama tabelnya adalah ‘data’, maka sintaknya adalah :
mysql>create table data (field1 typefield1 not null , field2 typefield2,
primary key (field1);
contoh :
create table data (nama char(15) not null, alamat char(20), primary key(nama));
Perhatikan gambar di bawah ini :

Berbeda dengan sintak membuat database yang baru (create database formulir), membuat table dalam database harus langsung disertai dengan menuliskan nama kolom dan tipe datanya. Tanpa membuat hal tersebut maka kita belum bis membuat suatu table karena kolomnya belum ada. Dan juga untuk membuat suatu table yang baik maka harus disertai dengan primary key sebagai kolom pembeda dari kolom yang lainnya agar user dalam mencari data tidak mengalami kesusahan dalam mencari data yang diinginkan.
Mengisi tabel
Setelah tabel terbentuk, kita dapat memulai pekerjaan mengisi database.
Syntax yang digunakan adalah :
mysql>insert into data (field1,field2) values (valuefield1,valuefield2);
contoh :
insert into data (nama, alamat) values (‘firdaus’,’pustena’);
perhatikan contoh di bawah ini :

yang perlu diperhatikan, untuk type field char data yang dimasukkan harus diapit tanda petik ‘ ‘, sedangkan untuk tipe integer tidak.
Untuk menampilkan isi dari imput yang barusan kita isi gunakan sintak :
mysql>select*from nama_table;
contoh :
select*from data;
perhatikan gambar di bawah :
Tanda (*) merupakan perintah untuk menampilkan seluruh kolom beserta isinya. Jika kita ingin menampilkan hanya kolom nama saja, maka sintaknya adalah:
mysql>select field from nama_table;
contoh :
select nama from data;
Perhatikan gambar di bawah :

Tidak ada komentar: