PHP 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. Tidak sama dengan proyek-proyek seperti
Apache, dimana perangkat lunak dikembangkan oleh komunitas umum, dan
hak cipta untuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial
Swedia MySQL AB, dimana memegang hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang
Finlandia yang mendirikan MySQL AB adalah:
David Axmark,
Allan Larsson, dan
Michael "Monty" Widenius. MySQL adalah Relational Database Management System (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL (General Public License). Dimana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat closed source atau komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu SQL (Structured Query Language). SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis. Keandalan suatu sistem database (DBMS) dapat diketahui dari cara kerja optimizer-nya dalam melakukan proses perintah-perintah SQL, yang dibuat oleh user maupun program-program aplikasinya. Sebagai database server, MySQL dapat dikatakan lebih unggul dibandingkan database server lainnya dalam query data. Hal ini terbukti untuk query yang dilakukan oleh single user, kecepatan query MySQL bisa sepuluh kali lebih cepat dari PostgreSQL dan lima kali lebih cepat dibandingkan Interbase. Selain itu MySQL juga memiliki beberapa keistimewaan, antara lain : 1. Portability MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi. 2. Open Source MySQL didistribusikan secara open source (gratis), dibawah lisensi GPL sehingga dapat digunakan secara cuma-cuma. 3. Multiuser MySQL dapat digunakan oleh beberapa user 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. Column types MySQL memiliki tipe kolom yang sangat kompleks, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain. 6. Command dan functions MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam query. 7. Security MySQL memiliki beberapa lapisan sekuritas seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta password terenkripsi. 8. Scalability dan limits MySQL mampu menangani database dalam skala besar, dengan jumlah 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. Connectivity MySQL dapat melakukan koneksi dengan client menggunakan protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT). 10. Localisation MySQL dapat mendeteksi pesan kesalahan pada client dengan menggunakan lebih dari dua puluh bahasa. Meskipun demikian, bahasa Indonesia belum termasuk didalamnya. 11. Interface MySQL memiliki interface (antar muka) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunak 12. Clients dan tools MySQL dilengkapi dengan berbagai tool yang dapat digunakan untuk administrasi database, dan pada setiap tool yang ada disertakan petunjuk online. 13. Struktur tabel MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan database lainnya semacam PostgreSQL ataupun ORACLE. MySQL sangat populer dalam
aplikasi web seperti
MediaWiki (perangkat lunak yang dipakai
Wikipedia dan proyek-proyek sejenis) dan
PHP-Nuke dan berfungsi sebagai komponen basis data dalam
LAMP. Popularitas sebagai aplikasi web dikarenakan kedekatannya dengan popularitas
PHP, sehingga seringkali disebut sebagai Dynamic Duo. Untuk melakukan administrasi dalam basis data MySQL, dapat menggunakan modul yang sudah termasuk yaitu
command-line (perintah: mysql dan mysqladmin). Juga dapat diunduh dari situs MySQL yaitu sebuah modul berbasis grafik (
GUI):
MySQL Administrator dan
MySQL Query Browser. Selain itu terdapat juga sebuah perangkat lunak gratis untuk administrasi basis data MySQL berbasis web yang sangat populer yaitu
phpMyAdmin. Untuk perangkat lunak untuk administrasi basis data MySQL yang dijual secara komersial antara lain: MySQL front, Navicat dan EMS SQL Manager for MySQL.
PHP adalah salah satu bahasa pemrograman di Internet. PHP bersifat cepat, gratis dan murah ( gratis ), selain itu PHP mendukung penggunaan database seperti MySQL, PostgreSQL, mSQL, Oracle etc. Untuk dapat menjalankan PHP melalui browser, maka anda diharuskan terlebih dahulu menginstall web server ( misalnya Apache, PWS, IIS ) lalu menginstall PHP, sedangkan untuk menjalankan MySQL anda tidak perlu menginstall web server, hanya saja jika ingin dijalankan melalui browser, maka anda harus menginstall web server. Prosedur penginstallan web server, PHP dan MySQL dapat anda baca pada manual masing – masing. Adapun manual dan instalan Apache, PHP maupun MySQL dapat anda cari di
http://ftpsearch.itb.ac.id . Jika anda tidak ingin direpotkan dengan prosedur penginstallan PHP, anda dapat menjalankan PHP di direktori public_html anda di s.ee.itb.ac.id. Hal itu dapat dilakukan karena PHP bersifat server side artinya script PHP di jalankan di server, bukan di computer client. Jadi semakin banyak client yang menjalankan script PHP di suatu situs, maka beban yang ditanggung oleh server semakin bertambah. Sintaks – sintaks dalam PHP banyak yang sama dengan C++, dalam hal ini penulis tidak memberikan penjelasan penggunaan sintaks – sintaks tersebut mengingat para cakru telah memperoleh pengajaran tersebut di dalam kuliah maupun praktikum EL – 207 Komputer dan Pemrograman.
HyperText Markup Language (HTML) adalah sebuah
bahasa markup yang digunakan untuk membuat sebuah
halaman web dan menampilkan berbagai informasi di dalam sebuah browser Internet. Bermula dari sebuah bahasa yang sebelumnya banyak digunakan di dunia penerbitan dan percetakan yang disebut dengan
SGML (Standard Generalized Markup Language), HTML adalah sebuah standar yang digunakan secara luas untuk menampilkan halaman web. HTML saat ini merupakan standar
Internet yang didefinisikan dan dikendalikan penggunaannya oleh
World Wide Web Consortium (W3C). Versi terakhir dari HTML adalah HTML 4.01, meskipun saat ini telah berkembang
XHTML yang merupakan pengembangan dari HTML. HTML berupa kode-kode tag yang menginstruksikan browser untuk menghasilkan tampilan sesuai dengan yang diinginkan. Sebuah file yang merupakan file HTML dapat dibuka dengan menggunakan
browser web seperti
Mozilla Firefox atau
Microsoft Internet Explorer. HTML juga dapat dikenali oleh aplikasi pembuka email ataupun dari PDA dan program lain yang memiliki kemampuan browser. HTML dokumen tersebut mirip dengan dokumen teks biasa, hanya dalam dokumen ini sebuah teks bisa memuat instruksi yang ditandai dengan kode atau lebih dikenal dengan TAG tertentu. Sebagai contoh jika ingin membuat teks ditampilkan menjadi tebal seperti: TAMPIL TEBAL, maka penulisannya dilakukan dengan cara: TAMPIL TEBAL. Tanda digunakan untuk mengaktifkan instruksi cetak tebal, diikuti oleh teks yang ingin ditebalkan, dan diakhiri dengan tanda untuk menonaktifkan cetak tebal tersebut.
Bahasa Pemrograman ~ Bahasa pemrograman adalah bahasa yang menjadi sarana manusia untuk berkomunikasi dengan komputer. ~ Pikiran manusia yang tidak terstruktur harus dibuatterstruktur agar bisa berkomunikasi dengan komputer. ~ Komputer memerlukan kepastiandan logika yang benaruntuk dapat melakukan suatu instruksi tertentu. ~ Untuk itu diperlukan algoritma yg baikdan benar.
Bahasa Mesin ~ Bahasa mesin adalah bahasa yang berisi kode-kode mesin yang hanya dapat diinterpretasikan langsung oleh mesin komputer. ~ Bahasa mesin sering juga disebut native code(sangat tergantung pada mesin tertentu). Bahasa ini merupakan bahasa level terendah dan berupa kode biner: 0 dan 1. ~ Sekumpulan instruksi dalam bahasa mesin dapat membentuk microcode(semacam prosedur dalam bahasa mesin). Contoh: untuk mesin IBM/370 0001100000110101 = 1835 yang berarti mengkopikan isi register 5 ke register 3
Keuntungan: Eksekusi cepat Kerugian: Sangat sulit dipelajari manusia
Bahasa Assembly (mnemonic code) ~ Bahasa assembly adalah bahasa simbol dari bahasa mesin. ~ Setiap kode bahasa mesin memiliki simbol sendiri dalam bahasa assembly. Misalnya ADD untuk penjumlahan, MUL untuk perkalian, SUB untuk pengurangan, dan lain-lain. ~ Sekumpulan kode-kode bahasa assembly dapat membentuk makroinstruksi. ~ Bahasa assembly juga memiliki program pen-debug-nya, tidak seperti bahasa mesin. Misalnya: Turbo Assembler dan debug pada DOS. Assembler akan mencocokkan token simbol dari awal s/d akhir, kemudian dikodekan menjadi bahasa mesin.
Kelebihan: Eksekusi cepat, masih bisa dipelajari daripada bahasa mesin, file hasil sangat kecil Kekurangan: Tetap sulit dipelajari, program sangat panjang
Bahasa Tingkat Tinggi (High Level Language) ?Bahasa ini lebih dekat dengan bahasa manusia. Bahasa inilah yang akan dibahas pada matakuliah ini. ?Bahasa ini juga memberikan banyak sekali fasilitas kemudahan pembuatan program, misalnya: variabel, tipe data, konstanta, struktur kontrol, loop, fungsi, prosedur dan lain-lain. Contoh: Pascal, Basic, C++, dan Java. ?Mendukung information hiding, enkapsulasi, dan abstract data type. ?Bahasa Tingkat tinggi memiliki generasi, misalnya generasi ke-3 (Pascal, C/C++) dan generasi ke-4 (Delphi, VB, VB.NET Visual Foxpro) Keuntungan: -Mudah dipelajari -Mendekati permasalahan yang akan dipecahkan -Kode program pendek Kerugian: Eksekusi lambat Bahasa yang berorientasi pada masalah spesifik (specificproblem oriented). ~ Bahasa ini adalah bahasa yang digunakan langsung untuk memecahkan suatu masalah tertentu. Misalnya SQLuntuk database, Regexuntuk mencocokkan pola pada string tertentu. ~ Jenis bahasa ini juga masuk ke bahasa tingkat tinggi.