Mengenal XAMPP
XAMPP adalah perangkat lunak bebas, yang mendukung banyak sistem operasi, merupakan
kompilasi dari beberapa program.
Fungsinya adalah sebagai server yang berdiri sendiri (localhost), yang terdiri atas
program Apache HTTP Server, MySQLdatabase, dan penerjemah bahasa yang ditulis
dengan bahasa pemrograman PHP dan Perl. Nama XAMPP merupakan singkatan dari X (empat
sistem operasi apapun), Apache, MySQL, PHP dan Perl. Program ini tersedia dalam GNU
(General Public License) dan bebas, merupakan web server yang mudah digunakan yang dapat
melayani tampilan halaman web yang dinamis.
Mari kita mengenalnya lebih dekat satu per satu .
1. Mengenai APACHE
Apache sudah berkembang sejak versi pertamanya. Sampai saat ditulisnya artikel ini versi
terakhirnya yang ada yaitu Apache ver 2.0.54. Apache bersifat open source, artinya setiap
orang boleh menggunakannya, mengambil dan bahkan mengubah kode programnya.
Tugas utama apache adalah menghasilkan halaman web yang benar kepada peminta,
berdasarkan kode PHP yang dituliskan oleh pembuat halaman web. Jika diperlukan juga
berdasarkan kode PHP yang dituliskan, maka dapat saja suatu database diakses terlebih
dahulu (misalnya dalam MySQL) untuk mendukung halaman web yang dihasilkan.
2. Mengenai PHP
Bahasa pemrograman PHP merupakan bahasa pemrograman untuk mebuat web yang bersifat
server-side scripting. PHP memungkinkan kita untuk membuat halaman web yang bersifat
dinamis. PHP dapat dijalankan pada berbagai macam Operating System (OS), misalnya
Windows, Linux dan Mac OS. Selain Apache, PHP juga mendukung beberapa web server
lain, misalnya Microsoft IIS, Caudium, PWS dan lain-lain.
Seperti pernah disinggung sebelumnya bahwa PHP dapat memanfaatkan database untuk
menghasilkan halaman web yang dinamis. Sistem manajemen database yang sering
digunakan bersama PHP adalah MySQL. Namun PHP juga mendukung system manajemen
Database Oracle, Microsoft Acces, Interbase, d-Base, PostgreSQL dan sebagainya.
Hingga kini PHP sudah berkembang hingga versi ke 5. PHP 5 mendukung penuh Object
Oriented Programing(OOP), integrasi XML, mendukung semua ekstensi terbaru MySQL,
pengembangan web services dengan SOAP dan REST, serta ratusan peningkatan kemampuan
lainnya dibandingkan versi sebelumnya. Sama dengan web server lainnya PHP juga bersifat
open source sehingga setiap orang dapat menggunakannya dengan gratis.
3. Mengenai MySQL
Perkembangannya disebut SQL yang merupakan kepanjangan dari Structured Query
Language. SQL merupakan bahasa terstruktur yang khusus digunakan untuk mengolah
database. SQL pertama kali didefinisikan oleh American National Standards Institute (ANSI)
pada tahun 1986. MySQL adalah sebuah sistem manajemen database yang bersifat open
source. MySQL adalah pasangan serasi dari PHP. MySQL dibuat dan dikembangkan oleh
MySQL AB yang berada di Swedia.
MySQL dapat digunakan untuk membuat dan mengola database beserta isinya. Kita dapat
memanfaatkan MySQL untuk menambahkan, mengubah dan menghapus data yang berada
dalam database. MySQL merupakan sisitem manajemen database yang bersifat at relational.
Artinya data-data yang dikelola dalam database akan diletakkan pada beberapa tabel yang
terpisah sehingga manipulasi data akan menjadi jauh lebih cepat.
MySQL dapat digunakan untuk mengelola database mulai dari yang kecil sampai dengan
yang sangat besar. MySQL juga dapat menjalankan perintah-perintah Structured Query
Language (SQL) untuk mengelola database-database yang ada di dalamnya. Hingga kini,
MySQL sudah berkembang hingga versi 5. MySQL 5 sudah mendukung trigger untuk
memudahkan pengelolaan tabel dalam database.
4. Mengenai Perl
Apa itu Perl? Perl umum adalah bahasa pemrograman-tujuan awalnya dikembangkan untuk
manipulasi teks dan digunakan untuk berbagai tugas termasuk sistem administrasi,
pengembangan web, pemrograman jaringan, pengembangan GUI, dan banyak lagi.
Biasanya bahasa ini dimaksudkan untuk menjadi praktis karena mudah digunakan, efisien,
lengkap juga indah, kecil, elegan, minimal. Besar fitur yang mudah digunakan, mendukung
kedua prosedural dan berorientasi objek (OO) pemrograman, telah built-in untuk mendukung
pemrosesan teks, dan memiliki satu dunia yang paling mengesankan koleksi dari modul
pihak ketiga
Yang berbeda dari Perl adalah definisi yang diberikan dalam perl, perlfaq1 keraguan dan
tidak ada di tempat lain. Dari sini kita dapat menentukan bahwa Perl adalah sesuatu yang
berbeda untuk orang-orang yang berbeda.Oleh para pakar bahasa pemrograman, Perl
digolongkan ke dalam VHLL (Very High Level Language). Satu perintah dalam Perl
ekivalen dengan banyak perintah dalam bahasa tingkat tinggi, sehingga program-program
yang ditulis dalam Perl sangat efisien dan ringkas.
Perl merupakan pilihan utama untuk tugas-tugas pengolahan teks, terutama dengan fasilitas
regular expression-nya yang sangat canggih. Dengan mewabahnya internet, dengan sejumlah
protokolnya yang berbasis teks (NVT ASCII), Perl menjadi pilihan utama untuk
pemrograman internet, terutama CGI (Common Gateway Interface).
Semula Perl hanya dipakai untuk menulis skrip-skrip pendek, namun dalam
perkembangannya, Larry menambahkan dukungan bagi pemrograman berorientasi objek, dan
dimulailah era baru pemrograman Perl untuk aplikasi-aplikasi besar dan rumit.
5. Mengenai PHPMyAdmin
Pengelolaan database dengan MYSQL harus dilakukan dengan mengetikkan baris-baris
perintah yang sesuai (command line) untuk setiap maksud tertentu. Jika anda ingin membuat
database, ketikkan baris perintah yang sesuai untuk membuat database. Jika kita ingin
menghapus tabel, ketikkan baris perintah yang sesuai untuk menghapus tabel. Hal tersebut
tentu cukup menyulitkan karena kita harus hafal dan mengetikkan perintahnya satu persatu.
Banyak sekali perangkat lunak yang dapat dimanfaatkan untuk mengelola data base dalam
MySQL, salah satunya adalah phpMyAdmin. Dengan phpMyAdmin kita dapat membuat
tabel, mengisi data dan lain-lain dengan mudah tanpa harus hafal perintahnya. Untuk
mengaktifkan phpMyAdmin langkah-langkahnya adalah : yang pertama setelah XAMP kita
terinstall, kita harus mengaktifkan web server Apache dan MySQL dari control panel
XAMPP. Yang kedua, jalankan browser kesayangan Anda (IE, Mozilla Firefox atau Opera)
lalu ketikkan alamat web berikut : http://localhost/phpmyadmin/ pada address bar lalu tekan
Enter. Langkah ketiga apabila telah nampak interface (tampilan antar muka) phpMyAdmin
anda bisa memulainya dengan mengetikkan nama database, nama tabel dan seterusnya.
2. Langkah pertama tentu saja membuka web browser kesayangan kamu. Ketikkan
localhost pada url addressnya.
3. Pilih menu phpMyAdmin.
4. Ketikkan nama database yang ingin dibuat, lalu klik tombol create untuk membuat
database tersebut seperti yang ditunjukkan pada gambar dibawah ini.
6. Masukkan kategori-kategori pada database yang akan dibuat, misalnya id, nama, alamat,
dan lain-lain.
7. isikan, jenis datanya, misalkan integer, varchar, date atau yang lainnya. Tentukan juga
kategori mana yang akan dijadikan primary key.
9. setelah itu, klik Go dan data tersebut akan tersimpan. Jika ingin melihat hasilnya, klik
Browse dan akan muncul seperti gambar di bawah ini.
10. Database telah selesai dibuat, close browser. Kemudian stop XAMPP.
1.
Tipe Data
Bentuk Dasar
Penulisan
TINYINT
TINYINT
Keterangan
Ukuran
1 byte
[(M)]
bulat positif dan negatif.
[UNSIGNED]
[ZEROFILL] Bilangan bulat terkecil, dengan jangkauan
untuk bilangan bertanda -128 sampai dengan
127 dan untuk yang tidak bertanda 0 sampai
dengan 255. Bilangan tak bertanda ditandai
dengan kata UNSIGNED
2.
3.
4.
SMALLINT
5.
2 byte
3 byte
4 byte
6.
BIGINT
8 byte.
7.
FLOAT
FLOAT
Digunakan untuk menyimpan data bilangan
[(M,D)]
pecahan positif dan negatif presisi tunggal.
[ZEROFILL]
4 byte
DOUBLE
8 byte
10.
11.
12.
8 byte.
8 byte.
M byte
M byte.
Tipe
Data
1.
DATETIME
2.
DATE
Bentuk Dasar
Penulisan
Keterangan
Ukuran
8 byte.
8 byte.
3.
TIMESTAMP
4 byte.
4.
TIME
3 byte.
5.
YEAR
1 byte
Tipe
Data
1.
CHAR
2.
VARCHAR
3.
TINYBLOB,
Keterangan
Ukuran
M byte.
L+1 byte
TINYTEXT
L+2 byte
5. MEDIUMBLOB,
MEDIUMTEXT
L+3 byte
6.
LONGBLOB,
LONGTEXT
L+4 byte
7.
ENUM
8.
SET
4.
BLOB,
TEXT
1 atau 2
byte
1,2,3,4 atau
8 byte
Tipe-tipe yang didukung MySQL di atas dapat menjadi pilihan dalam penyusunan database.
Sebagai contoh, jika kita hendak menyimpan data jumlah suatu stok barang yang tidak melebihi
angka 200 misalnya, maka sebaiknya memilih tipe data TINYINT yang diberi atribut
UNSIGNED. Alasannya adalah jumlah stok tidak melebihi 200 dan tidak mungkin lebih kecil
dari 0, dan tipe data TINYINT memiliki jangkauan 0 hingga 255, jadi memenuhi syarat untuk
digunakan.
Contoh yang lain, misalnya kita hendak membuat database nomor telpon dari teman-teman kita.
Memang nomor telpon seluruhnya terdiri dari angka, namun nampaknya tidak tepat bila
disimpan dalam tipe data INT (atau bahkan BIGINT bila hendak menyimpan nomor handphone).
Lebih baik dimasukkan ke dalam CHAR atau VARCHAR dengan M adalah 12. Mengapa 12?
Karena nomor handphone terpanjang terdiri dari 12 digit. Sedangkan nomor telpon rumah
terpanjang adalah 8 digit ditambah kode area terpanjang 4 digit, jadi angka 12 sangat pas.
Lalu bagaimana penerapannya dalam operasi MySQL? Misalnya kita hendak membuat tabel stok
barang dengan masing-masing field adalah kode barang, nama barang, harga barang, supplier,
dan tanggal beli, maka kemungkinan perintah yang harus ditulis adalah sebagai berikut:
MySQL> create table stok
-> kode char(5),
-> nama varchar(20),
-> harga mediumint unsigned,
-> supplier char(5),
-> tanggal date);
Perintah tersebut di atas akan membuat tabel bernama stok dengan field-field sebagai berikut:
Nama
field
Tipe data
Keterangan
Kode
Char(5)
Nama
Varchar(20)
Harga
Mediumint
Unsigned
go
contoh Triger:
Untuk menganalisa lihat isi kedua tabel diatas dengan perintah
SELECT* FROM daftarSiswa
SELECT* FROM daftarNilai
Setelah Anda melihat hasilnya kemudian jalankan perintah dibawah ini :
INSERT INTO daftarNilai values(1001,70)
INSERT INTO daftarNilai values(1002,50)
INSERT INTO daftarNilai values(1003,80)
Setelah dijalankan Anda bisa lihat kembali isi tabel daftarSiswa dan daftarNilai.
DaftarSiswa
Kode
Status
1001
1002
1003
Di tabel yang lain kita juga punya tabel Daftar Nilai :
DaftarNilai
Kode
Nilai
Daftar nilai ini belum ada isinya yang nantinya akan kita isi dengan perintah INSERT.
Kolom Status pada tabel DaftarSiswa akan kita isi dengan Lulus dan Tidak Lulus secara
automatis saat kita melakukan INSERT dan UPDATE pada tabel DaftarNilai.
2. Store Producure
Store procedure adalah kumpulan dari statement SQL yang digunakan bersama sama. Store
procedure procedure mengijinkan penggunaan statemen SQL lebih dari sekedar statemen SQL
biasa untuk meretrieve dan mengupdate database. Store procedure mendukung pemakaian
variabel flow control dan cursor.
Sintak SQL dalam Store Procedure :
CREATE PROCEDURE nama_stored_procedurenya @parameter1 tipe_data, @parameter2 2
tipe_data AS isi procedurenya.
Penjelasan
nama stored_procedure tidak boleh sama dengan nama fungsi internal, misal CREATE
PROCEDURE SUM, tidak boleh ada spasi, tapi bisa menggunakan karakter _
Untuk membuat stored procedure gunakan perintah CREATE, untuk mengedit gunakan
ALTER , untuk menghapus gunakan DROP. Perintah CREATE, ALTER, DROP dapat
digunakan juga untuk membuat TABLE, VIEW, TRIGGER, FUNCTION, misal
CREATE VIEW, ALTER FUNCTION,dsb
Untuk mengambil nilai dari sebuah field dari tabel ke dalam variabel dapat juga
menggunakan SET / SELECT , misal : SET @nama= SELECT nama FROM user
WHERE login='Itanium') selalu gunakan anda(),perintah ini valid bila data yang
ditemukan hanya 1, bila lebih, maka varibale @nama tidak akan ada nilai nya.
Untuk mengambil data dalam jumlah banyak, misal seperti array atau StringList, gunakan
temporary tabel.untuk pembahasan lebih lengkap, tunggu posting berikut nya.
Contoh pembuatan Stored Procedure. Kita akan membuat sebuah Stored procedure yang
berfungsi untuk menggantikan perintah SELECT yang rumit, misal untuk laporan stok barang.
Contoh Store Procedure :
Tabel Sales Order
Sebagai contoh kita akan membuat tabel sales order dan diisi dengan sebuah data:
CREATE TABLE sales_order(customer_name VARCHAR( 50 ) NOT NULL ,total_price
DECIMAL( 9, 0) NOT NULL DEFAULT '0',total_hpp DECIMAL( 9, 0 ) NOT NULL
DEFAULT '0',profit DECIMAL( 9, 0 ) NOT NULL DEFAULT '0',so_id INT NOT NULL
AUTO_INCREMENT ,PRIMARY KEY(so_id)) ENGINE = InnoDB;INSERT INTO sales_order
(customer_name,so_id) VALUES ('SerbaPrima', 1);
Tabel Sales Item Kemudian kita akan membuat tabel sales_item diisi dengan 2 data:
CREATE TABLE sales_item(so_id INT NOT NULL ,item_name VARCHAR( 100 ) NOT NULL
,item_price DECIMAL( 8, 0 ) NOT NULL ,hpp DECIMAL( 8, 0 ) NOT NULL ,item_id INT NOT
NULL AUTO_INCREMENT ,PRIMARY KEY (item_id)) ENGINE = InnoDB;
INSERT INTO sales_item(so_id,item_name,item_price,hpp) VALUES (1, 'Keyboard',
100000,85000);
INSERT INTO sales_item(so_id,item_name,item_price,hpp) VALUES (1, 'Mouse',
50000,40000);
3. View
SQL view digunakan untuk membuat tampilan sebuah tabel. Di dalamnya memungkinkan kita
untuk bisa membuat, mengupdate dan menghapus tampilan tabel tersebut. Dan tabel yang
ditampilkan merupakan tabel hasil dari perintah-perintah MySql. Didalamnya akan terlihat
adanya baris dan kolom seperti halnya tabel biasa dari sebuah database. Dan tabel yang
ditampilkan hanya satu tabel sekalipun merupakan hasil perintah pada join MySql.
Sintak VIEW dengan bentuk sbb:
CREATE VIEW namaview AS
SELECT namakolom
FROM namatabel
WHERE persyaratan
View yang dihasilkan merupakan data yang terupdate karena setiap kita menjalakan kueri
CREATE VIEW tersebut, maka database akan mengcreate data terbaru.
Contoh SQL View :
CREATE VIEW Siswa Jawa Barat AS
SELECT ID,Nama
FROM Siswa
WHERE Propinsi=Jawa Barat
Hal ini akan menghasilkan tampilan data ID dan nama Siswa yang berasal dari propinsi Jawa
Barat.
Sedangkan untuk menghapus sebuah view kita menggunakan perintah DROP pada kueri
MySQL. Perintahnya adalah sbb:
DROP VIEW Siswa Jawa Barat