• Tidak ada hasil yang ditemukan

Modul Pembelajaran Praktek Basis Data (MySQL) - Edited By Haris Saputro.pdf

N/A
N/A
Protected

Academic year: 2021

Membagikan "Modul Pembelajaran Praktek Basis Data (MySQL) - Edited By Haris Saputro.pdf"

Copied!
34
0
0

Teks penuh

(1)

BASIS DATA (MySQL)

BASIS DATA (MySQL)

Edited by Haris Saputro Edited by Haris Saputro

Modul Pembelajaran Praktek Basis Data (MySQL)

(2)

BAB I

BAB I

MENGENAL MySQL

MENGENAL MySQL

1.1

1.1 MengeMengenal nal MySQLMySQL

MySQL adalah Sebuah program database

MySQL adalah Sebuah program database server yang mampu menerima dan mengirimkanserver yang mampu menerima dan mengirimkan

datanya sangat cepat, multi user serta menggunakan peintah dasar SQL ( Structured Query Language ). datanya sangat cepat, multi user serta menggunakan peintah dasar SQL ( Structured Query Language ).

MySQL merupakan dua bentuk lisensi, yaitu FreeSoftare dan Shareare. MySQL yang biasa kita MySQL merupakan dua bentuk lisensi, yaitu FreeSoftare dan Shareare. MySQL yang biasa kita gunakan adalah MySQL FreeSoftare yang berada dibaah Lisensi !"#$!%L ( !eneral %ublic License ). gunakan adalah MySQL FreeSoftare yang berada dibaah Lisensi !"#$!%L ( !eneral %ublic License ).

MySQL Merupakan sebuah database server yang free, artinya kita

MySQL Merupakan sebuah database server yang free, artinya kita bebas menggunakan databasebebas menggunakan database ini untuk keperluan pribadi atau usaha

ini untuk keperluan pribadi atau usaha tanpa harus membeli atau membayar lisensinya. MySQLtanpa harus membeli atau membayar lisensinya. MySQL pertama kali dirintis oleh seorang programmer

pertama kali dirintis oleh seorang programmer database bernamadatabase bernama Michael Widenius .Michael Widenius .Selain databaseSelain database server, MySQl &uga merupakan program yang

server, MySQl &uga merupakan program yang dapat mengakses suatu database MySQL yang berposisidapat mengakses suatu database MySQL yang berposisi sebagai Server, yang berarti program kita berposisi sebagai 'lient. adi MySQL adalah sebuah database sebagai Server, yang berarti program kita berposisi sebagai 'lient. adi MySQL adalah sebuah database yang dapat digunakan sebagai 'lient mupun

yang dapat digunakan sebagai 'lient mupun server.server. atabase MySQL merupakan suatu perangkat lunak

atabase MySQL merupakan suatu perangkat lunak database yang berbentuk database relasionaldatabase yang berbentuk database relasional atau disebut *elational atabase Management System ( *+MS ) yang menggunakan suatu bahasa atau disebut *elational atabase Management System ( *+MS ) yang menggunakan suatu bahasa permintaan yang bernama SQL (Structured Query Language ).

permintaan yang bernama SQL (Structured Query Language ).

1.2

1.2 KelebiKelebihan han MySQLMySQL

atabase MySQL memiliki beberapa kelebihan dibanding database lain,

atabase MySQL memiliki beberapa kelebihan dibanding database lain, diantaranya diantaranya 

• MySQL merupakan atabase Management System ( +MS MySQL merupakan atabase Management System ( +MS ))

• MySQL sebagai *elation atabase Management System ( *+MS ) atau disebut denganMySQL sebagai *elation atabase Management System ( *+MS ) atau disebut dengan

database *elational database *elational

• MySQL Merupakan sebuah database server yang free, artinya kita MySQL Merupakan sebuah database server yang free, artinya kita bebas menggunakanbebas menggunakan

database ini untuk keperluan pribadi atau

database ini untuk keperluan pribadi atau usaha tanpa harus membeli atau membayarusaha tanpa harus membeli atau membayar lisensinya

lisensinya

• MySQL merupakan sebuah database clientMySQL merupakan sebuah database client

• MySQL mampu menerima -uery yang bertupuk dalam MySQL mampu menerima -uery yang bertupuk dalam satu permintaan atau Multisatu permintaan atau Multi

/hreading. /hreading.

Edited

(3)

BAB I

BAB I

MENGENAL MySQL

MENGENAL MySQL

1.1

1.1 MengeMengenal nal MySQLMySQL

MySQL adalah Sebuah program database

MySQL adalah Sebuah program database server yang mampu menerima dan mengirimkanserver yang mampu menerima dan mengirimkan

datanya sangat cepat, multi user serta menggunakan peintah dasar SQL ( Structured Query Language ). datanya sangat cepat, multi user serta menggunakan peintah dasar SQL ( Structured Query Language ).

MySQL merupakan dua bentuk lisensi, yaitu FreeSoftare dan Shareare. MySQL yang biasa kita MySQL merupakan dua bentuk lisensi, yaitu FreeSoftare dan Shareare. MySQL yang biasa kita gunakan adalah MySQL FreeSoftare yang berada dibaah Lisensi !"#$!%L ( !eneral %ublic License ). gunakan adalah MySQL FreeSoftare yang berada dibaah Lisensi !"#$!%L ( !eneral %ublic License ).

MySQL Merupakan sebuah database server yang free, artinya kita

