|
PHP merupakan script yang menyatu dengan HTML dan berada pada server (server side HTML embedded scripting). Dengan PHP ini Anda dapat membuat beragam aplikasi berbasis web, mulai dari halaman web yang sederhana sampai aplikasi komplek yang membutuhkan koneksi ke database.
Sampai saat ini telah banyak database yang telah didukung oleh PHP dan kemungkinan akan terus bertambah. Database tersebut adalah :
- dBase
- DBM
- FilePro
- mSQL
- MySQL
- ODBC
- Oracle
- Postgres
- Sybase
- Velocis
Selain itu PHP juga mendukung koneksi dengan protokol IMAP, SNMP, NNTP dan POP3.
Ada empat macam cara penulisan kode PHP, yaitu :
- <% echo ("kalau yang ini mirip dengan ASP"); %>
Anda bisa memilih salah satu dari empat cara tersebut. Tapi yang paling sering digunakan adalah cara pertama dan kedua. Perhatikan bahwa tiap akhir baris harus selalu diberi tanda titik koma (;).
Seperti pada bahasa pemrograman lain Anda pun bisa meletakkan baris komentar pada program Anda. Pada PHP caranya adalah dengan meletakkan komentar tersebut di sebelah kanan tanda // jika komentar satu baris dan di antara /* dan */ jika komentarnya lebih dari satu baris.
/* kalau yang ini adalah komentar
lebih dari satu baris */
echo ("memang mudah");
?>
lebih dari satu baris */
echo ("memang mudah");
?>
Tipe Data
PHP mengenal tiga macam tipe data, yaitu :
1. Integer
2. Floating point number
3. String
2. Floating point number
3. String
Integer
Yang termasuk dalam tipe data ini adalah bilangan bulat (tidak pakai koma). contoh :
$a = 1234 // desimal
$b = - 1234 // negatif
$c = 0123 // oktal
$d = 0x12 // heksadesimal
$a = 1234 // desimal
$b = - 1234 // negatif
$c = 0123 // oktal
$d = 0x12 // heksadesimal
pernyataan seperti $a = 1234 disebut pernyataan penugasan. Dalam contoh tersebut maksudnya adalah memberikan nilai 1234 ke variabel $a. |
Floating point number
Disebut juga bilangan pecahan. Terdapat tanda titik yang merupakan pemisah antara bagian bulat dan pecahan.
$a = 1.234 // bentuk biasa
$b = 1.2e3 // bentuk eksponensial
$b = 1.2e3 // bentuk eksponensial
Strings
$a = "ini adalah tipe data string"
Array
Array merupakan tipe data terstruktur yang berguna untuk menyimpan sejumlah data yang bertipe sama. Bagian yang menyusun array disebut elemen array, yang masing-masing elemen dapat diakses tersendiri melalui indeks array.
Array merupakan tipe data terstruktur yang berguna untuk menyimpan sejumlah data yang bertipe sama. Bagian yang menyusun array disebut elemen array, yang masing-masing elemen dapat diakses tersendiri melalui indeks array.
Array berdimensi satu
$kota[0] = "Yogyakarta";
$kota[1] = "Jakarta";
$kota[2] = "Malang";
$kota[3] = "Purwokerto";
print ("Kota favorit saya adalah $kota[2]");
?>
$kota[1] = "Jakarta";
$kota[2] = "Malang";
$kota[3] = "Purwokerto";
print ("Kota favorit saya adalah $kota[2]");
?>
Kode di atas bila dijalankan pada browser, akan muncul tulisan :
Kota favorit saya adalah Malang.
Menulis Komentar
Seperti bahasa pemrograman lainnya, PHP juga bisa disisipi dengan komentar untuk mengingatkan tentang sesuatu. Untuk menulis komentar dalam PHP ada tiga cara, yang pertama adalah menggunakan tanda #
# ini adalah komentar
# ini adalah komentar
yang kedua adalah dengan menggunakan 2 buah slash
//ini juga komentar
echo 'helo word'; // say helo word
//ini juga komentar
echo 'helo word'; // say helo word
yang ketiga adalah dengan diapit tanda /* */
/*ini adalah komentar
bentuk ketika */
/*ini adalah komentar
bentuk ketika */
cara ketiga dapat digunakan untuk menulis komentar lebih dari satu baris. sedangkan cara satu dan dua digunakan untuk menulis komentar dalam satu baris. Komentar tidak akan dieksekusi oleh web server.
Variabel PHP
Variabel adalah tempat untuk menyimpan data sementara. Nilai dari sebuah variabel bisa text, bilangan atau data yang lainnya. PHP memiliki 8 tipe variabel: boolean (true - false), integer, floating point (desimal), string, array, object, resource dan null. Aturan penulisan varibel dalam php adalah sebagai berikut:
- Sebuah variabel harus dimulai dengan tanda dolar $ misalnya, $namaVariabel;
- Nama variabel dapat berisi kombinasi dari huruf, angka dan underscore misal, $customer_1;
- Karakter pertama setelah tanda dolar harus huruf atau underscore, tidak boleh angka.
- nama variabel dalam PHP case-sensitive, artinya $namaVariabel berbeda dengan $Namevariabel.
Variabel diisi nilai (di-asign) dengan tanda sama dengan = misal, $name = 'Andi'. Dan variabel dapat ditampilkan tanpa tanda petik seperti :
echo $name;
print $name;
atau dapat ditampilkan dengan tanda petik dua:
echo "Hello, $name";
anda tidak bisa menampilkan varibel dengan tanda pertik satu:
echo 'Helo, $name'; // ini tidak akan bekerja, salah.
echo $name;
print $name;
atau dapat ditampilkan dengan tanda petik dua:
echo "Hello, $name";
anda tidak bisa menampilkan varibel dengan tanda pertik satu:
echo 'Helo, $name'; // ini tidak akan bekerja, salah.
Indeks array dimulai dari 0. Jadi indeks array 0 menyatakan elemen pertama dari array, indeks array 1 menyatakan elemen array kedua, dan seterusnya. |
Array multidimensi
Yang termasuk dalam tipe data ini adalah bilangan bulat (tidak pakai koma). contoh :
$buaht = array (
"apel" => array(
"warna" => "merah",
"rasa" => "manis"
),
"pisang" => array(
"warna" => "kuning",
"rasa" => "manis"
)
);
print ("Warna buah apel adalah ");
print ($buah["apel"]["warna"])."
";
print ("Rasa buah pisang adalah ");
print ($buah["pisang"]["rasa"]);
?>
Kode di atas akan menghasilkan tulisan
$buaht = array (
"apel" => array(
"warna" => "merah",
"rasa" => "manis"
),
"pisang" => array(
"warna" => "kuning",
"rasa" => "manis"
)
);
print ("Warna buah apel adalah ");
print ($buah["apel"]["warna"])."
";
print ("Rasa buah pisang adalah ");
print ($buah["pisang"]["rasa"]);
?>
Kode di atas akan menghasilkan tulisan
Warna buah apel adalah merah
Rasa buah pisang adalah manis
Rasa buah pisang adalah manis
OPERATOR
Operator digunakan untuk memanipulasi nilai suatu variabel. Variabel yang nilainya dimodifikasi oleh operator disebut operand. Contoh penggunaan operator misalnya 13 - 3. 13 dan 3 adalah operand. Tanda "-" disebut operator.
Untuk kemudahan penjelasan, operator diklasifikasikan menjadi:- Arithmetic Operator
- Assignment Operator
- Comparison Operator
- Logical Operator
- Lain-lain
Arithmetic Operators
Operator | Description | Example | Result |
+ | Addition | x=2 x+2 | 4 |
- | Subtraction | x=2 5-x | 3 |
* | Multiplication | x=4 x*5 | 20 |
/ | Division | 15/5 5/2 | 3 2.5 |
% | Modulus (division remainder) | 5%2 10%8 10%2 | 1 2 0 |
++ | Increment | x=5 x++ | x=6 |
-- | Decrement | x=5 x-- | x=4 |
Operator | Example | Is The Same As |
= | x=y | x=y |
+= | x+=y | x=x+y |
-= | x-=y | x=x-y |
*= | x*=y | x=x*y |
/= | x/=y | x=x/y |
%= | x%=y | x=x%y |
Operator | Description | Example |
== | is equal to | 5==8 returns false |
!= | is not equal | 5!=8 returns true |
> | is greater than | 5>8 returns false |
< | is less than | 5<8 returns true |
>= | is greater than or equal to | 5>=8 returns false |
<= | is less than or equal to | 5<=8 returns true |
Logical Operators
Operator | Description | Example |
&& | and | x=6 y=3 (x < 10 &&& y > 1) returns true |
|| | or | x=6 y=3 (x==5 || y==5) returns false |
! | not | x=6 y=3 !(x==y) returns true |
Struktur Kontrol
- Percabangan
Percabangan, atau sering disebut juga dengan istilah decision-making, memungkinkan aplikasi untuk memeriksa isi suatu variabel atau hasil perhitungan ekspresi dan mengambil tindakan yang sesuai. Ada dua jenis percabangan, dipilih berdasarkan kriteria pemeriksaan dan jumlah pilihan yang tersedia.
if - else
if(condition)
{
// statement 1 goes here
}
else
{
// statemant 2 goes here
}
// statement 3 goes here
Aliran program:
1. Condition akan diperiksa
2. Bila bernilai true, statement 1 akan dijalankan
3. Bila bernilai false, statement 2 akan dijalankan
4. Statement 3 dijalankan
if - elseif - else
Untuk pilihan yang lebih dari dua, PHP menyediakan konstruksi if-elseif- else.
if(condition1)
{
// statement 1
}
elseif(condition2)
{
}
else
{
}
// statement 2
// statement 3
// statement 4
Contoh:
// ifDemo.php
// digunakan bersama control_flow.htm
$kelabu = "#303030";
$putih = "#FFFFFF";
if($kelamin1 == "Pria"){
$latar1 = $kelabu;
}else{
$latar1 = $putih;
}
if($kelamin2 == "Pria"){
$latar2 = $kelabu;
}else{
$latar2 = $putih;
}
if($kelamin3 == "Pria"){
$latar3 = $kelabu;
}else{
$latar3 = $putih;
}
if($kelamin4 == "Pria"){
$latar4 = $kelabu;
}else{
$latar4 = $putih;
}
$output = "
$nama1
$nama2
$nama3
$nama4
";
echo($output);
?>
switch - case
Statement SWITCH digunakan untuk membandingkan suatu variable dengan beberapa nilai serta menjalankan statement tertentu jika nilai variable sama dengan nilai yang dibandingkan.
Struktur Switch adalah sebagai berikut:
Struktur Switch adalah sebagai berikut:
switch(a){
case 1;
// statement 1 goes here
break;
case 2;
// statement 2 goes here
break;
case 3;
// statement 3 goes here
break;
default;
// statement 4 goes here
break;
}
// statement 5 goes here
Aliran program:
1. Variabel a diperiksa.
2. Statement dieksekusi.
a) Apabila a == 1, statement 1 dijalankan.
b) Apabila a == 2, statement 2 dijalankan.
c) Apabila a == 3, statement 3 dijalankan.
d) Apabila a tidak memenuhi 2a - 2c, statement 4 dijalankan.
3. Statement 5 dijalankan.
Keyword break memegang peranan penting di sini. Fungsinya adalah mencegah fall-through, bandingkan dengan program berikut(break di baris ke 5 dihilangkan)
contoh:
switch($bulan){
case 1 :
case 3 :
case 5 :
case 7 :
case 8 :
case 10 :
case 12 :
$hari = 31;
break;
case 4 :
case 6 :
case 8 :
case 11 :
$hari = 30;
break;
case 2 :
if(($tahun%4) == 0){
$hari = 29;
}else{
$hari = 28;
}
}
echo("Jumlah hari pada bulan $bulan tahun $tahun =
$hari hari");
?>
- Perulangan
for
Looping dengan for disebut juga determinate loop, artinya looping yang jumlah pengulangannya (iterasi) telah ditentukan di awal looping.
Ada beberapa bagian penting dari for loop:
- Initialization expression
- Stop condition
- Iterative expression
- Loop body
Ada beberapa bagian penting dari for loop:
- Initialization expression
- Stop condition
- Iterative expression
- Loop body
Initialization Expression dijalankan satu kali, pada saat looping dimulai. Biasanya bagian ini digunakan untuk menginisialisasi counter(penghitung).
Stop condition diperiksa nilainya sebelum setiap iterasi dieksekusi. Apabila condition bernilai false, iterasi dihentikan.
Iterative expression dilakukan setelah iterasi dieksekusi. Bagian ini biasanya digunakan untuk menambah nilai counter.
Loop body dieksekusi sekali setiap iterasi, merupakan perintah yang ingin kita lakukan berulang-ulang.
Stop condition diperiksa nilainya sebelum setiap iterasi dieksekusi. Apabila condition bernilai false, iterasi dihentikan.
Iterative expression dilakukan setelah iterasi dieksekusi. Bagian ini biasanya digunakan untuk menambah nilai counter.
Loop body dieksekusi sekali setiap iterasi, merupakan perintah yang ingin kita lakukan berulang-ulang.
contoh:
$jumlah = 0;
for($i=0; $i
if(substr($kata, $i, 1) == $huruf){
$jumlah ++;
}
}
?>
while
while loop juga dikenal dengan istilah indeterminate loop, artinya jumlah loopingnya tidak ditentukan pada awal looping. while loop lebih sederhana daripada for loop, karena cuma memiliki dua bagian, yaitu Stop Condition dan Loop Body.
Stop condition diperiksa sebelum tiap iterasi dilaksanakan. Selama stop condition bernilai true, perintah dalam loop body akan dilakukan berulang-ulang. Iterasi akan dihentikan apabila stop condition bernilai false.
Sama seperti pada for loop, loop body dilaksanakan satu kali setiap iterasi.
Loop di atas akan berjalan terus tanpa henti, karena tidak ada perintah yang mengubah nilai stop condition.
do-while loop merupakan modifikasi dari while loop. Bentuknya dapat dilihat pada sampel kode berikut:
Sama seperti pada for loop, loop body dilaksanakan satu kali setiap iterasi.
Loop di atas akan berjalan terus tanpa henti, karena tidak ada perintah yang mengubah nilai stop condition.
do-while loop merupakan modifikasi dari while loop. Bentuknya dapat dilihat pada sampel kode berikut:
do{
// some statement
}
while (a == true)
contoh:
$jumlah = 0;
$i = 0;
while($i
if(substr($kata, $i, 1) == $huruf){
$jumlah ++;
$i++;
}
}
?>
SESSION
Pada waktu kita browsing menjelajahi website, misalnya e-mail, kita akan diminta memasukkan username dan password. Prosedur ini hanya dilakukan sekali pada awal proses. Selanjutnya sistem akan ‘mengingat’ identitas kita, dan menampilkan informasi yang sesuai. Tanpa adanya session, sistem akan salah dan menampilkan data rahasia ke orang yang salah.
Session bekerja seperti tempat penitipan barang di supermarket. Kita datang, menitipkan barang bawaan, dan petugas akan memberikan tanda pengenal.
Pada saat kita akan mengambil barang, kita memberikan tanda pada petugas, dan petugas akan dapat mengambil barang yang dititipkan tanpa tertukar dengan barang orang lain.
Permasalahan yang terjadi adalah, bagaimana “tanda pengenal” tersebut akan disimpan pada setiap halaman yang diakses user, sehingga dapat diakses oleh sistem setiap kali user mengklik link.
Ada tiga alternatif yang dapat digunakan untuk menyimpan data session, yaitu Cookie, Hidden Form, dan URL Embedding. Sementara ini, kita hanya membahas Cookie.
Cookie
Cookie adalah informasi yang disimpan pada browser user. Script menjalankan function setcookie yang akan menulis data di harddisk user.
Cookie ditulis pada browser user dengan menggunakan perintah:
Cookie ditulis pada browser user dengan menggunakan perintah:
setcookie(“sessionId”, “1234”);
Setelah itu, variabel $sessionId akan tersedia setiap kali browser user mengakses sistem.
Cookie akan hilang dari browser user setelah melewati masa kadaluarsa yang ditentukan atau dihapus melalui perintah:
Cookie akan hilang dari browser user setelah melewati masa kadaluarsa yang ditentukan atau dihapus melalui perintah:
setcookie(“sessionId”);
Pendekatan ini banyak mengundang kontroversi. Karena cookie dapat menghilangkan privacy user dan berpotensi mengandung virus. Oleh karena itu, user dapat menonaktifkan cookie melalui setting di browser. Dengan demikian, pendekatan ini kurang handal untuk diterapkan pada aplikasi kita.
Untuk melihat dengan lebih jelas implementasi cookie, kita akan memodifikasi aplikasi di atas sebagai berikut:
Untuk melihat dengan lebih jelas implementasi cookie, kita akan memodifikasi aplikasi di atas sebagai berikut:
login.htm
loginSessionCookie.php
// -- cek user dan password -- //
if($login == "endy" && $pass =="test"){
setcookie("user", $login);
header("Location: welcomeSessionCookie.php");
}elseif($login == "oky" && $pass =="coba"){
setcookie("user", $login);
header("Location: welcomeSessionCookie.php");
}else{
echo("User dan password salah");
}
?>
welcomeSessionCookie.php
if(!$user){
echo("Illegal Access");
exit;
}
echo("Welcome $user
");
echo("");
echo("klik di sini untuk mengakses daftar kenalan
anda");
?>
Tambahkan baris berikut pada bagian atas displayNoSession.php dan
save as displaySessionCookie.php
if(!$user){
echo("Illegal Access");
exit;
}
Fungsi pd PHP yang berhubungan dg file
integer fopen(string filename, string mode)
Fungsi ini digunakan untuk membuka file terlebih dahulu sebelum dilakukan proses penulisan atau pembacaan isi file.
contoh :
if(!($myFile = fopen ("http://localhost/php/dataku.txt", "r")))
{
print ("Gagal membuka file");
}
while (!feof($myFile))
{
$line = fgetss($myFile,255);
print ("$line \n");
}
fclose ($myFile);
?>
{
print ("Gagal membuka file");
}
while (!feof($myFile))
{
$line = fgetss($myFile,255);
print ("$line \n");
}
fclose ($myFile);
?>
Untuk mengetahui dengan jelas fungsi fopen, silakan mencoba sendiri dengan berbagai mode yang ada seperti yang tercantum di bawah ini.
Mode | Operasi |
r[b] | hanya pross baca[binary] |
w[b] | hanya proses write, jika file belum ada maka akan dibuat file baru, jika file sudah ada maka isi file akan "ditimpa" oleh isi file yang baru [binary] |
a[b] | menambahkan ke isi file yang sudah ada [binary] |
r+[b] | baca dan tulis [binary] |
w+[b] | baca dan tulis jika file belum ada maka akan dibuat file baru, jika file sudah ada maka isi file akan "ditimpa" oleh isi file yang baru [binary] |
a+[b] | baca dan tulis, isi file yang baru ditambahkan setelah baris terakhir pada file yang sudah ada [binary] |
string fgets (integer file_handle, integer length)
Fungsi ini digunakan untuk membaca string atau isi dari sebuah file.
contoh :
if($MyFile = fopen("data.txt", "r"))
{
while (!feof($MyFile))
{
$MyLine = fgets ($MyFile, 255);
print ($MyFile);
}
fclose ($MyFile);
?>
{
while (!feof($MyFile))
{
$MyLine = fgets ($MyFile, 255);
print ($MyFile);
}
fclose ($MyFile);
?>
Jika Anda menjalankan script di atas maka yang nampak pada browser adalah isi dari file data.txt.
boolean fclose(integer file_handle)Digunakan untuk menutup file.
Lihat contoh sebelumnya.
boolean feof (integer file_handle)
Fungsi ini akan mengembalikan nilai true jika pointer terletak pada bagian akhir dari file (baris terakhir).
while (!feof($MyFile))
{
$MyLine = fgets ($MyFile, 255);
print ($MyFile);
}
Contoh di atas maksudnya adalah selama belum mencapai "baris terakhir" dari file (posisi pointer terakhir) maka program akan terus membaca isi file. Pendeknya program tersebut akan membaca keseluruhan isi dari file.
boolean file_exists(string filename)
Fungsi ini akan mengembalikan nilai true jika file yang dibaca exists (ada).
if (file_exists("data.txt"))
{
print ("Terdapat file data.txt");
}
else
{
print ("Tidak terdapat file data.txt");
}
Jika pada current direktory terdapat file data.txt maka program akan menampilkan tulisan "Terdapat file data.txt" (tidak pakai tanda petik).
Langkah-langkah koneksi PHP-MySQL
1. Membuka koneksi ke server MySQL
mysql_connect()
Digunakan untuk melakukan uji dan koneksi kepada server database MySQL.
Sintaks :
$conn = mysql_connect (”host”,”username”,”password”);
$conn adalah nama variabel penampung status hasil koneksi kepada database.
host adalah nama host atau alamat server database MySQL.
username adalah nama user yang telah diberi hak untuk dapat mengakses server
database.
password adalah kata sandi untuk username untuk dapat masuk ke dalam database.
2. Memilih database yang akan digunakan di server
mysql_select_db()
Digunakan untuk melakukan koneksi kepada database yang dalam server yang berhasil dikoneksi dengan perintah mysql_connect().
Sintaks :
$pilih = mysql_select_db(”namadatabase”,$conn);
$pilih berisi status koneksi kepada database.
$conn merupakan koneksi kepada server database yang berhasil.
namadatabase adalah nama database yang akan dikenai proses.
3. Mengambil sebuah query dari sebuah database.
mysql_query()
Digunakan untuk melakukan eksekusi perintah SQL untuk memanipulasi database yang berhasil dilakukan koneksinya menggunakan mysql_select_db().
Sintaks : $hasil = mysql_query(”SQL Statement”);
$hasil akan berupa record set apabila SQL Statement berupa perintah select.
4. Mengambil record dari database
a. mysql_fetch_array()
Digunakan untuk melakukan pemrosesan hasil query yang dilakukan dengan perintah mysql_query(), dan memasukkannya ke dalam array asosiatif, array numeris atau keduanya.
Sintaks :
$row = mysql_fetch_array($hasil);
$row adalah array satu record dari record $hasil yang diproses nomor record sesuai dengan nomor urut dari proses mysql_fetch_array yang sedang dilakukan.
$hasil adalah record set yang akan diproses.
b. mysql_fetch_assoc()
Fungsi ini hampir sama dengan fungsi mysql_fetch_array(), hanya saja array yang dihasilkan hanya array asosiatif.
Sintaks :
$row = mysql_fetch_assoc($hasil);
c. mysql_fetch_row()
Fungsi ini hampir sama dengan fungsi mysql_fetch_array(), hanya saja array yang dihasilkan hanya array numeris.
Sintaks :
$row = mysql_fetch_row($hasil);
d. mysql_num_rows()
Fungsi ini digunakan untuk menghitung jumlah record yang ada pada database.
Sintaks :
$jml = mysql_num_rows($hasil);
$jml akan memiliki nilai sesuai dengan jumlah record yang ada.
Apa itu MySQL?
MySQL adalah salah satu jenis database server yang sangat terkenal. MySQL menggunakan SQL sebagai bahasa dasar untuk mengakses databasenya. Selain itu, MySQL bersifat free (Anda tidak perlu membayar untuk menggunakannya) pada pelbagai platform (kecuali pada Windows, yang bersifat shareware) MySQL termasuk jenis RDBMS (Relational Database Management System). Itulah sebabnya, istilah seperti tabel, baris, dan kolom digunakan pada MySQL. Pada MySQL, sebuah database mengandung satu atau sejumlah tabel. Tabel terdiri atas sejumlah baris dan setiap baris mengandung satu atau beberapa kolom. Semua perintah SQL dibagi dalam 2 kategori besar sesuai fungsinya, yaitu :
- DDL - Data Definition Language
merupakan kumpulan perintah SQL yang digunakan untuk membuat, mengubah dan menghapus struktur dan definisi metadata dari objek-objek database. - DML - Data Manipulation Language
merupakan kumpulan perintah SQL yang digunakan untuk proses pengolahan isi data di dalam table seperti memasukkan, merubah dan menghapus isi data - dan tidak terkait dengan perubahan struktur dan definisi tipe data dari objek database.
Mari kita lihat dari definisi dan contoh lebih lanjut pada bagian berikut di bawah ini.
DDL - Data Definition Language
Seperti definisi yang telah dijelaskan di atas, DDL adalah kumpulan perintah SQL yang digunakan untuk membuat (create), mengubah (alter) dan menghapus (drop) struktur dan definisi tipe data dari objek-objek database.
Objek-objek database pada yang dimaksud - pada MySQL - adalah sebagai berikut :
- Database
- Table
- View
- Index
- Procedure (Stored Procedure)
- Function
- Trigger
Contoh :
-- Perintah berikut akan membuat table pada database kita dengan nama "ms_karyawan"
CREATE TABLE ms_karyawan (
kode_cabang varchar(10) default NULL,
kode_karyawan varchar(10) NOT NULL,
nama_depan varchar(8) default NULL,
nama_belakang varchar(9) default NULL,
jenis_kelamin varchar(1) default NULL,
PRIMARY KEY (kode_karyawan)
)
CREATE TABLE ms_karyawan (
kode_cabang varchar(10) default NULL,
kode_karyawan varchar(10) NOT NULL,
nama_depan varchar(8) default NULL,
nama_belakang varchar(9) default NULL,
jenis_kelamin varchar(1) default NULL,
PRIMARY KEY (kode_karyawan)
)
Daftar Perintah DDL pada MySQL 5.0
Berikut adalah contoh perintah DDL yang digunakan pada MySQL. Klik pada link untuk melihat rincian penggunaan dari perintah tersebut.
- Pembuatan (CREATE)
- CREATE DATABASE
- CREATE FUNCTION
- CREATE INDEX
- CREATE PROCEDURE
- CREATE TABLE
- CREATE TRIGGER
- CREATE VIEW
- Perubahan (ALTER & RENAME)
- ALTER DATABASE
- ALTER FUNCTION
- ALTER PROCEDURE
- ALTER TABLE
- ALTER VIEW
- RENAME TABLE
- Penghapusan (DROP)
- DROP DATABASE
- DROP FUNCTION
- DROP INDEX
- DROP PROCEDURE
- DROP TABLE
- DROP TRIGGER
- DROP VIEW
Tabel Matrix Perintah DDL MySQL 5.0
OBJECT | CREATE | ALTER | DROP | RENAME |
DATABASE | Yes | Yes | Yes | |
FUNCTION | Yes | Yes | Yes | |
INDEX | Yes | Yes | ||
PROCEDURE | Yes | Yes | Yes | |
TABLE | Yes | Yes | Yes | Yes |
TRIGGER | Yes | Yes | ||
VIEW | Yes | Yes | Yes |
DML - Data Manipulation Language
DML sendiri adalah kumpulan perintah SQL yang berhubungan dengan pekerjaan mengolah data di dalam table - dan tidak terkait dengan perubahan struktur dan definisi tipe data dari objek database seperti table, column, dan sebagainya.
Contoh DML : Mengambil Seluruh Row Data dari table MS_KARYAWAN
SELECT *
FROM ms_karyawan
FROM ms_karyawan
Contoh DML : Memasukkan data ke dalam tabel ms_karyawan
INSERT INTO ms_karyawan(
kode_cabang,
kode_karyawan,
nama_depan,
nama_belakang,
jenis_kelamin)
VALUES ('cab-001','kar-001','Feris','Thia','Laki-laki');
kode_cabang,
kode_karyawan,
nama_depan,
nama_belakang,
jenis_kelamin)
VALUES ('cab-001','kar-001','Feris','Thia','Laki-laki');
Beberapa daftar Perintah DML MySQL 5.0
- CALL
- DELETE
- DO
- HANDLER
- INSERT
- LOAD DATA INFILE
- REPLACE
- SELECT
- TRUNCATE
- UPDATE
root adalah pemakai dengan level tertinggi pada MySQL yang bisa melakukan apa saja terhadap database MySQL. Pemberian password dapat Anda lakukan dengan memberikan perintah sebagai berikut:
mysqladmin -uroot password gandhi —-> perintah ini berarti kita mengeset password root dengan password “gandhi”.
Setelah perintah di atas Anda berikan, untuk menjadi root Anda perlu mengetikkan password berupa kata gandhi.
NB :
Jika kita telah memberikan password seperti di atas dan kemudian kita ingin mengganti password root menjadi “rahasia”, maka lakukan perintah seperti berikut:
mysqladmin -uroot -p password rahasia
Yang perlu diperhatikan adanya tambahan -p. Kita akan segera menjumpai tanggapan sebagai berikut:
Enter password:
Ketikkan password semula dan tekan Enter. Selanjutnya, password untuk root sudah berubah menjadi rahasia.
Menjalankan Program Klien mysql
mysql adalah nama program pada klien untuk mengakses database MySQL
Untuk menjalankankannya, berikan perintah berikut pada prompt shell:
mysql -uroot -p
Saat muncul Enter password:
masukkan password dan tekan Enter. Anda akan menjumpai prompt:
mysql>
Langkah selanjutnya, kita bisa segera memberikan perintah-perintah mysql untuk memanipulasi database menggunakan MySQL.
Melihat Daftar Database
Untuk mengetahui nama-nama database yang terdapat pada MySQL, kita bisa menggunakan perintah SHOW DATABASES pada prompt mysql.
Sebagai contoh, ketikkan perintah berikut dan kemudian tekan Enter:
SHOW DATABASES;
Program mysql akan menginformasikan keberadaan dua buah database yaitu mysql dan test. Misal jika kita sudah memiliki database yang bernama buku, maka jika kita mengetikkan perintah SHOW DATABASES; maka database buku juga akan tampil.
Melakukan Koneksi ke Suatu Database
Kalau kita bermaksud melakukan pemanipulasian ke suatu database, kita perlu melakukan koneksi ke database tersebut terlebih dulu. Hal ini bisa dilakukan dengan menggunakan perintah mysql bernama USE.
Contoh:
USE user;
Anda akan mendapatkan tanggapan berupa : Database changed
Mengetahui Nama-nama Tabel
Sebuah database dapat mengandung sejumlah tabel.
Untuk mengetahui tabel-tabel yang terdapat pada suatu database, kita bisa menggunakan perintah SHOW TABLES
Contoh :
SHOW TABLES;
Hasilnya semua tabel pada database tsb ditampilkan.
Mengetahui Struktur Tabel
Bila kita bermaksud mengetahui struktur suatu tabel, kita bisa menggunakan perintah DESCRIBE atau DESC.
Contoh untuk mengetahui struktur tabel bernama pajak :
DESC pajak;
Kita akan menjumpai hasil semacam berikut.
Keluar dari mysql
Salah satu perintah untuk keluar dari mysql:
exit
quit
\q
Melihat Isi Tabel user
Perintah untuk melihat tabel bernama pajak (setelah Anda mengaktifkan database):
SELECT * FROM user; —> jangan lupa akhiri perintah dengan titik koma “;”
Select * artinya kita menampilkan semua field. Dengan kata lain tanda “*” berarti semua. menjumpai hasil semacam berikut.
Pada tabel user, nilai % atau kosong pada kolom host berarti sembarang host adapun localhost berarti dari lokal tempat MySQL berada. Pada contoh di atas, pemakai bernama root dapat megakses dari localhost dengan disertai password, tetapi jika ia mengakses dari bukan localhost maka ia bisa mengakses database tanpa password. Sedangkan pemakai siapa saja selain root dapat mengakses dari mana saja tanpa password. Untuk alasan keamanan, tentu saja keadaan seperti perlu diubah. Cara mengubahnya dapat dilihat pada pembahasan berikut.
Menghapus PemakaiMungkin Anda bertanya-tanya, ketika Anda menjalankan mysql Anda sebenarnya berlaku sebagai pemakai siapa? Sesungguhnya apapun nama pemakai Anda Anda bisa mengakses mysql. Pertanyaan berikutnya yang mungkin timbul, “Mengapa bisa begitu?”. Jawabannya disebabkan pada tabel user terdapat pemakai dengan nama kosong, yang memungkinkan siapa saja bisa menjalankan mysql.
Sekarang, Anda dapat mencoba apa yang terjadi seandainya pemakai dengan nama kosong dihapus. Untuk melakukan penghapusan baris yang ada pada tabel, Anda bisa menggunakan perintah SQL bernama DELETE. Sebagai contoh, ketikkan perintah berikut dan kemudian tekan Enter:
DELETE FROM user WHERE user =” ”;
Perintah di atas digunakan untuk menghapus baris-baris pada tabel user yang memenuhi kondisi yakni kolom user berisi string kosong.
Anda bisa memberikan perintah berikut untuk melihat isi tabel user sekarang:
SELECT * FROM user;
Supaya perubahan yang baru saja Anda lakukan berpengaruh terhadap program mysql, Anda perlu memberikan perintah berikut:
flush privileges;
Perintah di atas digunakan agar informasi tentang privilege (hak akses terhadap database) dimuat kembali, sehingga perubahan akan berpengaruh pada tahap selanjutnya.
Sekarang, cobalah untuk keluar dari mysql dan kemudian jalankan mysql kembali dengan mengetikkan:
mysql
Apa yang terjadi? Anda akan menjumpai pesan kesalahan yang menyatakan Anda tak dapat mengakses mysql.
Mengakses mysql Melalui root
Begitu Anda menjumpai pesan seperti di depan, Anda barangkali bertanya-tanya, “Lalu bagaimana saya bisa menggunakan mysql?”. Jawabannya, Anda perlu menggunakan pemakai root atau melalui pemakai yang khusus dibuat untuk mengakses mysql.
Membuat Pemakai Baru
Pembuatan dilakukan dengan menggunakan perintah SQL bernama INSERT melalui root. Sebagai contoh, praktekkan perintah berikut:
INSERT INTO user (host, user, password)
VALUES (‘localhost’, ‘php’, password(‘gandhi));
Setelah Anda memberikan perintah di atas, berikan perintah:
flush privileges;
dan kemudian keluarlah dari mysql.
Selanjutnya ujilah pemakai yang baru Anda ciptakan dengan memberikan perintah berikut:
mysql -uphp -p
Perintah di atas digunakan untuk menjalankan program mysql dari pemakai bernama php. Ketikkan password gandhi ketika mysql memberikan tanggapan:
Enter password:
Anda akan segera menjumpai prompt mysql. Lalu, cobalah untuk memberikan perintah:
USE mysql;
Apa yang terjadi? Ternyata pemakai php tidak berhak mengakses database mysql. Mengapa begitu? Jawabannya adalah karena ketika Anda menciptakan pemakai php, Anda tidak mengatur wewenangnya. Pada keadaan ini semua pengaksesan terhadap database tidak diperkenankan.
Mengganti Wewenang untuk Pemakai php
Dengan menggunakan pemakai root, Anda bisa segera mengubah wewenang untuk pemakai php agar ia bisa melakukan koneksi ke suatu database dan juga melakukan pengaksesan terhadap tabel. Hal ini dapat dilakukan dengan menggunakan perintah SQL bernama UPDATE.
Untuk mempraktekkannya, jalankan mysql dengan memberikan perintah berikut terlebih dulu:
mysql -uroot -p
Setelah prompt mysql ditampilkan, berikan perintah:
USE mysql;
Selanjutnya berikan perintah berikut:
UPDATE user
SET select_priv = ‘Y’,
insert_priv = ‘Y’,
update_priv = ‘Y’,
delete_priv = ‘Y’,
create_priv = ‘Y’,
drop_priv = ‘Y’
WHERE user = ‘php’;
Perintah di atas digunakan untuk mengubah isi sejumlah kolom pada tabel user khusus untuk baris yang nilai user-nya berupa php. Perintah di atas digunakan agar pemakai php dapat melakukan operasi SELECT, UPDATE, DELETE terhadap tabel dan menciptakan (CREATE) dan menghapus (DROP) tabel.
Setelah Anda memberikan perintah di atas, berikan perintah:
flush privileges;
Selanjutnya dengan menggunakan pemakai php, Anda bisa mencoba perintah seperti use dan select.