MySQL Merupakan sebuah database server yang free, artinya kita bebas menggunakan databasebebas menggunakan database ini untuk keperluan pribadi atau usaha

ini untuk keperluan pribadi atau usaha tanpa harus membeli atau membayar lisensinya. MySQLtanpa harus membeli atau membayar lisensinya. MySQL pertama kali dirintis oleh seorang programmer

pertama kali dirintis oleh seorang programmer database bernamadatabase bernama Michael Widenius .Michael Widenius .Selain databaseSelain database server, MySQl &uga merupakan program yang

server, MySQl &uga merupakan program yang dapat mengakses suatu database MySQL yang berposisidapat mengakses suatu database MySQL yang berposisi sebagai Server, yang berarti program kita berposisi sebagai 'lient. adi MySQL adalah sebuah database sebagai Server, yang berarti program kita berposisi sebagai 'lient. adi MySQL adalah sebuah database yang dapat digunakan sebagai 'lient mupun

yang dapat digunakan sebagai 'lient mupun server.server. atabase MySQL merupakan suatu perangkat lunak

atabase MySQL merupakan suatu perangkat lunak database yang berbentuk database relasionaldatabase yang berbentuk database relasional atau disebut *elational atabase Management System ( *+MS ) yang menggunakan suatu bahasa atau disebut *elational atabase Management System ( *+MS ) yang menggunakan suatu bahasa permintaan yang bernama SQL (Structured Query Language ).

permintaan yang bernama SQL (Structured Query Language ).

1.2

1.2 KelebiKelebihan han MySQLMySQL

atabase MySQL memiliki beberapa kelebihan dibanding database lain,

atabase MySQL memiliki beberapa kelebihan dibanding database lain, diantaranya diantaranya 

• MySQL merupakan atabase Management System ( +MS MySQL merupakan atabase Management System ( +MS ))

• MySQL sebagai *elation atabase Management System ( *+MS ) atau disebut denganMySQL sebagai *elation atabase Management System ( *+MS ) atau disebut dengan

database *elational database *elational

• MySQL Merupakan sebuah database server yang free, artinya kita MySQL Merupakan sebuah database server yang free, artinya kita bebas menggunakanbebas menggunakan

database ini untuk keperluan pribadi atau

database ini untuk keperluan pribadi atau usaha tanpa harus membeli atau membayarusaha tanpa harus membeli atau membayar lisensinya

lisensinya

• MySQL merupakan sebuah database clientMySQL merupakan sebuah database client

• MySQL mampu menerima -uery yang bertupuk dalam MySQL mampu menerima -uery yang bertupuk dalam satu permintaan atau Multisatu permintaan atau Multi

/hreading. /hreading.

Edited

(4)

• MySQL merupakan atabase yang mampu menyimpan data MySQL merupakan atabase yang mampu menyimpan data berkapasitas sangat besarberkapasitas sangat besar

hingga berukuran !iga+yte sekalipun. hingga berukuran !iga+yte sekalipun.

• MySQL diidukung oleh driver 1+', artinya database MySQL dapat diakses menggunakanMySQL diidukung oleh driver 1+', artinya database MySQL dapat diakses menggunakan

aplikasi apa sa&a termasuk berupa visual seperti visual +asic dan elphi. aplikasi apa sa&a termasuk berupa visual seperti visual +asic dan elphi.

• MySQL adalah database menggunakan enkripsi passord, &adi database ini cukup amanMySQL adalah database menggunakan enkripsi passord, &adi database ini cukup aman

karena memiliki passord untuk mengakses nya. karena memiliki passord untuk mengakses nya.

• MySQL merupakan atabase Server yang multi user, artinya database ini tidak hanyaMySQL merupakan atabase Server yang multi user, artinya database ini tidak hanya

digunakan oleh satu pihak orang akan tetapi dapat digunakan oleh banyak pengguna. digunakan oleh satu pihak orang akan tetapi dapat digunakan oleh banyak pengguna.

• MySQL mendukung field yang di&adikan sebagai kunci primer dan kunci uni- ( #ni-ue ).MySQL mendukung field yang di&adikan sebagai kunci primer dan kunci uni- ( #ni-ue ).

• MySQL memliki kecepatan dalam pembuatan table maupun pengupdate an MySQL memliki kecepatan dalam pembuatan table maupun pengupdate an table.table.

2.3

2.3 Mengenal SQL  S!"#c!#"ed Q#e"y Lang#age $Mengenal SQL  S!"#c!#"ed Q#e"y Lang#age $

SQL ( Structured Query Language ) adalah sebuah bahasa permintaan database yang terstruktur. SQL ( Structured Query Language ) adalah sebuah bahasa permintaan database yang terstruktur. +ahasa SQL ini dibuat sebagai bahasa yang dapat merelasikan beberapa tabel dalam database maupun +ahasa SQL ini dibuat sebagai bahasa yang dapat merelasikan beberapa tabel dalam database maupun merelasikan antar database.

merelasikan antar database.

SQL dibagi men&adi tiga bentuk Query, yaitu  SQL dibagi men&adi tiga bentuk Query, yaitu  1.3

1.3.1.1 DDDDL ( L ( DaData ta DeDefinfinitition ion LaLangnguauage ge ))

L adalah sebuah metode Query SQL yang berguna untuk mendefinisikan data pada L adalah sebuah metode Query SQL yang berguna untuk mendefinisikan data pada sebuah atabase, Query yang dimiliki L adalah 

sebuah atabase, Query yang dimiliki L adalah 

• '*45/4 '*45/4   igunakan igunakan untuk untuk membuat membuat atabase atabase dan dan /abel/abel

• rop rop   igunakan igunakan untuk untuk menghapus menghapus /abel /abel dan dan atabaseatabase

• 5lter 5lter   igunakan igunakan untuk untuk melakukan melakukan perubahan perubahan struktur struktur tabel tabel yang yang telahtelah

dibuat, baik menambah Field ( 5dd ), mengganti nama Field dibuat, baik menambah Field ( 5dd ), mengganti nama Field ( 'hange ) ataupun menamakannya kembali ( *ename ), dan ( 'hange ) ataupun menamakannya kembali ( *ename ), dan menghapus Field ( rop ).

menghapus Field ( rop ).

Edited By Haris Saputro

(5)

2.3.0 DML ( Data Manipulation Language )

ML adalah sebuah metode Query yang dapat digunakan apabila L telah ter&adi, sehingga fungsi dari Query ML ini untuk melakukan pemanipulasian database yang telah dibuat. Query yang dimiliki ML adalah 

• 6"S4*/  igunakan untuk memasukkan data pada /abel atabase

• #%5/4  igunakan untuk pengubahan terhadap data yang ada pada /abel

atabase

• 4L4/4  igunakan untuk %enhapusan data pada tabel atabase

1.3.3 DCL ( Data Control Language )

'L adalah sebuah metode Query SQL yang digunakan untuk memberikan hak

otorisasi mengakses atabase, mengalokasikan space, pendefinisian space, dan pengauditan penggunaan database. Query yang dimiliki 'L adalah 

• !*5"/  #ntuk mengi7inkan #ser mengakses /abel dalam atabase.

• *48194  #ntuk membatalkan i7in hak user, yang ditetapkan oleh perintah

!*5"/

• '1MM6/  Mentapkan penyimpanan atabase

• *1LL+5'9  Membatalkan penyimpanan atabase

(6)

BAB 2

%#ng&i ' %#ng&i (ada MySQL

2.1 Menga)!i*)an +i"e)!o"i MySQL Se",e"

#ntuk dapat menggunakan MySQL terlebih dahulu aktifkan Server MySQL dengan

menghidupkan daemond MySQL. %rogram MySQL yang digunakan pada modul ini adalah ;5M%% 2.<, maka untuk men&alankan daemond MySQL terdapat pada direktori yaitu '=%rogram

Files=;ampp=Mys-l=+in

#ntuk masuk kedalam server MySQL, bukalah MS1S %rompt anda melalui *un kemudian ketik 'ommand atau cmd. Maka anda dapat masuk ke dalam direktori MySQL melalui MS1S %romtp seperti dibaah ini.

2.2 Ma&#) dan Kel#a" da"i Se",e" MySQL

MySQL adalah sebuah database server yang sangat aman. MySQL memiliki kemampuan memana&emen user dalam mengakses. adi, tidak sembarang user dapat mengakses sebuah database yang diciptakan MySQL. Maka sebelum anda memiliki #ser untuk mengakses MySQL anda &uga dapat Mengakses database MySQL menggunakan #ser Root.

+erikut adalah perintah yang digunakan untuk mengkoneksikan kedalam Server Mys-l  Shell > MySQL ?uRoot ?p

4nter %assord @@@@@@@@@

9eterangan  /anda ?u menerangkan baha kita akan masuk menggunakan #ser "ame bernama *oot.

/anda ?p menyatakan kita akan masuk menggunakan %assord.

(7)

+erikut adalah perintah yang digunakan untuk mengkoneksikan kedalam Server Mys-l melalui *oot  Shell> Mys-l ?u root

#ntuk dapat keluar dari Server MysQL kita dapat mengetikkan 6ntruksi -uit ata =-  Mys-l> -uit

+ye

Mys-l> =-+ye

2.- Ban!#an dalam MySQL

atabase MySQL menyediakan beberapa fasilitas bantuan yang berguna untuk

mendokumentasikan atau memanipulasikan server yaitu dengan cara mengetikan intruksi =h atau =B. Mys-l> =B

Semua Query harus diakhiri dengan tanda titik koma ( C ). /anda ini menun&ukkan baha -uery telah berakhir dan siap dieksekusi.

Delp ( =h )  igunakan untuk menampilkan file bantuan pada MySQL B ( =B )  %erintah ini sama dengan perintah Delp

'lear ( =c )  +erguna untuk membersihkan atau menggagalkan semua perintah yang telah ber&alan dalam suatu prompt

'onnect ( =r )  untuk melakukan penyegaran koneksi ke dalam database yang ada pada Server Dost

4go ( =! )  berguna untuk menampilkan data secara hori7ontal. !o ( =g )  member perintah server untuk mengeksekusi

tee ( =/ )  mengatur tempat file yang akan didokumentasikan.

(8)

'ontoh 

mys-l> =/ d=bela&ar mys-l.doc Logging to file d=data.docCG

"ote ( =t )  akhir dari ( =/ ) yang berguna untuk mendokumentasikan semua -uery. %rint ( =p )  mencetak semua -uery yang telah kita perintahkan kelayar.

%rompt ( =* )  Mengubah prompt standar sesuai keinginan.

Source ( =. )  berguna untuk mengeksekusi -uery dari luar yang berbentuk .&l

#se ( =u )  berguna untuk memasuki database yang akan digunakan maupun mengganti database yang akan di gunakan.

(9)

BAB

-Admini&!"a&i MySQL

MySQL Selaku database server yang mampu ber&alan pada &aringan, tentu sa&a MySQL harus memiliki kemampuan khusus yang berguna untuk melakukan mana&emen user atau mendukung system databaseyang bersifat client$server.

-.1 Memb#a! /&e" ba"#

#ntuk dapat menciptkan user baru pada database mys-l yang terdapat pada tabel user. apat dilakukan dengan menggunakan pernyataan SQL bernama 6"S4*/. SintaH seperti berikut 

INSER0 IN0O user(host,user,passord) AL/ES(IG,GnamaJuserG,GpassordG)C 'ontoh 

mys-l> 6"S4*/ 6"/1 user(host,user,passord) 85L#4S(KlocalhostK,KharisK,MA(KifE2<K))C

Query 19, 2 ro affected, : arnings (. sec)

Seteleh anda memberikan perintah diatas, berikan perintah  %L/S (RIILEGES3 'ontoh 

mys-l> FL#SD %*686L4!4SC

Query 19,  ros affected (. sec)

(10)

-.2 Membe"i)an 4ewenang /n!#) /&e"

5pabila #ser telah dibuat terlebih dahulu dan lupa untuk memberikan Dak Neenang untuk #ser. 9ita dapat memberikan hak eenang dengan menggunakan %erintah Query #%5/4. SintaH yang digunakan seperti berikut 

/(+A0E user SE0selectJpriv OGyG,

6nsertJpriv OGyG, #pdateJpriv OGyG, eleteJpriv OGyG, 'reateJpriv OGyG, ropJpriv OGyG, 5lterJpriv OGyG 4ERE user OGharisGC

(11)

BAB 5

++L  +A0A +E%INI0ON LANG/AGE $

++L adalah sebuah metode Query SQL yang berguna untuk mendefinisikan data pada sebuah atabase.

5.1. 0y6e +a!a 6ada MySQL

/ipe data adalah suatu bentuk pemodelan data yang dideklarasikan pada saat melakukan pembuatan tabel. /ipe data ini akan mempengaruhi setiap data yang akan dimasukkan ke dalam sebuah tabel. ata yang akan dimasukkan harus sesuai dengan tipe data yang dideklarasikan.

+erbagai type data pada MySQL dapat dilihat pada tabel berikut 

0y6e+a!a Ke!e"angan

/6"6"/ #kuran 2 byte. +ilangan bulat terkecil, dengan &angkauan untuk bilangan bertanda 20 sampai dengan 20< dan untuk yang tidak bertanda   s$d 0AA. +ilangan tak bertandai dengan kata #"S6!"4

SM5LL6"/ #kuran 0 +yte. +ilangan bulat dengan &angkauan untuk bilangan bertanda  30<E s$d 30<E< dan untuk yang tidak bertanda   s$d EAA3A

M46#M6"/ #kuran 3 byte. +ilangan bulat dengan &angkauan untuk bilangan bertanda  3E s$ d 3E< dan untuk yang tidak bertanda   s$d 2E<<<02A

6"/ #kuran : byte. +ilangan bulat dengan &angkauan untuk bilangan bertanda  02:<:3E: s$d 02:<:3E:< dan untuk yang tidak bertanda   s$d :0P:PE<0PA 6"/4!4* #kuran : byte. Sinonim dari int

+6!6"/ #kuran  byte. +ilangan bulat terbesar dengan &angkauan untuk bilangan bertanda  P0033<03EA:<<A s$d P0033<03EA:<<A< dan untuk yang tidak bertanda   s$d 2::E<::<3<PAA2E2A

FL15/ #kuran : byte. +ilangan pecahan 1#+L4 #kuran  byte. +ilangan pecahan 1#+L4%*4'6S61" #kuran  byte. +ilangan pecahan *45L #kuran  byte. Sinonim dari 1#+L4

4'6M5L (M,) #kuran M byte. +ilangan pecahan, misalnya 4'6M5L(A,0 dapat digunakan untuk menyimpan bilangan PP,PP s$d PP,PP

"#M4*6' (M,) #kuran M byte. Sinonim dari 4'6M5L, misalnya "#M4*6'(A,0) dapat digunakan untuk menyimpan bilangan PP,PP s$d PP,PP

Type Data untuk ilangan (!u"#er)

(12)

0y6e+a!a Ke!e"angan

5/4/6M4 #kuran  byte. 9ombinasi tanggal dan &am, dengan &angkauan dari 222 G s$d PPPP2032 03APAPG

5/4 #kuran 3 +yte. /anggal dengan &angkauan dari 222G s$d PPPP2032G

/6M4S/5M% #kuran : byte. 9ombinasi tanggal dan &am, dengan &angkauan dari 2P<22 G s$d 03<G

/6M4 #kuran 3 byte. Naktu dengan &angkauan dari 3PAPAPG s$d 3APAPG 45* #kuran 2 byte. ata tahun antara 2P2 s$d 02AA

Type Data untuk Tanggal dan $a"

0y6e+a!a Ke!e"angan

'D5* Mampu menangani data hingga 0AA karakter. /ipe data 'D5*

mengharuskan untuk memasukkan data yang telah ditentukan oleh kita. 85*'D5* Mampu menangani data hingga 0AA karakter. /ipe data 85*'D5* tidak

mengharuskan untuk memasukkan data yang telah ditentukan oleh kita. /6"+L1+, /6"/4;/ #kuran 0AA byte. Mampu menangani data sampai 0R2 data.

+L1+, /4;/ #kuran EAA3A byte. /ype string yang mampu menangani data hingga 0R2E2 (2EM2) data.

M46#M+L1+, M46#M/4;/ #kuran 2E<<<02A byte. Mampu menyimpan data hingga 0R0:2 (2EM2) data.

L1"!+L1+, L1"!/4;/ #kuran :0P:PE<0PA byte. Mampu menyimpan data hingga berukuran !6!5 +/4. /ipe data ini memiliki batas penyimpanan hingga 0R302 (:!2) data.

4"#M(nilai2G,Gnilai0G,,Gnilai"G) #kuran 2 atau 0 byte. /ergantung &umlah nilai enumerasinya (maksimum EAA3A nilai)

S4/(nilai2G,Gnilai0G,,Gnilai"G) 2,0,3,: atau  byte, tergantung &umlah anggota himpunan (maksimum E: anggota)

Type Data untuk %arakter dan Lain&lain

(13)

5.2 Menci6!a)an +a!aba&e

atabase adalah sebuah media utama yang harus dibuat dalam membangun sebuah basis data agar nantinya dapat kita letakkan beberapa tabel dengan fieldfieldnya.

%erintah yang digunakan untuk menciptakan database pada MySQL dengan SyntaH berikut  7REA0E +A0ABASE namaJdatabaseC

'ontoh 

mys-l> create database pendaftaranC Query 19, 2 ro affected (.22 sec)

%ada contoh diatas, -uery 19 menyatakan baha pembuatan database dengan nama pendaftaran berhasil dibuat, untuk melihat database yang ada pada MySQl dapat menggunakan S6ntaH berikut C

SO4 +A0ABASES3 'ontoh 

5.- Mengha6#& +a!aba&e

#ntuk menghapus atabase yang telah dibuat dapat menggunakan -uery SQL berikut  +RO( +A0ABASE namaJdatabaseC

rop berarti menghapus. Query SQL ini berfungsi untuk menghapus sebuah database, seperti contoh berikut 

mys-l> drop database pendaftaranC Query 19,  ros affected (.0 sec)

(14)

5.5 Menci6!a)an 0abel

/abel adalah obyek utama yang harus ada pada sebuah basis data karena di dalamnya semua data akan disimpan. /abel terletak pada sebuah database, sehingga pembuatan tabel dilakukan

setelah sebuah database telah dibuat. alam tabel terdapat bari dan kolom. +aris diistilahkan dengan recordset dan kolom dengan field.

Reco"d&e! %ield

6d "ama 5lamat %hone

2 +oy /rimoyo l. #&ung berung 2AE:PA22 0 6rfan "urhudin 9p. %anyileukan 'ibiru 2000PA:3:

#ntuk membuat sebuah tabel atau lebih, database harus diaktifkan dulu karena tabel akan dimasukkan ke dalam database yang akan diaktifkan. SintaH untuk mengaktifkan atabase adalah 

/SE namaJdatabaseC 'ontoh 

mys-l> use pendaftaranC atabase changed

Setelah masuk ke dalam database anda dapat membuat sebuah tabel atau lebih. #ntuk membuat tabel dapat menggunakan sintaH dibaah ini 

7REA0E 0ABLE namaJtabel ( field2 type(length), field0 type(length), field3 type(length),  .(.))C

(15)

'ontoh 

mys-l> create table dataJdiri ( > no int(3), > nama varchar(3A), > alamat varchar(E), > email varchar(:), > noJtelepon varchar(2A), > seH char(2))C

Query 19,  ros affected (. sec)

%ada contoh diatas, -uery 19 menyatakan baha pembuatan tabel dengan nama dataJdiri berhasil dibuat, untuk melihat tabel yang ada pada database dapat menggunakan S6ntaH berikut C

SO4 0ABLES3

'ontoh 

5.8 Meliha! S!"#)!#" 0abel

Setelah tabel dibuat, anda dapat melihat tipe data dan pan&ang recordset dengan cara menampilkan struktur tabel. %erintah yang digunakan untuk menampilkan struktur tabel adalah 

+ES7 namaJtabelC 5tau

+ES7RIBE namaJtabelC

(16)

'ontoh 

5.9 Mengha6#& 0abel

#ntuk menghapus /abel yang telah dibuat dapat menggunakan -uery SQL berikut  +RO( 0ABLE namaJtabelC

rop berarti menghapus. Query SQL ini berfungsi untuk menghapus sebuah /abel, seperti contoh berikut 

mys-l> drop table dataJdiriC

Query 19,  ros affected (.3 sec)

5.: Memb#a! K#nci ("ime"  ("ima"y Key $

alam membuat sebuah database, kita akan menemukan sebuah record yang data nya tidak boleh sama dengan record yang lain. 5gar data tidak kembar maka harus membuat sebuah kolom yang di deklarasikan sebagai kunci primer (primary key), %rimary key hanya diperboleh kan dibuat satu kunci. SyntaH untuk menciptakan kunci primer (primary key) adalah 

7REA0E 0ABLE namaJtabel ( field2 type(length)(RIMAR; KE;, field0 type(length),  .(.))C

(17)

'ontoh 

5.< Memb#a! Kolom /ni)  /ni#e $

9olom #ni-ue adalah sebuah bentuk kolom yang tidak mengi7inkan adanya data kembar. 5pabila pada proses input terdapat data kembar maka proses tersebut akan digagalkan atau ditolak oleh database.

SyntaH untuk menciptakan 9olom unik (#ni-ue) adalah 

7REA0E 0ABLE namaJtabel ( field2 type(length), field0 type(length),  .(.),/NIQ/E (field2,field 0))C

'ontoh 

mys-l> 'reate table pribadi ( > kdJpribadi 'D5*(3), > panggilan char(:), > nama varchar(3A), > email varchar(A), > seH char(2), > #"6Q#4 (kdJpribadi,panggilan))C Query 19,  ros affected (. sec)

(18)

5.= Mani6#la&i 0abel

%erubahan tabel yang telah dibuat akan selalu dilakukan mengingat perkembangan database, termasuk diantaranya menambahkan beberapa field pada tabel, mengganti nama field maupun tabel.

'..1 Mengganti na"a ta#el 

Query SQL untuk merubah nama tabel dengan menggunakan RENAME, SintaH seperti berikut 

RENAME 0ABLE tabelJlama 0O tabelJbaruC 'ontoh 

mys-l> rename table pribadi to dataJpribadiC Query 19,  ros affected (.0 sec)

'.. Mena"#ah *ield pada Ta#el 

Menambah kolom dapat diartikan sebagai langkah untuk menyisipkan field baru pada sebuah tabel. #ntuk melakukan penambahan Field maka AL0ER spesifikasi yang digunakan adalah A++. SintaH yang digunakan adalah 

AL0ER 0ABLE namaJtabel A++ namaJfield /ypeJdata(length)C 'ontoh 

mys-l> alter table dataJdiri add golJdarah char(2)C Query 19,  ros affected (.2: sec)

*ecords  uplicates  Narnings 

(19)

'..3 Menghapus *ield pada Ta#el 

%ada pembuatan database pasti terdapat kesalahan seperti pada field tabel yang berlebihan dan lainlain. #ntuk melakukan %enghapusan Field maka 5L/4* spesifikasi yang digunakan adalah +RO(. SintaH yang digunakan adalah 

AL0ER 0ABLE namaJtabel +RO( namaJfieldC

'ontoh 

mys-l> alter table dataJdiri drop golJdarahC Query 19,  ros affected (.A sec)

*ecords  uplicates  Narnings 

(20)

BAB 8

+ML +A0A MANI(/LA0ION LANG/AGE$

+ML adalah sebuah metode Query yang dapat digunakan apabila L telah ter&adi, sehingga fungsi dari Query ML ini untuk melakukan pemanipulasian database yang telah dibuat.

+uatlah atabase +ukuJtamu dan didalamnya terdapat tabel tbJtamu dengan Struktur tabel berikut 

Field /ype Length 9eterangan "o 6nt 3 %rimary key "ama 8archar 3A

5lamat 8archar E 4mail 8archar : "oJtelp 8archar 2A

8.1 Mema&#))an +a!a 6ada !abel  INSER0 $

Memasukkan data atau entry data, dalam semua program yang menggunakan -uery SQL sebagai standar permintaannya, digunakan perintah 6"S4*/. Syarat untuk memasukkan data adalah telah terciptanya tabel pada sebuah database. SintaH yang digunakan adalah 

INSER0 IN0O namaJtabel AL/ES (isiJfield2G, isiJfield0G, isiJfield3G,.., isiJfield"G)C 'ontoh 

mys-l> insert into tbJtamu values(K2K,K+oi trimoyoK,Ku&ung berungK,KboJi<<Tyahoo.comK,KAE23A:<PK)C

Query 19, 2 ro affected (.A sec)

(21)

Maka data telah masuk ke dalam tabel seperti berikut 

8.2 Mem6e"ba"#i I&i +a!a  /(+A0E $

Memperbarui isi data atau update data adalah sebuah proses merema&akan data lama men&adi data yang lebih baru. "amun tidak semua data dalam database yang perlu direma&akan, melainkan sebagian data yang dianggap perlu untuk direma&akan. Query SQL yang digunakan adalah #%5/4 yang di ketikkan seperti berikut 

/(+A0E namaJtabel SE0 fieldJ2 O dataJbaruG, fieldJ0 OGdataJbaruG, . , FieldJ" OGdataJbaruGC 'ontoh 

mys-l> update tbJtamu set

> namaOKirfan nurhudinK here namaOU+oi trimoyoUC Query 19, 2 ro affected (. sec)

*os matched 2 'hanged 2 Narnings 

(22)

Maka hasilnya akan berubah seperti berikut 

ata yang asalnya bernama +oi trimoyo berubah men&adi irfan nurhudin yang dihasilkan dari -uery SQL #%5/4.

8.- Mengha6#& +a!a  +ELE0E $

#nutk menghapus data, MySQL memiliki -uery bernama 4L4/4. %enggunaannya diikuti dengan nama data yang akan dihapus. +erikut SintaH untuk menghapus semua data yang terdapat pada tabel 

+ELE0E %ROM namaJtabelC

Sedangkan berikut sintaH untuk menghapus data yang diinginkan dari sebuah tabel  +ELE0E %ROM namaJtabel 4ERE kondisiC

'ontoh 

6sikan data pada tabel tbJtamu seperti dibaah ini 

(23)

#ntuk menghapus data nomor : yang terdapat pada tabel tbJtamu maka gunakan -uery sepertin dibaah ini 

 mys-l> delete from tbJtamu here noOK:KC Query 19, 2 ro affected (.3 sec)

Maka hasilnya akan seperti dibaah ini baha data nomor : yang bernama ridan telah dihapus menggunakan -uery 4L4/4 

(24)

BAB 9

SELEKSI +A0A

Menampilkan data adalah hal yang sangat penting karena kita harus melihat dan menyeleksi suatu data dalam table maupun antar table. #ntuk Melihat data atau Selection,Query yang digunakan adalah SELE70 yang diikuti beberapa pernyataan khusus berkenaan dengan tabel yang diseleksi.

9.1 Menam6il)an +a!a +a"i &eb#ah 0abel

#ntuk menampilkan dari sebuah tabel dapat menggunakan SintaH berikut  SELE70 (Field2, field0, , Field") %ROM namaJtabelC

Query diatas mengartikan baha data yang akan ditampilkan didalam tabel hanya filed ? filed tertenu.

5tau

SELE70 > %ROM namaJtabelC

Query diatas mengartikan baha data dari seluruh Field yang terdapat dalam tabel akan ditampilkan.

'ontoh 

5tau

(25)

9.2 Menam6il)an +a!a dengan (e"in!ah 4ERE

ND4*4 yang artinya dimana, untuk menampilkan data menggunakan perintah here (dimana) dapat menggunakan perintah berikut 

SELE70 > %ROM namaJtabel 4ERE kondisi 'ontoh 

ata sebelumnya yang ada pada tabel tbJtamu seperti berikut 

Maka akan menampilkan data menggunakan perintah here  SELE70 > %ROM tbJtamu 4ERE alamatOGu&ung berungGC

'ontoh diatas mengartikan baha sintaH meminta untuk menampilkan semua data yang ada pada tabel tbJtamu yang dimana akan ditampilkan dari field alamat yang isi data dari field alamat hanya u&ung berung. Maka yang keluar adalah data ang filed alamatnya hanya u&ung berung.

9.- Menam6il)an +a!a dengan BE04EEN

+eteen artinya diantara, beteen befungsi untuk menampilkan data yang tertentu misalnya diantara 0 dan A. #ntuk menampilkan data dengan beteen dapat menggunakan sintaH berikut 

SELE70 > %ROM namaJtabel 4ERE kondisi BE04EEN nilaiJ2 AN+ nilaiJ0C

(26)

+uatlah sebuah 5/5+5S4 dengan nama dbJstock kemudian buatlah tabel didalamnya dengan nama tabel tJbarang kemudian isi data seperti berikut 

'ontoh 

SELE70 > %ROM tJbarang 4ERE hargaJbrg BE04EEN 3<A AN+ :A

'ontoh diatas menun&ukkan baha semua data ditun&ukkan dari tabel tJbarang dimana yang ditampilkan dari field hargaJbrg diantara 3<A dan :A. Maka data yang tampil hanya data yang bernilai 3<A sampai :A.

9.5 Menam6il)an +a!a dengan (e"in!ah LIKE

%erintah Like kadang dibutuhkan dalam pembuatan database yaitu dalam menampilkan data tertentu yang hanya berkaitan dengan katakata yang diinginkan. Query yang digunakan adalah 

SELE70 > %ROM namaJtabel 4ERE 9ondisi LIKE ?@namaJkaitan@C

Maka data yang ditampilkan hanya nama barang yang berkaitan dengan kata M6'*1S1F/.

(27)

9.8 Menam6il)an +a!a dengan (eng#"#!an So"!ing OR+ER B;$

Fungsi ini digunakan untuk melakukan pengurutan data, sehingga data dari sebuah atau beberapa tabel dapat tampil berurutan sesuai keinginan. %engurutan data terbagi men&adi dua 

•  ASC(pengurutan dengan 5scending)

• DESC(pengurutan dengan escending)

SintaH yang digunakan adalah 

SELE70 > %ROM namaJtabel OR+ER B; kolom /ype 'ontoh 

Select @ from tJbarang order by namaJbarang ascC

an Select @ from tJbarang order by namaJbarang ascC

(28)

9.9 Menam6il)an +a!a dengan (engelom6o))an da!a GRO/( B;$

!roup +y adalah fungsi untuk mengelompokkan data dalam sebuah kolom yang ditun&uk. Fungsi ini akan menghasilkan kelompok data dengan menghilangkan data yang sama dalam satu tabel. Maka apabila dalam satu kolom terdapat beberapa data yang sama maka data yang akan ditampilkan hanya salah satu. SintaH yang digunakan seperti berikut 

SELE70 > %ROM namaJtabel GRO/( B; namaJkolomC 'ontoh 

9.9 Menam6il)an &e&#ai dengan %#ng&i S!a&!i&!ic

+.+.1 *ungsi C,-!T 

Fungsi ini biasanya digunakan untuk melakukan pengecekan &umlah data dalam sebuah tabel yang isinya ratusan hingga ribuan, sehingga kita tidak dapat menghitungnya secara manual. MySQL memiliki perintah untuk mengatasinya yaitu dengan menggunakan '1#"/(). SintaHnya seperti berikut 

SELE70 7O/N0 >$ %ROM namaJtabelC 'ontoh  mys-l> S4L4'/ '1#"/(@) F*1M tbJtamuC VV W '1#"/(@) W VV W : W VV

2 ro in set (. sec)

(29)

+.+. *ungsi -M

S#M berfungsi untuk mencari nilai total dalam suatu kolom pada sebuah tabel didalam database. Query pada MySQL adalah S#M(). S6ntaH yang digunakan seperti berikut 

SELE70 S/M(namaJkolom) %ROM namaJtabelC 'ontoh 

mys-l> select S#M(hargaJbrg) from tJbarangC VV

W S#M(hargaJbrg) W VV W 0<<A W VV 2 ro in set (. sec)

9.: Menam6il)an +a!a Se&#ai dengan %#ng&i S!"ing

+./.1 *ungsi L0*T (2n)

+erfungsi mengambil data berdasarkan string dari se&umlah n karakter dari string ; dari kiri. SintaH yang digunakan seperti berikut 

SELE70 > %ROM namaJtabel 4ERE LE%0(namaJkolom,&umlahJkarakter)OXkarakterXC 'ontoh 

ata sebelumnya

(30)

engan menggunakan fungsi L4F/ akan men&adi berikut 

Maka yang ditampilkan adalah isi data yang kode barangnya hanya beraal dari huruf . +./. *ungsi R45T (2n)

Fungsi *ight hamper sama dengan fungsi L4F/ hanya Query *6!D/ +erfungsi mengambil data berdasarkan string dari se&umlah n karakter dari string ; dari 9anan. SintaH yang digunakan seperti berikut 

SELE70 > %ROM namaJtabel 4ERE RIG0(namaJkolom,&umlahJkarakter)OXkarakterXC 'ontoh 

Maka yang ditampilkan adalah isi data yang kode barangnya hanya berakhir dari nomor 0. +./. *ungsi MD (2n26)

+erfungsi mengambil data berdasarkan string dari se&umlah dari string ; n karakter se&umlah n karakter dari posisi kiri. SintaH yang digunakan seperti berikut 

SELE70 > %ROM namaJtabel 4ERE MI+(namaJkolom,posisiJn,&umlahJkarakter)OXkarakterXC 'ontoh 

Maka yang ditampilkan adalah isi data yang kode barangnya berasal Duruf % dari 0 huruf karakter sebelah kiripada kolom kode barang.

(31)

9.< Menam6il)an da!a dengan nilai !e"!inggi dalam &eb#ah !abel MA$

#ntuk mencari nilai tertinggi pada suatu data didalam database. SQL menyediakan

fungsi M5;. Query yang digunakan seperti berikut 

SELE70 MA

(namaJkolom)

%ROM

 namaJtabelC

'ontoh 

mys-l> select maH(hargaJbrg) from tJbarangC

VV

W maH(hargaJbrg) W

VV

W EA

W

VV

2 ro in set (.0 sec)

9.= Menam6il)an da!a dengan nilai !e"endah dalam &eb#ah !abel MIN$

#ntuk mencari nilai terendah pada suatu data didalam database. SQL menyediakan

fungsi M6". Query yang digunakan seperti berikut 

SELE70 MIN

(namaJkolom)

%ROM

 namaJtabelC

'ontoh  mys-l> select min(hargaJbrg) from tJbarangC

VV

W min(hargaJbrg) W

VV

W 3A

W

VV

2 ro in set (. sec)

(32)

BAB :

SELEKSI AN0AR 0ABEL

alam sebuah database yang berelasional, kita dapat menampilkan data dari dua tabel

atau tiga tabel yang berbeda. 5kan tetapi, apabila beberapa tabel tersebut merupakan yang

berelasi, kita harus menggunakan teknik seleksi relasi khusus. %ada bab ini sebaiknya kita

menyediakan database dan tabel nya terlebih dahulu untuk merelasikan antar tabel.

+uatlah atabase dengan nama database  dokter

9emudian buatlah tabel dengan intetas berikut 

• !bC&6e&iali&

%ield 0i6e (anDang K#nci Key$

9dJspesialis char 3 %rimari key spesialis varchar 3A

• !bCdo)!e"

%ield 0i6e (anDang K#nci Key$

9dJdokter char 3 %rimarykey "amaJdokter varchar 3A

9dJspesialis char 3 Foreign9ey telepon varchar 2A

seH char 2

• !bCDaga

%ield 0i6e (anDang K#nci Key$

9dJdokter 'har 3 Foreign9ey hari 8archar 2A

amJmulai /ime amJselesai time

(33)

9emudian isilah data pada setiap tabel seperti dibaah ini 

• !bC&6e&iali& KdC&6e&iali& &6e&iali& #MM okter #mum LM %enyakit alam 5"9 5nak 9! 9andungan +D +edah /! antung

/D/ /elinga Didung dan /enggorokan !6! !igi

S*F Saraf   9L/ 9ulit M5/ Mata

(34)

tbJdokter

KdCdo)!e" NamaCdo)!e" KdC&6e&iali& !ele6on Se

2 r. +oi /rimoyo #MM 222222222 % 0 r. 6rfan nurhuddin LM 000000000 % 3 r. Musanto +D 333333333 % : r. umar /! ::::::::: % A r. 6brahim 9! AAAAAAAAA % E r.a&i S*F EEEEEEEEE % < r. ridan M5/ <<<<<<<<< %  r. fa&ar 5"9  % P r. mory #MM PPPPPPPPP % 2 r. serly +D  N 22 r. 'handra #MM 22222 % 20 r. bayha-i +D 00000 % 23 r.rina 5"9 33333 N 2: r.agus #MM :::::: % 2A r. andin 9! AAAAAA  2E r. labala +D EEEEEE % 2< r. fau7i +D <<<<<< % 2 r. neneng 9!  N

Referensi

Dokumen terkait

Ketiga faktor tersebut akan kita bahas dalam tutorial kali ini, dan karena kebutuhan menampilkan data sangat beragam, MySQL memiliki banyak opsi yang dapat

This chapter demonstrates how to access data—from the Web, in table format, CSV format, and JSON format—and then shape it using the Power Query editor before importing it into