• Tidak ada hasil yang ditemukan

d46b1 modul praktikum sistem basis data

N/A
N/A
Protected

Academic year: 2017

Membagikan "d46b1 modul praktikum sistem basis data"

Copied!
87
0
0

Teks penuh

(1)

PRAKTIKUM I

MENGGUNAKAN SOFTWARE DATABASE MySQL

A. LATAR BELAKANG

Banyak pilihan software yang dapat digunakan untuk belajar manajemen sistem basisdata, khususnya untuk membangun desain database secara konsep dan diimplementasikan secara fisik ke sebuah server database. Kecendrungan yang terjadi di masyarakat saat ini adalah bahwa sebuah software manajemen sistem basisdata tidak hanya hadir sebagai perangkat lunak untuk melakukan menajemen data (Create, Read, Update dan Delete) saja, namun harus terintegrasi juga dengan perangkat lunak untuk mendesain database secara konsep yang kemudian dapat digenerate secara fisik ke sebuah server database.

Software MySQL versi 5.0.20 sebagai software manajemen sistem basisdata telah hadir dengan berbagai kelebihannya, diantaranya adalah (a) lintas platform; (b) relatif tanpa biaya; (c) memiliki dukungan replikasi data secara real time; (d) mampu menangani banyak data dengan kecepatan tinggi (kapabilitas tinggi); (e) mudah diperoleh dan digunakan serta (f) dilengkapi dengan perangkat lunak pendukung untuk desain database secara konsep dan untuk keperluan pengoperasian dan administrasi server database MySQL. Dengan demikian pemilihan software MySQL sangat relevan digunakan dan dikuasai oleh mahasiswa, khususnya sebagai perangkat lunak untuk belajar manajemen sistem basisdata.

B. TUJUAN

Kompetensi yang diharapkan dapat tercapai setelah melakukan praktikum ini adalah mahasiswa dapat;

1. Melakukan instalasi software database MySQL versi 5.0.20 dan software MySQL GUI Tools versi 5.0 secara mandiri dengan baik dan benar

2. Melakukan troubleshooting dan testing koneksi pada komputer Server dan Client guna memastikan bahwa Server database MySQL telah aktif dan dapat digunakan secara bersama-sama dalam lingkup jaringan.

(2)

C. ALAT-ALAT DAN BAHAN YANG DIGUNAKAN

Praktikum ini membutuhkan ketersediaan alat-alat dan bahan praktikum berupa sejumlah perangkat keras (hardware) dan perangkat lunak (software). Hardware dan software yang dibutuhkan sebelum melakukan praktikum ini adalah;

1. Satu komputer yang akan digunakan sebagai Server dan sejumlah komputer yang digunakan sebagai Client dan terhubung dalam jaringan komputer baik dengan menggunakan kabel maupun dengan jaringan tanpa kabel (nirkabel)

2. LCD viewer sebagai media presentasi instruktur

3. Software berupa file MySQL-5.0.20.EXE untuk instalasi server database MySQL versi 5.0.20, dan File mysql-gui-tools-5.0-r8-win32.msi, untuk instalasi software pendukung (tools) pengoperasian dan administrasi server database MySQL,

D. TEORI DASAR

MySQL merupakan salah satu sistem manajemen database relasi (relational data system) yang bersifat terbuka (open source) dan dikembangkan pertama kalinya oleh Michael Wonty, David Axmark, dan Allan Larson pada tahun 1995, yang kemudian mendirikan perusahaan bernama MySQL-AB di Swedia. Tujuan awal dibuatnya program MySQL, adalah untuk mengembangkan aplikasi web yang akan digunakan oleh salah satu klien MySQL-AB. Memang pada saat itu, MySOL-AB adalah sebuah perusahaan konsultan database dan pengembang software.

Pada awalnya MySQL hanya berjalan di atas platform sistem operasi UNIX, bahkan hampir semua distro UNIX yang beredar saat ini telah memasukkan program MySQL sebagai database management system standartnya. Saat ini MySQL dapat pula berjalan di banyak sistem operasi, seperti Microsoft Windows, Solaris, FreeBSD, Mac OS X, HP UX, IBM AIX, SCO Unix dan sebagainya. Database MySQL memiliki kinerja, kecepatan proses, dan ketangguhan yang tidak kalah dibanding aplikasi database management system besar lainnya yang kornersil, seperti ORACLE, Sybase, Microsoft SQL Server, Unify, dan sebagainya. Dengan Open Source, MySOL berkembang menjadi salah satu sistem manajemen database relasi terkemuka yang diakui secara internasional.

(3)

Kecepatan Berdasarkan hasil pengujian, MySQL memiliki kecepatan paling baik dibanding database server lainnya. Hasil pengujian ini dapat kita lihat dalam http://www.mysql. Conirinfomiation/bencmarks.html. Kemudian, dengan adanya fitur tambahan Query Caching pada MySQL 4.0, kinerja query secara umum naik rata-rata 200% dari kinerja biasanya.

Mudah digunakan. Perintah-perintah dan aturan-aturan pada MySQL dan proses instalasinya relatif mudah digunakan.

Open Source. Dengan konsep ini siapa pun dapat berpartisipasi untuk mengernbangkan MySQL dan hasil pengembangan itu dirilis untuk konsumsi umurn atau untuk kornunitas Open Source.

Kapabilitas. MySOL telah diujicobakan untuk mengelola database dengan jumlah tabel 60.000 dan jumlah recordnya mencapai 5.000.000.000, dimana hasil uji coba tersebut berjalan dengan baik. Selain itu MySQL mendukung penggunaan index hingga 32 buah index per-tabelnya, sedangkan setiap indexnya terdiri dari 1 hingga 16 kolom kriteria.

Replikasi data. Dengan adanya fasilitas replikasi data ini, memungkinkan untuk dapat mempunyai beberapa database bayangan yang berasal dari satu database induk.  Biaya rendah (relatif gratis). Dapat menggunakan MySQL tanpa harus memikirkan

biaya lisensi selama mengikuti konsep Open Source/GNU Public Licences.

Konektifitas dan keamanan. MySQL mendukung dan menerapkan sistem keamanan dan izin akses tingkat lanjut (advanced permissions and secury system), termasuk dukungan pengamanan dengan cara pengacakan lapisan data (SSL transport layer encryption).

(4)

pendukung (tools) telah terpaket dengan baik dalam satu file instalasi. Software-software tersebut dapat di-download secara gratis di situs http://www.mysql.com.

Dua file instalasi yang dimaksud adalah MySQL-5.0.20.EXE dan file mysql-gui-tools-5.0-r8-win32.msi. File MySQL-5.0.20.EXE adalah file instalasi untuk server database MySQL versi 5.0.20. File mysql-gui-tools-5.0-r8-win32.msi, merupakan file instalasi software pendukung (tools) untuk keperluan pengoperasian dan administrasi server database MySQL, yang berisi program-program berikut;

 MySQL Administration  MySQL Migration Toolkit  MySQL Query Browser  MySQL System Tray Monitor  MySQL Workbench

Untuk dapat bekerja dengan database MySQL, diperlukan 2 hal pokok, yaitu mempunyai user login yang sah, serta sekumpulan hak akses. Pada pengoperasian pertama, setelah instalasi server database MySQL sukses dilakukan, kita mempunyai satu user login bernama root, dengan hak akses penuh dan merupakan level tertinggi dalam komunitas pengguna server database MySQL. Dengan user root tersebut, kita dapat melakukan apa saja, seperti membuat user baru beserta hak aksesnya, membuat dan menghapus objek-objek dalam MySQL atau yang lainnya.

E. LANGKAH-LANGKAH PRAKTIKUM 1. Instalasi Server Database MySQL

(5)

Gambar 1: File MySQL-5.0.20.EXE Pada Windows Explorer a. Lakukan double-click atau tekan Enter pada file MySQL-5.0.20.EXE

b. Click Next setelah layar Welcome to the Setup Wizard for MySQL Server 5.0 tampil c. Pilih salah satu tipe instalasi yang diinginkan, paling mudah pilih Typical, dan

kemudian tekan Next

Gambar 2: Pilihan Setup Type

(6)

Gambar 3: Konfirmasi Terakhir Sebelum Instalasi MySQL

e. Proses instalasi server database MySQL sedang berjalan. Tunggu beberapa saat hingga proses instalasi selesai.

Gambar 4: Proses Instalasi Server MySQL Sedang Berlangsung

(7)

Gambar 5: Akhir Proses Instalasi Server MySQL

g. Click Next pada form Welcome to the MySQL Server Instance Configuration Wizard, untuk melanjutkan proses konfigurasi server MySQL

h. Untuk proses konfigurasi yang paling mudah, pilih Standart Configuration, kemudian click Next

Gambar 6: Pilihan Proses Konfigurasi Server MySQL

(8)

Gambar 7: Pilihan Konfigurasi Server MySQL untuk Keperluan Sistem Windows

Gambar 8: Seting untuk Keperluan Keamanan

(9)

mencegah celah yang bisa digunakan oleh orang yang tidak bertanggungjawab masuk ke dalam server MySQL. Lanjutkan dengan menekan tombol Next.

k. Lakukan eksekusi konfigurasi dan pengaktifan server MySQL (start service MySQL), dengan cara click Execute.

Gambar 9: Konfirmasi Terakhir Sebelum Mengeksekusi Konfigurasi

l. Bila tidak ada kendala apapun, maka selesailah keseluruhan proses instalasi dan setting pada program MySQL 5.0.x. Click Finish untuk menuntaskan proses ini.

(10)

m. Cek service MySQL dengan cara click menu Start  Settings Control Panel double click pada Administrative Tools  double click pada Services. Jika status service dari MySQL adalah Started, maka server MySQL telah terinstal dan running/aktif di sistem.

Gambar 11: Service Status Server MySQL di Sistem Operasi Windows 2. Instalasi Software MySQL GUI Tools

a. Lakukan double-click atau tekan Enter pada file mysql-gui-tools-5.0-r8-win32.msi b. Click Next setelah layar Welcome to the Setup Wizard for MySQL Tools for 5.0

tampil

c. Pilih I accept the term in the license agreement, kemudian click Next.

(11)

d. Tentukan lokasi hasil instalasi dengan click Change …, kemudian click Next.

Gambar 13: Penentuan Tujuan Tempat/Folder Hasil Intalasi e. Untuk proses instalasi yang paling mudah, pilih Complete, kemudian click Next

(12)

Gambar 15: Konfirmasi Terakhir Proses Instalasi MySQL GUI Tools

g. Tunggu hingga proses instalasi selesai dikerjakan. Kemudian click Finish untuk mengakhiri proses instalasi

3. Login Ke Server MySQL

Sesi login ke server database MySQL dapat dilakukan dengan beberapa cara, baik dengan mode text maupun mode grafik (GUI). Cara pertama dapat dilakukan dengan memilih urutan menu Start Programs MySQL MySQL Server 5.0 MySQL Command Line Client. Dengan cara tersebut, kita akan login ke server database MySQL dengan mode text sebagai root (user tertinggi/administrator). Password yang dimasukkan adalah password root, kemudian tekan Enter. Jika proses autentifikasi user dan password diterima, maka di layar akan tampil prompt/shell mysql>, seperti pada gambar berikut;

(13)

Hal tersebut menunjukkan bahwa kita sedang login ke dalam server database MySQL. Jalan lain untuk dapat login ke server database MySQL, dapat dilakukan melalui DOS prompt. Pilih urutan menu Start Run, pada dialog Open ketik CMD, kemudian click OK

Gambar 17: Kotak Dialog Run Program Dalam Windows

Pindahkan direktori aktif ke direktori server MySQL, misalnya: C:\Program File\MySQL\MySQL Server 5.0\bin. Ketik perintah MySQL –u root –h localhost –p , kemudian masukkan password user root. Perintah tersebut menunjukkan bahwa kita akan login ke server database MySQL, dengan user root dan dari mesin localhost (di mesin yang sama, tempat server MySQL berada). Parameter –p adalah untuk meminta password.

Gambar 18: Prompt/Shell MySQL

(14)

Click OK, jika proses autentifikasi user name dan password diterima, maka di layar akan tampil form query browser sebagai berikut;

Gambar 19: Kotak Dialog Koneksi ke Server Dengan MySQL Query Browser

(15)
(16)

PRAKTIKUM II

MANAJEMEN USER (PENGGUNA) MySQL

A. LATAR BELAKANG

Tanggung jawab seorang administrator server database tidak hanya terbatas pada mempersiapkan server database supaya dapat dioperasikan dengan baik, akan tetapi seorang administrator juga dituntut untuk dapat membuat pengguna serta mengatur hak/izin aksesnya.

Pengaturan hak akses pengguna tidak hanya pada tataran hak login (otentifikasi) ke server, namun juga pengaturan hak akses sumber daya yang ada dalam server database (otorisasi). Pengaturan hak otorisasi bagi pengguna dapat dilakukan pada level database, objek table maupun view dan pada level kolom atau field. Penguasaan dalam hal pengelolaan pengguna server database beserta hak aksesnya mutlak dikuasai oleh seorang administrator server database.

B. TUJUAN

Kompetensi yang diharapkan dapat tercapai setelah melakukan praktikum ini adalah mahasiswa dapat;

1. Menjelaskan perbedaan antara hak otentifikasi dengan otorisasi bagi pengguna database MySQL

2. Menciptakan dan menghapus pengguna database MySQL

3. Memberikan dan menghapus hak akses pada level database, objek tabel dan kolom bagi pengguna database MySQL

C. ALAT-ALAT DAN BAHAN YANG DIGUNAKAN

Praktikum ini membutuhkan ketersediaan alat-alat dan bahan praktikum berupa sejumlah perangkat keras (hardware) dan perangkat lunak (software). Hardware dan software yang dibutuhkan sebelum melakukan praktikum ini adalah;

(17)

2. LCD viewer, whiteboard dan spidol sebagai media presentasi instruktur

3. Software aplikasi MySQL Server 5.0 keatas, MySQL Query Browser dan MySQL Administrator.

D. TEORI DASAR

Seorang user atau pengguna MySQL agar dapat memanfaatkan sumber daya data yang tersedia, tidak hanya cukup memiliki user login dan password saja (otentifikasi). Namun seorang user atau pengguna MySQL juga harus memiliki hak akses (otorisasi) terhadap sebagian atau keseluruhan sumber daya data yang ada dalam sebuah server MySQL. Seorang administrator database MySQL, dituntut untuk tidak hanya bisa melakukan instalasi software MySQL dan memastikan server dapat bekerja dengan baik. Lebih dari itu, kita juga harus dapat menciptakan pengguna-pengguna baru serta mengatur hak aksesnya.

Perintah GRANT digunakan untuk membuat user baru beserta izin aksesnya. Sedangkan perintah REVOKE digunakan untuk menghapus izin akses user. Perintah REVOKE tidak menghapus seorang user secara permanen, namun hanya sekedar menghapus izin akses terhadap sumber daya yang ada dalam server MySQL. Dengan kata lain, bila seorang user telah dihapus izin aksesnya dengan perintah REVOKE, dia tetap dapat masuk (login) ke dalam MySQL, walaupun tidak dapat berbuat apa-apa. Untuk menghapus user secara permanen, dapat digunakan perintah DELETE.

Bentuk umum perintah GRANT:

GRANT <jenis akses> ON <nama database> TO <nama user> IDENTIFIED BY <"password"> [WITH GRANT <pilihan akses>]

Bentuk umum perintah REVOKE:

REVOKE <jenis akses> ON <nama database> FROM <nama user> Bentuk umum perintah DELETE:

(18)

E. LANGKAH-LANGKAH PRAKTIKUM 1. Menciptakan Pengguna Baru

C:\Program Files\MySQL\MySQL Server 5.0\bin\>mysql -u root -h localhost -p  Enter password: rootpassword

mysql>GRANT ALL PRIVILEGES ON *.* TO ‘sinta’@’localhost’ ->IDENTIFIED BY ‘passwordsembarang’

->WITH GRANT OPTION;

mysql>GRANT ALL PRIVILEGES ON *.* TO ‘santi’@’%’ ->IDENTIFIED BY ‘passwordsembarang’

->WITH GRANT OPTION;

mysql>GRANT ALL PRIVILEGES ON *.* TO ‘nasti’ ->IDENTIFIED BY ‘passwordsembarang’

->WITH GRANT OPTION;

mysql>GRANT USAGE ON *.* TO ‘andi’@’local host’ ->IDENTIFIED BY ‘passwordsembarang’;

Penjelasan

 Perintah pertama adalah untuk membuat user baru dengan nama sinta dengan level akses sebagai administrator (privileges ALL), yang berarti dapat mengakses SEMUA database yang ada di dalam server (ON *.*) selama lokasi pengakses tersebut dilakukan pada mesin lokal (sinta@localhost). Lokasi pengakses bisa menggunakan alamat IP (Internet Protocol Address) dan nama domain (domain name). Perintah WITH GRANT OPTION memberikan wewenang kepada sinta untuk dapat memberikan izin akses (GRANT) kepada user-user lainnya.

 Untuk perintah kedua, akses dapat dilakukan dari mesin mana saja di seluruh dunia selama user tersebut dapat melakukan koneksi ke server MySQL (TO santi@'%'). Perintah TO santi@'%' bisa juga ditulis tanpa tanda'%', seperti pada perintah ketiga (TO nasti)

 Dengan GRANT USAGE, si andi mempunyai level akses sebagai user biasa dengan tidak memiliki izin akses apapun, tetapi dia tetap dapat login dengan user dan password ke dalam MySQL. User seperti andi ini disebut juga Dummy User/Blank User.

Selanjutnya perhatikan tabel user di dalam database mysql, apakah user-user yang dibuat sudah terdaftar?. Apa yang tampil dari perintah-perintah pada latihan berikut,

a. Apa yang nampak setelah perintah berikut; mysql>USE mysql;

(19)

b. Kemudian apa yang tampil setelah perintah berikut;

mysql>SELECT user, select_priv, insert_priv, update_priv, delete_priv, create_priv ->drop_priv FROM user;

c. Cabut hak akses dari user santi; apa yang terjadi? mysql>REVOKE ALL ON *.* FROM santi@localhost

mysql>SELECT user, select_priv, insert_priv, update_priv, delete_priv, create_priv ->drop_priv FROM user;

d. Lakukan penghapusan terhadap user santi; apa yang berubah? mysql>DELETE FROM user WHERE user=’ santi’;

mysql>SELECT user, select_priv, insert_priv, update_priv, delete_priv, create_priv ->drop_priv FROM user;

mysql>QUIT;

2. Penghapusan Izin Akses Pengguna

Guna memperdalam pemahaman kita dalam melakukan penghapusan izin/hak akses terhadap pengguna (user), lakukan bebera langkah berikut;

a. Berikanlah izin akses penuh terhadap user anwar terhadap seluruh table dalam database mydatabase;

C:\Program Files\MySQL\MySQL Server 5.0\bin\>mysql -u root -h localhost -p Enter password: rootpassword

mysql>GRANT ALL PRIVILEGES ON mydatabase.* TO anwar@localhost; b. Lakukan penghapusan hak akses SELECT dan INSERT bagi user anwar;

mysql>REVOKE SELECT, INSERT ON mydatabase.* FROM anwar@localhost; c. Lakukan penghapusan hak akses CREATE dan DROP bagi user anwar;

mysql>REVOKE CREATE, DROP ON mydatabase.* FROM anwar@localhost; d. Lakukan penghapusan seluruh hak akses bagi user anwar;

mysql>REVOKE ALL PRIVILEGES ON mydatabase.* FROM anwar@localhost;

3. Pemberian dan Pembatasan Izin Akses Pengguna

Beberapa perintah GRANT berikut digunakan untuk memberikan atau menghapus izin akses pengguna, yang meliputi SELECT, INSERT, UPDATE dan DELETE terhadap database tertentu. Lakukan perintah-perintah dalam latihan berikut;

a. Apa yang terjadi setelah perintah berikut;

(20)

Enter password: rootpassword

mysql>CREATE DATABASE mydatabase;

mysql>GRANT SELECT, INSERT,UPDATE, DELETE ON mydatabase ->TO santi@localhost;

mysql>UPDATE user SET password=password(‘passwordsembarang’) ->WHERE user=’santi’;

b. Lihatlah tabel hak akses user terhadap table (GRANT TABLES), dari hasil perintah berikut, apa yang nampak?

mysql>SELECT user, select_priv, insert_priv, update_priv, delete_priv, create_priv ->FROM db WHERE user=’santi’;

c. Lakukan perintah berikut, apakah santi dapat membuat tabel? mysql>QUIT;

C:\Program Files\MySQL\MySQL Server 5.0\bin\>mysql -u santi -h localhost -p  Enter password: passwordsembarang

mysql>USE mydatabase; mysql>CREATE TABLE mytable1

->(noid INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, ->nama VARCHAR(35) NOT NULL);

d. Berikanlah hak CREATE dan DROP TABLE untuk user santi, dengan perintah berikut; mysql>QUIT;

C:\Program Files\MySQL\MySQL Server 5.0\bin\>mysql -u root -h localhost -p  Enter password: rootpassword 

mysql>GRANT CREATE, DROP ON mydatabase TO santi@localhost mysql>CREATE TABLE mytable1

->(noid INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, ->nama VARCHAR(35) NOT NULL);

mysql>SHOW TABLES;

e. Mengapa si santi dapat melakukan penghapusan tabel dengan perintah berikut? mysql>QUIT;

(21)

a. Berikan hak akses sembarang database kepada user anwar dan berikan password dengan perintah berikut;

C:\Program Files\MySQL\MySQL Server 5.0\bin\>mysql -u root -h localhost -p  Enter password: rootpassword

mysql>GRANT USAGE ON *.* TO anwar@localhost

->IDENTIFIED BY ‘passwordsembarang’; mysql>QUIT;

b. Buatlah table dengan nama mytable1 pada database mydatabase dengan user login santi;

C:\Program Files\MySQL\MySQL Server 5.0\bin\>mysql -u santi -h localhost -p  Enter password: passwordsembarang c. Apa maksud dari perintah-perintah berikut?;

mysql>GRANT

mysql>SELECT host, db, user, table_name, grantor ->FROM table_priv WHERE user=’anwar’;

e. Lihatlah hak akses yang dimiliki oleh user anwar, dengan perintah berikut; mysql>SELECT host, db, user, table_priv, column_priv

->FROM table_priv WHERE user=’anwar’;

f. Tampilkan nama-nama kolom yang dapat diakses oleh user anwar, dengan perintah berikut;

(22)

g. Apa saja yang dapat dilakukan oleh user anwar terhadap table mytable1 dalam database mydatabase?, ikuti perintah-perintah berikut;

mysql>QUIT;

C:\Program Files\MySQL\MySQL Server 5.0\bin\>mysql -u anwar -h localhost -p Enter password: passwordsembarang

mysql>USE mydatabase;

mysql>SELECT * FROM mytable1; mysql>INSERT INTO mytable1

->VALUES (‘1’, ‘AISYAH’,’MALANG’,’1975-8-16’,’P’,’PANJAITAN 17’); h. Sukseskah perintah terebut? Mengapa demikian? Bagaimana dengan perintah berikut?

mysql>SELECT * FROM mytable1;

i. Lakukan perubahan data dengan perintah UPDATE, sebagaimana perintah berikut; mysql>UPDATE mytable1 SET nama=’AISYAH KAMILA’ WHERE nip=‘1’; Apa yang terjadi? Mengapa demikian?

j. Lakukan penghapusan table mytable1, sebagaimana perintah berikut; mysql>DELETE FROM mytable1;

Apa yang terjadi? Mengapa demikian?

Penjelasan

 Kegagalan yang terjadi ketika menjalan perintah UPDATE, DELETE dan DROP, disebabkan user anwar tidak diberi hak akses tersebut pada mytable1 dalam

 Bila akan memberikan hak penuh bagi user anwar terhadap seluruh table dalam database mydatabase, dapat dilakukan dengan perintah berikut;

mysql>GRANT ALL PRIVILEGES ->ON mydatabase.*

->TO anwar@localhost;

(23)

komputemya berbeda? Bisakah melakukan pembatasan hanya pada komputer tertentu saja yang dapat mengakses? Perhatikan perintah GRANT berikut;

mysql>GRANT CREATE, DROP ->ON mydatabase.*

->TO anwar@localhost;

Perintah TO sebenamya terdiri dari dua bagian, yaitu nama user dan alamat lokasi pengakses. Pada perintah TO di atas, kita memberikan izin akses kepada user anwar dengan alamat mesin localhost. Alamat ini bisa juga kita isi dengan alamat IP (Intemet Protocol), misalnya 127.0.0.1 atau alamat IP apa saja yang dimilik, sehingga perintah di atas menjadi:

C:\Program Files\MySQL\MySQL Server 5.0\bin\>mysql –h 127.0.0.1 -u anwar -p Atau

C:\Program Files\MySQL\MySQL Server 5.0\bin\>mysql –h www.dimanasaja.com -u anwar –p

F. TUGAS

a. Daftarkan user-user berikut beserta hak aksesnya

No. Nama User Pswd Database & Table All Select Insert Hak AksesUpdate Delete Create Drop 1 Andi 11111 *.*

2 Amir 22222 ujimhsdb.dosen √ √ √ √ 3 Ahmad 33333 ujimhsdb.* √

(24)

5 Ana 55555 *.* √

b. Rubahlah hak akses user-user berikut

No. Nama User Pswd Database & Table All Select Insert Hak AksesUpdate Delete Create Drop

1 Andi 11111 *.* √ √ √

2 Amir 22222 ujimhsdb.dosen √ √

3 Ahmad 33333 ujimhsdb.* √ √ √ √ √ 4 Anik 44444 ujimhsdb.ujian √ √ √ √

5 Ana 55555 *.* √ √

c. Daftarkan user-user berikut beserta hak aksesnya

No. Nama User Pswd Database & Table All Select Insert Hak AksesUpdate Delete Create Drop 1 Budi AAAA *.*

2 Badu BBBB ujimhsdb.hsl_ujian √ √ √ 3 Bimbim CCCC ujimhsdb.* √

4 Badrus EEEE ujimhsdb.dosen √ √ 5 Bobi FFFF *.* √

d. Rubah hak akses user-user berikut

No. Nama User Pswd Database & Table Hak Akses

All Select Insert Update Delete Create Drop

1 Budi AAAA *.* √ √ √ √

2 Badu BBBB ujimhsdb.hsl_ujian √ √ √

3 Bimbim CCCC ujimhsdb.* √ √ √ 4 Badrus EEEE ujimhsdb.dosen √ √ √ √

(25)

PRAKTIKUM III

TIPE DATA DAN OPERATOR MySQL

A. LATAR BELAKANG

Pemahaman yang baik tentang jenis dan karakteristik tipe data dan operator yang ada, akan sangat membantu pengguna dalam melakukan query data pada software aplikasi server database. Tanpa pemahaman yang memadai tentang hal tersebut dapat berakibat pada ketidakvalidan data yang dihasilkan dari sebuah perintah query.

MySQL sebagai software server database, juga mengenal berbagai macam jenis tipe data dan operator. Masing-masing tipe data dan operator memiliki karakteristik yang berbeda dengan lainnya. Guna membantu peningkatan pemahaman mahasiswa dalam menggunakan berbagai macam tipe data dan operator yang ada dalam MySQL, diperlukan tindakan uji coba dalam praktikum berikut ini.

B. TUJUAN

Kompetensi yang diharapkan dapat tercapai setelah melakukan praktikum ini adalah mahasiswa dapat menjelaskan dan menggunakan berbagai macam tipe data dan operator MySQL dalam query data dengan baik.

C. ALAT-ALAT DAN BAHAN YANG DIGUNAKAN

Praktikum ini membutuhkan ketersediaan alat-alat dan bahan praktikum berupa sejumlah perangkat keras (hardware) dan perangkat lunak (software). Hardware dan software yang dibutuhkan sebelum melakukan praktikum ini adalah;

1. Satu komputer yang akan digunakan sebagai Server dan sejumlah komputer yang digunakan sebagai Client dan terhubung dalam jaringan komputer baik dengan menggunakan kabel maupun dengan jaringan tanpa kabel (nirkabel)

(26)

D. TEORI DASAR

1. Tipe Data Dalam MySQL

Secara umum jenis atau tipe data yang dikenal dalam MySQL dibagi menjadi 4 jenis, yaitu:

Numeric Values, yaitu angka atau bilangan.  String/Character Values, yaitu teks atau karakter.  Date and Time Values, yaitu tanggal dan waktu.  NULL

Numeric Values, adalah angka atau bilangan seperti 10; 123; 100.50; -10; 1.2E+17; 2.7e-11; dan sebagainya. Jenis data bilangan dibagi lagi menjadi dua, yaitu Bilangan Bulat (integer) dan Bilangan Pecahan (Floating point). Kedua jenis bilangan ini dapat bernilai positif (+) dan juga negatif (-). Jika bilangan tersebut menggunakan tanda (+) atau (-), maka disebut SIGNED. Sebaliknya, bila tanpa tanda apapun disebut UNSIGNED. Karena tanda (+) dapat diabaikan penulisannya, maka pada bilangan yang bernilai positif disebut juga unsigned.

Character Values, adalah semua karakter (atau teks) yang penulisannya diapit oleh tanda kutip, baik kutip tunggal maupun kutip ganda. Untuk angka yang ditulis dengan tanda kutip akan dianggap sebagai karakter atau string (bukan Numeric Values). Adapun contoh penulisan teks yang benar adalah sebagai berikut:

 "Jl. Surabaya No. 34"  'Kota Malang'

 "Saya suka masakan ini"  ‘123456'

 "Saya akan berkunjung ke rumahmu pada hari Jum'at depan"

Date and Time Values, format standar (default) penulisan tanggal adalah "Tahun-Bulan-Tanggal" (“YYYY-MM-DD”). Misalkan untuk 22 Januari 2002, dituliskan "2002-01-22". Untuk menarnpilankannya, kita bisa menggunakan fungsi DATE_FORMAT() yang dapat disesuaikan dengan kebutuhan kita. Untuk penulisan waktu, formatnya adalah "Jam:Menit:Detik" (“HH:MM:SS”). Contoh, "13:55:07". Data tanggal dan waktu bisa digabung penulisannya, menjadi “2002-01-22 13:55:07”.

(27)

contoh, selama melakukan survei mengenai berapa jumlah pengguna sistem operasi Linux dan Windows di Indonesia, data pastinya belum dapat diketahui sebelum survei tersebut dilakukan secara tuntas. Oleh sebab itu, data tersebut bisa diwakili dengan NULL, alias belum diketahui atau kosong.

2. Tipe Data Kolom Pada MySQL

Tipe data kolom merupakan rincian dari tipe data yang diterapkan pada setiap kolom/field sebuah tabel. Penentuan tipe data kolom, dapat dilakukan saat pembuatan tabel dengan perintah CREATE TABLE. Adapun tipe data kolom dapat dikelompokkan sebagai berikut:

2.1 Tipe Data Kolom Numerik dan Atributnya

Tabel 1: Tipe Data Kolom Numerik Tipe Data

Bilangan bulat dengan kisaran nilai: SIGNED: -32768 s/d 32767

Bilangan bulat dengan kisaran nilai: SIGNED: -8388608 s/d 8388607

(28)

Tipe Data Kolom

Bentuk Penulisan Jangkauan Nilai Ukuran

DECIMAL DECIMAL [(M,D)] Bilangan desimal, dengan nilai M Byte

tergantung pada besaran M dan D. M Byte 2.2 Tipe Data Kolom String/Character

Tabel 2: Tipe Data Kolom String/Character Tipe Data

Kolom Bentuk Penulisan Keterangan Ukuran

CHAR CHAR(M) Data string dengan lebar data yang tetap(M).Maksimum lebar data 255 karakter M Byte

VARCHAR VARCHAR(M)

Data string dengan lebar data yang bervariasi(M). Maksimum lebar data 255 karakter

M Byte

2.3 Tipe Data Kolom BLOB dan TEXT

Tabel 3: Tipe Data Kolom BLOB dan Text

Jenis Kolom Keterangan Ukuran

TINYBLOB Data binary dengan lebar data maksimum 255 karakter M+1 Byte BLOB Data binary dengan lebar data maksimum 65.535 karakter M+2 Byte MEDIUMBLOB Data binary dengan lebar data maksimum 16.777.215 karakter M+3 Byte

LONGBLOB Data binary dengan lebar data maksimum 4.294.967.295

karakter M+4 Byte

TINYTEXT Data text dengan lebar data maksimum 255 karakter M+1 Byte TEXT Data text dengan lebar data maksimum 65.535 karakter M+2 Byte MEDIUMTEXT Data text dengan lebar data maksimum 16.777.215 karakter M+3 Byte LONGTEXT Data text dengan lebar data maksimum 4.294.967.295 karakter M+4 Byte Catatan: M merupakan nilai maksimum yang diperkenankan dengan kisaran 1 s/d 255.

2.4 Tipe Data Kolom ENUM dan SET

ENUM (enumeration) dan SET (himpunan) adalah tipe data khusus. Kolomnya harus diisi dengan nilai pilihan yang sudah ditentukan pada saat deklarasi ENUM dan SET. Perbedaan diantara kedua tipe data tersebut adalah, pada ENUM hanya bisa dipilih salah satu dari pilihan yang ada. Sedangkan pada SET, dapat dipilih satu atau lebih dari pilihan yang ada. Bentuk umum pendeklarasian kedua tipe data tersebut adalah sebagai berikut;

(29)

Jenis Kolom Bentuk Dasar Keterangan ENUM ENUM(nilai1, nilai2, …..,

nilaiN)

Hanya dapat menampung 1 data saja dari pilihan data yang ada atau NULL, dengan jumlah pilihan maksimum 65.535 pilihan

Beberapa contoh pendeklarasian tipe data ENUM adalah sebagai berikut;  Jenis_Kelamin ENUM(“L”, “P”)

 Status_Pernikahan ENUM(“Menikah”, ”Lajang”, ”Janda”, ”Duda”)  Status_Karyawan ENUM(“Karyawan Tetap”, “Karyawan Honorer”)  Ukuran_Baju ENUM(“S”, ”M”, ”L”, ”XL”)

Pada ENUM, kita hanya boleh memilih salah satu dari pilihan Jenis_Kelamin (“L” atau “P”), Status_Pernikahan (“Menikah”, “Lajang”, “Janda” atau “Duda”), dan seterusnya. Pada SET kita bisa memilih minimal satu dari pilihan yang ada. Misal pada Menu_Pilihan (seperti contoh tipe data SET), kita bisa memilih Nasi Goreng saja, bisa juga Mie Rebus dan Juice Apokat, atau bahkan kita pilih sernuanya (“Nasi Goreng”, “Mie Rebus”, “Juice Apokat”, “Ayam Bakar”). Contoh pendeklarasian Set adalah sebagai berikut :

 Menu_Pilihan SET(“Nasi Goreng”, “Mie Rebus”, “Juice Apokat”, “Ayam Bakar”)  Merek_Mobil SET(“Mercedes Benn”, “BMW”, “Audi”, "Toyota”, “Mitsubishi”,

”Suzuki”)

 Hobby SET(“Makan”, “Tidur”, “Olah Raga”, “Travelling”, “Baca”)

2.5 Tipe Data Kolom Date dan Time

Tipe data kolom Date dan Time digunakan untuk menampung data tanggal dan jam. Pada MySQL data tanggal dan jam, dapat pada beberapa tipe data dalam kelompok tipe data Date and Time. Berikut ini erdpat beberapa tipe data Date and Time beserta format penulisannya;

(30)

Software database server MySQL juga mengenal beberapa jenis operator sebagai penghubung suatu ekpresi matematis, logika atau perbandingan. Operator-operator pada MySQL berdasarkan fungsinya dapat dikategorikan sebagai berikut:

3.1 Operator Logika

Tabel 5: Operator Logika

Operator Fungsi Contoh

NOT atau ! Sebagai NEGASI (bukan) dari suatu nilai

NOT Perempuan atau !Perempuan

OR atau ||

ATAU, akan bernilai benar bila salah satu atau kedua ekspresi adalah benar.

Buah=”Jambu” OR Buah=”Mangga”

+ Melakukan penjumlahan pada operasi matematika - Melakukan pengurangan pada operasi matematika * Melakukan perkalian pada operasi matematika

/ Melakukan pembagian pada operasi matematika

% Melakukan proses modulus (mencari sisa bagi) pada operasi matematika

3.3 Operator Pembanding

(31)

Operator Fungsi Contoh

!= atau <> Tidak sama dengan

Nama!=”anwar” Harga<>100 3!=2

IS NOT NULL Apakah nilai tidak NULL Nama IS NOT NULL IS NULL Apakah nilai NULL Nama IS NULL BETWEEN …

AND Apakah suatu nilai berada diantara nilai

Harga BETWEEN 150 AND 500

IN Apakah suatu nilai berada diantara nilai pilihan yang ada

Nama IN (“Anwar”, “Amir”)

NOT IN Apakah suatu nilai tidak berada diantara nilai pilihan yang ada Nama NOT IN (“Anwar”,“Amir”

LIKE Apakah suatu nilai memiliki kriteria nilai yang ada Nama LIKE “An%”

NOT LIKE Apakah suatu nilai tidak memiliki kriteria nilai yang ada

Nama NOT LIKE “An%”

REGEXP Nilai menjadi benar bila kedua nilai tersebut sama

a REGEXP b

NOT REGEXP Nilai menjadi benar bila kedua nilai tersebut tidak sama a NOT REGEXP b

<=> Nilai menjadi benar bila kedua nilai tersebut sama a <=> b

4. Urutan Prioritas Operator

Memahami urutan prioritas operator, akan sangat membantu kita dalam penulisan perintah-perintah MySQL, sehingga dalam menampilkan data sesuai dengan yang kita harapkan. Adapun urutan prioritas operator adalah sebagai berikut;

(32)

Urutan

Guna membantu pemahaman kita dalam menggunakan berbagai macam operator dan tipe data, lakukan beberapa perintah query berikut ini;

a. Kesimpulan apa yang dapat diambil dari penggunaan operator aritmatika berikut? mysql>SELECT 10 + 20, 15.4 + 13.2, “24JAM” + “30HARI”,

->“12 BULAN” + “1 TAHUN”, “My” + “SQL”; mysql>SELECT 10 - 20, 15.4 - 13.2, “24JAM” - “30HARI”, ->“12 BULAN” - “1 TAHUN”, “My” - “SQL”, -(7 - 5); mysql>SELECT 20 % 2, 15.4 % 13.2, -25 % 4, 1 / 0;

b. Kesimpulan apa yang dapat diambil dari penggunaan operator pembanding berikut? mysql>USE mysql;

mysql>SELECT “a” > “A”; mysql>SELECT 10 <= 20;

mysql>SELECT user FROM user WHERE user != “anto”; mysql>SELECT user FROM user WHERE user IS NOT NULL; mysql>SELECT 110 BETWEEN 100 AND 500;

mysql>SELECT user FROM user WHERE user NOT LIKE “a%”; mysql>SELECT user FROM user WHERE user IN (“anto”, “andi”);

(33)

->tmp_lahir VARCHAR(35) NOT NULL,

->tgl_lahir DATE NULL DEFAULT “0000-00-00”, ->alamat VARCHAR(50) NOT NULL,

->kota VARCHAR(35) NOT NULL);

d. Isilah table teman dengan data sebagai berikut;

Tabel 9: Data Table Teman

(34)

Perintah untuk menambahkan data pada table teman, adalah sebagai berikut, mysql>INSERT INTO teman VALUES(“1”, “Ahmad Subhan”, “L” “Medan”, ->“1977-09-29”, “Jl. Arjono 123”, “Medan”); dan seterusnya.

Ulangi dan sesuaian perintah tersebut untuk menambahkan data lain pada table teman e. Tampilkan seluruh data teman;

mysql>SELECT * FROM teman;

f. Tampilkan seluruh data teman untuk field noid, nama, tempat lahir dan tanggal lahir; mysql>SELECT noid, nama, tmp_lahir, tgl_lahir FROM teman;

g. Tampilkan data teman untuk field noid, nama, tempat lahir dan tanggal lahir hanya untuk jenis kelamin perempuan (“P”);

mysql>SELECT noid, nama, tmp_lahir, tgl_lahir FROM teman WHERE kelamin=”P”;

h. Tampilkan data teman untuk field noid, nama, tempat lahir dan tanggal lahir hanya untuk jenis kelamin laki-laki (“L” atau NOT “P”);

mysql>SELECT noid, nama, tmp_lahir, tgl_lahir FROM teman ->WHERE NOT kelamin=”P”; atau

mysql>SELECT noid, nama, tmp_lahir, tgl_lahir FROM teman ->WHERE kelamin!=”P”; atau

mysql>SELECT noid, nama, tmp_lahir, tgl_lahir FROM teman ->WHERE kelamin=”L”;

i. Tampilkan data teman yang lahir bukan di Malang;

mysql>SELECT * FROM teman WHERE NOT tmp_lahir=”Malang”; atau mysql>SELECT * FROM teman WHERE tmp_lahir!=”Malang”;

j. Tampilkan data teman yang lahir di Malang atau di Surabaya atau di Bogor; mysql>SELECT * FROM teman

->WHERE tmp_lahir IN (”Malang”, “Surabaya”, “Bogor”); atau mysql>SELECT * FROM teman

->WHERE tmp_lahir=”Malang” OR tmp_lahir=“Surabaya” ->OR tmp_lahir= “Bogor”;

k. Tampilkan data teman yang lahir bukan di Malang, Surabaya atau Bogor; mysql>SELECT * FROM teman

(35)

->WHERE tmp_lahir!=”Malang” AND tmp_lahir!=“Surabaya” ->AND tmp_lahir!=“Bogor”;

l. Tampilkan data teman yang lahir antara 01-01-1973 hingga 31-12-1977, urut tanggal lahir;

mysql>SELECT * FROM teman

->WHERE tgl_lahir BETWEEN “1973-01-01” AND “1977-12-31” ->ORDER BY tgl_lahir;

m. Tampilkan data teman yang lahir antara 01-01-1973 hingga 31-12-1977 dan berjenis kelamin laki-laki (L), urut nama;

mysql>SELECT * FROM teman

->WHERE tgl_lahir BETWEEN “1973-01-01” AND “1977-12-31” ->AND kelamin=”L” ORDER BY nama;

n. Tampilkan data teman yang namanya berawalan “a” dengan tidak membedakan hurup kapital, urut nama;

mysql>SELECT * FROM teman WHERE nama LIKE “a%” ORDER BY nama; p. Tampilkan data teman yang namanya berakhiran “a” dengan tidak membedakan hurup

kapital, urut nama;

mysql>SELECT * FROM teman WHERE nama LIKE “%a” ORDER BY nama; q. Tampilkan data teman yang namanya mengandung “n” dengan tidak membedakan

hurup kapital, urut nama;

mysql>SELECT * FROM teman WHERE nama LIKE “%n%” ->AND kelamin=”L” ORDER BY nama;

r. Tampilkan data teman yang namanya bukan berakhiran “n” dan bukan berakhiran “a” dengan tidak membedakan hurup kapital, urut nama;

mysql>SELECT * FROM teman WHERE nama NOT LIKE “%n” ->AND nama NOT LIKE ”%a” ORDER BY nama;

t. Tampilkan data teman untuk field noid, nama dan alamat untuk data yang beralamat NULL, urut nama;

mysql>SELECT noid, nama, alamat FROM teman WHERE alamat IS NULL ->ORDER BY nama;

u. Tampilkan data teman untuk field noid, nama dan alamat untuk data yang tidak beralamat NULL, urut nama;

(36)

->ORDER BY nama;

v. Tampilkan data teman untuk data yang namanya berakhiran “a”; mysql>SELECT * FROM teman WHERE nama REGEXP “a$”;

Penjelasan

 Perintah SELECT digunakan untuk menyeleksi data yang akan ditampilkan. Data yang diseleksi untuk ditampilkan dapat berupa hasil ekspresi matematis, logika, pembandingan maupun data yang berasal dari objek-objek dari database seperti TABLE ataupun VIEW.

 Bentuk umum dari perintah SELECT adalah sebagai berikut; SELECT

[ALL | DISTINCT | DISTINCTROW ] [HIGH_PRIORITY]

[STRAIGHT_JOIN]

[SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT] [SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] select_expr, ...

[INTO OUTFILE 'file_name' export_options | INTO DUMPFILE 'file_name']

[FROM table_references [WHERE where_definition]

[GROUP BY {col_name | expr | position} [ASC | DESC], ... [WITH ROLLUP]] [HAVING where_definition]

[ORDER BY {col_name | expr | position} [ASC | DESC] , ...]

[LIMIT {[offset,] row_count | row_count OFFSET offset}]

(37)

PRAKTIKUM IV

FUNGSI BAWAAN (BUILD IN FUNCTION) MySQL

A. LATAR BELAKANG

Pemahaman yang baik tentang jenis dan karakteristik berbagai fungsi bawaan (build in function) yang ada pada MySQL, akan sangat membantu pengguna dalam melakukan query data. MySQL sebagai software server database, juga memiliki berbagai macam fungsi bawaan seperti fungsi-fungsi string, numerik, tanggal dan waktu hingga fungsi seleksi kondisi. Masing-masing fungsi memiliki karakteristik dan hasil yang berbeda dengan lainnya.

Guna membantu peningkatan pemahaman mahasiswa dalam menggunakan berbagai macam fungsi yang ada dalam MySQL, diperlukan tindakan uji coba dalam praktikum berikut ini.

B. TUJUAN

Kompetensi yang diharapkan dapat tercapai setelah melakukan praktikum ini adalah mahasiswa dapat menjelaskan dan menggunakan berbagai macam fungsi bawaan (build in function) MySQL dalam query data.

C. ALAT-ALAT DAN BAHAN YANG DIGUNAKAN

Praktikum ini membutuhkan ketersediaan alat-alat dan bahan praktikum berupa sejumlah perangkat keras (hardware) dan perangkat lunak (software). Hardware dan software yang dibutuhkan sebelum melakukan praktikum ini adalah;

1. Satu komputer yang akan digunakan sebagai Server dan sejumlah komputer yang digunakan sebagai Client dan terhubung dalam jaringan komputer baik dengan menggunakan kabel maupun dengan jaringan tanpa kabel (nirkabel)

(38)

D. TEORI DASAR

Fungsi merupakan sekumpulan perintah/instruksi untuk menghasilkan sebuah nilai, dengan atau tanpa melewatkan parameter. Pada MySQL telah terdapat sekumpulan fungsi-fungsi bawaan, yang dapat digunakan dalam melakukan perintah-perintah query yang termasuk dalam kelompok Data Manipulation Statemen (DMS). Selain itu sejak MySQL versi 5.0, MySQL telah dilengkapi pula dengan kemampuan membuat objek fungsi yang didefinisikan oleh pemakai sesuai keperluannya. Beberapa fungsi-fungsi bawaan dapat dikelompokkan sebagai berikut;

4. Fungsi String

ASCII(str), merupakan fungsi yang menghasilkan nilai numerik berupa kode ASCII dari parameter character/string (str) yang disertakan.

BIN(n), adalah fungsi yang menghasilkan nilai string berupa data biner dari parameter nilai numerik (n) yang disertakan.

CHAR(n1[, n2, . . . ]), fungsi yang menghasilkan sekumpulan character dari parameter kode ASCII (n1[,n2, . . .]) yang disertakan.

CHAR_LENGTH(str), menghasilkan nilai numerik berupa panjang dari parameter string (str) yang disertakan.

CONCAT(str1, str2[, str3, . . . . ]), fungsi yang menghasilkan nilai string berupa hasil penggabungan dari parameter-parameter string (str1, str2[, str3, . . . . ]) yang disertakan.

CONCAT_WS(separator, str1, str2[, str3, . . . . ]), fungsi yang menghasilkan nilai string berupa hasil penggabungan dari parameter-parameter string (str1, str2[, str3, . . . . ]) dan dipisahkan oleh parameter separator yang disertakan.  FIELD(str, str1[, str2, str3, . . . . ]), fungsi yang menghasilkan nilai numeric

berupa urutan parameter str dari sekumpulan parameter string list (str1[, str2, str3, . . . . ]) yang disertakan.

(39)

INSERT(str, pos, len, newstr), fungsi yang dapat menambahkan/menyisipkan nilai string baru (newstr) pada nilai string asal (str), pada posisi substring (pos) sebanyak karakter (len).

LEFT(str, len), fungsi untuk menghasilkan sub string dari sebuah nilai string (str) mulai dari karakter paling kiri sebanyak len karakter

LENGTH(str), fungsi yang dapat menghasilkan panjang string (str), diukur dalam byte.

LOCATE(sub_str, str[, pos]), fungsi yang dapat menghasilkan nilai posisi pertama dari sub string (sub_str) berdasarkan urutan karakter dari sebuah nilai string (str).

LOWER(str), fungsi untuk merubah semua karakter dalam nilai string (str) menjadi hurup kecil (lowercase). Fungsi ini sinonim untuk fungsi LCASE().  LTRIM(str), fungsi yag dapat membuang semua spasi yang berada di sebelah kiri

sebuah nilai string (str).

ORD(char), fungsi yang menghasilkan nilai kode ASCII dari karakter(char)  QUOTE(str), fungsi untuk menambahkan tanda kutip/petik (‘ ‘) pada sebuah

nilai string (str)

REPEAT(str, count), fungsi untuk menghasilkan suatu nilai string (str) sebanyak jumlah (count) tertentu

REPLACE(str, from_str, to_str), fungsi yang dapat mengganti semua sub string (from_str) dengan sebuah sub string baru (to_str) dalam sebuah nilai string (str).  REVERSE(str), fungsi untuk membalikkan urutan karakter dalam sebuah nilai

string (str)

RIGHT(str, len), fungis untuk menghasilkan sub string dari sebuah nilai string (str) mulai dari karakter paling kanan sebanyak len karakter

RTRIM(str), fungsi untuk membuang semua spasi yang berada di sebelah kanan sebuah nilai string (str).

SPACE(n), fungsi yang menghasilkan n spasi

(40)

sebanyak karakter tertentu (len). Fungsi ini sinonim dengan fungsi MID() dan bentuk lain fungsi ini adalah SUBSTRING(str FROM pos [FOR len]).

TRIM(str), fungsi untuk membuang semua spasi yang berada di sebelah kiri dan kanan sebuah nilai string (str).

UPPER(str), fungsi yang berguna untuk merubah semua karakter dalam nilai string (str) menjadi hurup kapital (upercase). Fungsi ini sinonim untuk fungsi UCASE().

5. Fungsi Numerik

ABS(n), fungsi yang menghasilkan nilai absolut dari n.

ACOS(n), fungsi untuk menghasilkan nilai arc kosinus dari n.  ASIN(n), fungsi untuk menghasilkan nilai arc sinus dari n.

ATAN(n), fungsi yang dapat menghasilkan nilai arc tangen dari n.

CEIL(n), fungsi untuk menghasilkan nilai integer terdekat yang tidak kurang dari nilai n.. Fungsi ini sinonim dengan fugsi CEILING(n).

COS(n), fungsi yang dapat menghasilkan nilai kosinus dari n. Dimana n dalam radian.

COT(n), fungsi yang dapat menghasilkan nilai kotangen dari n. Dimana n dalam radian.

DEGREES(n), fungsi untuk menghasilkan nilai derajat (degrees) dari nilai n radian.

EXP(n), fungsi untuk menghasilkan nilai exponensial dari nilai numerik n

FLOOR(n), fungsi yang dapat menghasilkan nilai integer terdekat yang tidak lebih dari nilai n..

LN(n), fungsi untuk menghasilkan nilai LEN (logaritma natural) dari nilai numerik n. Fungsi ini sinonim dengan fungsi LOG().

(41)

LOG2(n), fungsi untuk menghasilkan nilai logaritma basis 2 dari nilai numerik n.  LOG10(n), fungsi untuk menghasilkan nilai logaritma basis 10 dari nilai numerik n.  MOD(n, m), fungsi untuk menghasilkan nilai sisa (modulus) dari proses pembagian

integer n dengan m. Fungsi ini sama dengan operator % atau MOD.  PI(), fungsi yang mengahsilkan nilai PI

POW(n, m), fungsi untuk menghasilkan nilai n pangkat m.

RADIANS(n), fungsi yang dapat menghasilkan nilai radian dari n derajat.

RAND([n]), fungsi untuk menghasilkan nilai acak (random) antara 0 hingga 1.0. Parameter n (jika disertakan) digunakan sebagai awal bilangan acak.

ROUND(n[, d]), fungsi yang dapat menghasilkan nilai integer terdekat dari nilai numerik n. jika parameter d disertakan maka akan menghasilkan pecahan terdekat dari nilai numerik n dengan d digit desimal.

SIN(n), fungsi untuk menghasilkan nilai sinus dari nilai numerik n dalam radian.  SQRT(n), fungsi yang menghasilkan nilai positif dari akar kuadrat n.

TAN(n), fungsi untuk menghasilkan nilai tangent dari nilai numerik n dalam radian.  TRUNCATE(n, d), fungsi yang menghasilkan nilai numerik dengan menghilangkan digit desimal pad nilai numerik n hingga menyisakan d digit desimal.

6. Fungsi Date dan Time

ADDDATE(expr1, expr2), fungsi yang dapat digunakan untuk menghasilkan tanggal dari tanggal awal (expr1) ditambah interval hari yang ditentukan (expr2). Fungsi ADDDATE sinonim dengan fungsi DATE_ADD.

ADDTIME(expr1, expr2), fungsi yang menghasilkan jam dari jam awal (expr1) ditambah interval jam yang ditentukan (expr2).

(42)

CURTIME(), fungsi untuk menghasilkan jam sistem saat ini dalam format 'HH:MM:SS' atau HHMMSS format. Fungsi ini sinonim dengan fungsi CURRENT_TIME().

DATE(expr), fungsi untuk menghasilkan tanggal dari nilai/value datetime yang disertakan dalam ekspresi (expr).

DATE_FORMAT(datetime, format), fungsi yang dapat menghasilkan nilai tanggal dan jam (datetime value) dalam format tertentu.

DAY(date), fungsi untuk menghasilkan tanggal dari sebuah urutan tahun-bulan-tanggal (date). Fungsi ini sinonim dengan fungsi DAYOFMONTH().

DAYNAME(date), fungsi yang dapat mengahasilkan nama hari dari sebuah nilai tanggal (date)

DAYOFWEEK(date), fungsi untuk menghasilkan urutan hari dalam minggu (1 = Sunday, 2 = Monday, ... 7 = Saturday) dari sebuah nilai tanggal (date).

DAYOFYEAR(date), fungsi yang dapat menghasilkan hari ke berapa dalam tahun dari sebuah nilai tanggal (date).

NOW(), fungsi untuk menghasilkan tanggal dan jam sistem saat ini dalam format 'YYYY-MM-DD HH:MM:SS' atau YYYYMMDDHHMMSS.

7. Fungsi Aggregasi

AVG(expr), fungsi untuk menghasilkan nilai rata-rata sekelompok nilai dari sebuah kolom (field) numerik.

COUNT(expr), fungsi untuk menghasilkan nilai jumlah data (baris/record) dari sekelompok data tabel maupun view.

MAX(expr), fungsi yng dapat menghasilkan nilai tertinggi sekelompok nilai dari sebuah kolom (field) numerik

MIN(expr), fungsi untuk menghasilkan nilai terendah sekelompok nilai dari sebuah kolom (field) numerik

(43)

STDDEV_POP(expr), fungsi untuk menghasilkan nilai standart deviasi populasi dari expr.

VAR_POP(expr), fungsi yang dapat menghasilkan nilai standart varian populasi dari expr.

8. Fungsi Seleksi Kondisi

IF (expr1, expr2, expr3), fungsi pengujian yang dapat menghasilkan nilai expr2 jika expr1 terpenuhi atau bernilai TRUE, dan akan menampilkan nilai expr3 jika expr1 tidak terpenuhi atau bernilai FALSE.

IFNULL(expr1, expr2), fungsi pengujian untuk menghasilkan nilai expr1, jika expr1 tidak NULL, dan akan menampilkan nilai expr2 jika expr1 adalah NULL.  CASE WHEN [condition] THEN [result] [WHEN [condition] THEN [result] …]

[ELSE result] END

E. LANGKAH-LANGKAH PRAKTIKUM

Guna membantu pemahaman kita dalam menggunakan berbagai macam fungsi bawaan (build in function) MySQL, lakukan beberapa perintah query berikut ini;

a. Perhatikan apa yang dihasilkan dari penggunaan fungsi-fungsi string berikut ini; mysql> SELECT ASCII('2');

mysql> SELECT ASCII(2); mysql> SELECT ASCII('dx'); mysql> SELECT BIN(12);

mysql> SELECT CHAR(77,121,83,81,'76'); mysql> SELECT CHAR(77,77.3,'77.3');

mysql> SELECT CHAR_LENGTH(‘SRI DEVI');

Apa yang dapat disimpulkan dari penggunaan fungsi string ASCII, BIN, CHAR dan CHAR_LENGTH ?

(44)

……… ……… ………

b. Perhatikan apa yang dihasilkan dari penggunaan fungsi-fungsi string berikut ini; mysql> SELECT CONCAT(‘SRI’, ‘DEVI', ‘PERMATASARI’);

mysql> SELECT CONCAT_WS(‘-’, ‘SRI DEVI', ‘PERMATA’, ‘SARI’); mysql> SELECT FIELD('ej', 'Hej', 'ej', 'Heja', 'hej', 'foo');

mysql> SELECT FIND_IN_SET('b', 'a, b, c, d');

mysql> SELECT INSERT('Quadratic', 3, 4, 'What'); mysql> SELECT RIGHT('MySQL', 3);

mysql> SELECT LENGTH ( 'text');

Apa yang dapat disimpulkan dari penggunaan fungsi string CONCAT, FIELD, FIND_IN_SET, INSERT, RIGHT dan LENGTH ?

………

c. Perhatikan apa yang dihasilkan dari penggunaan fungsi-fungsi string berikut ini; mysql> SELECT LOCATE('bar', 'foobarbar');

(45)

………

d. Perhatikan apa yang dihasilkan dari penggunaan fungsi-fungsi string berikut ini; mysql> SELECT REPLACE('www.mysql.com', 'w', 'Ww');

mysql> SELECT REVERSE('MySQL'); mysql> SELECT RIGHT('MySQL', 3); mysql> SELECT RTRIM('barbar '); mysql> SELECT SPACE(6);

mysql> SELECT SUBSTRING('Quadratically',5); mysql> SELECT SUBSTRING('foobarbar' FROM 4);

mysql> SELECT SUBSTRING('foobarbar' FROM 4 FOR 3); mysql> SELECT SUBSTRING('Quadratically', 5, 6);

mysql> SELECT RTRIM(' barbar '); mysql> SELECT UPPER('mySQL');

Apa yang dapat disimpulkan dari penggunaan fungsi string REPLACE, REVERSE, RIGHT, SPACE, SUBSTRING, RTRIM dan UPPER ?

………

e. Perhatikan apa yang dihasilkan dari penggunaan fungsi-fungsi numerik berikut ini; mysql> SELECT ABS (2);

(46)

mysql> SELECT ACOS (0); mysql> SELECT ASIN (0,2); mysql> SELECT ASIN ( 'foo'); mysql> SELECT ATAN(2); mysql> SELECT ATAN(-2); mysql> SELECT CEIL(2.43); mysql> SELECT CEIL(-2.43); mysql> SELECT COS(PI());

Apa yang dapat disimpulkan dari penggunaan fungsi numerik ABS, ACOS, ASIN, ATAN, CEIL dan COS ?

(47)

mysql> SELECT LOG10(100); mysql> SELECT LOG10(-100);

Apa yang dapat disimpulkan dari penggunaan fungsi numerik COT, DEGREES, EXP, FLOOR, LN, LOG dan LOG10 ?

g. Perhatikan apa yang dihasilkan dari penggunaan fungsi-fungsi numerik berikut ini; mysql> SELECT MOD(234, 10);

(48)

h. Perhatikan apa yang dihasilkan dari penggunaan fungsi-fungsi numerik berikut ini; mysql> SELECT ROUND(-1.23);

mysql> SELECT ROUND(-1.58); mysql> SELECT ROUND(1.58); mysql> SELECT ROUND(1.298, 1); mysql> SELECT ROUND(23.298, -1); mysql> SELECT SIN(RADIANS(90)); mysql> SELECT SIN(RADIANS(30)); mysql> SELECT SQRT(4);

mysql> SELECT SQRT(20);

mysql> SELECT TAN(RADIANS(45)); mysql> SELECT TAN(RADIANS(30)); mysql> SELECT TRUNCATE(1.223,1); mysql> SELECT TRUNCATE(-1.999,1);

Apa yang dapat disimpulkan dari penggunaan fungsi numerik ROUND, SIN, SQRT, TAN dan TRUNCATE ?

……… ……… ……… ……… ……… ………

i. Perhatikan apa yang dihasilkan dari penggunaan fungsi-fungsi date and time berikut ini; mysql> SELECT DATE_ADD('1998-01-02', INTERVAL 31 DAY);

mysql> SELECT ADDDATE('1998-01-02', INTERVAL 31 DAY); mysql> SELECT ADDDATE('1998-01-02', 31);

mysql> SELECT ADDTIME('1997-12-31 23:59:59.999999', '1 1:1:1.000002'); mysql> SELECT ADDTIME('01:00:00.999999', '02:00:00.999998');

(49)

mysql> SELECT CURTIME(); mysql> SELECT CURTIME() + 0;

Apa yang dapat disimpulkan dari penggunaan fungsi date and time DATE_ADD, ADDDATE, CURDATE dan CURTIME ?

……… ……… ……… ……… ……… ………

j. Perhatikan apa yang dihasilkan dari penggunaan fungsi-fungsi date and time berikut ini; mysql> SELECT DATE('2003-12-31 01:02:03');

mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y'); mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%H:%i:%s');

mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%D %y %a %d %m %b %j');

mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00','%H %k %I %r %T %S %w');

mysql> SELECT DATE_FORMAT('1999-01-01', '%X %V'); mysql> SELECT DAYOFMONTH('1998-02-03');

mysql> SELECT DAYNAME('1998-02-05'); mysql> SELECT DAYOFWEEK('1998-02-03'); mysql> SELECT DAYOFYEAR('1998-02-03'); mysql> SELECT NOW();

mysql> SELECT NOW() + 0;

Apa yang dapat disimpulkan dari penggunaan fungsi date and time DATE, DATE_FORMAT, DAYOFMONTH, DAYNAME, DAYOFWEEK, DAYOFYEAR dan NOW ?

(50)

……… ……… ………

k. Perhatikan apa yang dihasilkan dari penggunaan fungsi-fungsi seleksi kondisi berikut ini;

mysql> SELECT IF(1>2,2,3); mysql> SELECT IF(1<2,'yes','no');

mysql> SELECT IF(STRCMP('test','test1'),'no','yes'); mysql> SELECT IFNULL(1,0);

mysql> SELECT IFNULL(NULL,10); mysql> SELECT IFNULL(1/0,10); mysql> SELECT IFNULL(1/0,'yes');

mysql> SELECT CASE WHEN 1>0 THEN 'true' ELSE 'false' END; mysql> SELECT CASE BINARY 'B'

WHEN 'a' THEN 1 WHEN 'b' THEN 2 END;

Apa yang dapat disimpulkan dari penggunaan fungsi seleksi kondisi IF, IFNULL dan CASE WHEN ?

(51)

PRAKTIKUM V

MEMBUAT, MERUBAH, MENDUPLIKASI

DAN MENGHAPUS TABEL

A. LATAR BELAKANG

Kemampuan untuk mengunakan bahasa query untuk membuat, merubah, menduplikasi dan menghapus sebuah Tabel, sangat dibutuhkan oleh perancang database. Desain database secara konsep yang telah dibuat harus dapat diimplementasikan secara fisik ke dalam server database.

Basisdata (database) merupakan sekumpulan objek yang dapat terdiri dari tabel, view maupun yang lainnya, yang terhububung satu dengan lainnya. Objek tabel sebagai salah satu komponen vital dari sebuah database harus dibuat/diciptakan terlebih dahulu sebelum melakukan penyimpanan data (record). Pada kondisi tertentu, terkadang sebuah tabel perlu untuk dilakukan perubahan struktur datanya, digandakan, dirubah namanya atau bahkan tabel tersebut harus dihapus dari sebuah database.

Guna membantu meningkatkan pemahaman mahasiswa dalam menggunakan berbagai macam perintah query dalam lingkup Data Definition Statement (DDS), utamanya untuk membuat, merubah struktur data, menggandakan dan menghapus sebuah tabel, diperlukan tindakan uji coba dalam praktikum berikut ini.

B. TUJUAN

Kompetensi yang diharapkan dapat tercapai setelah melakukan praktikum ini adalah mahasiswa dapat membuat, merubah (memodifikasi), menggandakan serta menghapus objek Tabel dengan menggunakan Data Definition Statemen (DDS).

C. ALAT-ALAT DAN BAHAN YANG DIGUNAKAN

(52)

1. Satu komputer yang akan digunakan sebagai Server dan sejumlah komputer yang digunakan sebagai Client dan terhubung dalam jaringan komputer baik dengan menggunakan kabel maupun dengan jaringan tanpa kabel (nirkabel)

2. LCD viewer, whiteboard dan spidol sebagai media presentasi instruktur 3. Software aplikasi MySQL Server 5.0 keatas, MySQL Query Browser

D. TEORI DASAR 1. Menciptakan Table

Table merupakan salah satu bentuk object dalam sebuah database dan merupakan bagian dari struktur database dalam MySQL. Object table digunakan untuk menyimpan dan mengelompokkan data yang berelasi. Kumpulan data dalam bentuk table tersebut biasanya mepresentasikan sebuah entitas atau kejadian tertentu. Table dapat tersusun atas satu atau beberapa kolom/field dengan nama yang berbeda. Data pada setiap kolom atau field memiliki tipe/jenis data yang homogen (sama). Istilah Record digunakan untuk menyebutkan kumpulan data dari kolom-kolom yang sebaris dan memiliki keterkaitan secara logika.

Table harus tercipta terlebih dahulu, agar dapat digunakan untuk menyimpan sekumpulan data. Bentuk umum perintah untuk membuat table dalam sebuah database adalah sebagai berikut;

CREATE TABLE [IF NOT EXISTS] <table_name> (<table_structure>);

Perintah CREATE DATABASE <databse_name> digunakan untuk membuat/menciptakan database. Sedangkan perintah untuk menambah atau menyisipkan data pada sebuah table, dapat menggunakan perintah;

INSERT [INTO] <table_name> [(col_name1, col_name2, …)] VALUES(<value1, value2, …>)

atau

INSERT [INTO] <table_name> SET col_name1=value1, col_name2=value2, …. atau

(53)

Contoh :

mysql>INSERT INTO dosen

->VALUES (‘D1001’,’Roy Markun’,’L’,’Bogor’,’1969-01-23’,’Jl. Mayjend. Sungkono 93’);

atau

mysql>INSERT INTO dosen (kode_dosen, nama_dosen, kelamin, tgl_lahir, alamat) ->VALUES (‘D1001’,’Roy Markun’,’L’,’Bogor’,’1969-01-23’,’Jl. Mayjend. menduplikasi table disini mempunyai arti bahwa yang diduplikasi adalah struktur table dan datanya. Perintah yang dapat digunakan untuk menduplikasi table adalah sebagai berikut; CREATE TABLE <new_table_name> SELECT * FROM <source_table_name>; new_table_name adalah nama table hasil duplikasi, sedangkan source_table_name merupakan nama table sumber yang akan diduplikasi.

3. Mengganti Nama Table

(54)

4. Menghapus Table

Perintah SQL yang dapat digunakan untuk menghapus sebuah table cukup sederhana, yaitu dengan cara sebagai berikut;

DROP TABLE [IF EXISTS] <table_name>;

DROP TABLE dapat digunakan untuk mengghapus satu atau beberapa table sekaligus.

5. Merubah Struktur Table

Perintah untuk melakukan perubahan struktur table sangat variatif. Bervariasinya perintah SQL untuk merubah struktur table, tidak lepas dari pertanyaan “bagian apa dari struktur table yang akan dirubah?”. Beberapa bagian dari struktur table yang dapat dirubah diantaranya adalah mengganti nama dan tipe data dari sebuah kolom/field, menambah, merubah urutan dan menghapus field, menambah dan menghapus Primary Key dan Foreign Key, menambah dan mengurangi konstrain Unique, menambah Index sebuah table dan sebagainya.

Walau sangat bervariasi, namun pada intinya perintah untuk merubah struktur table adalah sebagai berikut;

ALTER TABLE <table_name> <ADD | CHANGE | DROP | MODIFY>…..; Dimana perubahan-perubahan struktur table yang dapat dilakukan adalah menambah (ADD), mengganti (CHANGE), menghapus (DROP) dan merubah (MODIFY).

5.1 Mengganti Nama dan Tipe Data Field

Mengganti nama dan tipe data dari sebuah field, dapat dilakukan dengan cara sebagai berikut;

ALTER TABLE <table_name> CHANGE COLUMN <column_name> <column_definition>;

(55)

5.2 Menambah Field

Menambah field pada sebuah tabel dapat dilakukan dengan cara memberikan perintah SQL sebagai berikut;

ALTER TABLE <table_name> ADD COLUMN <column_name> <column_definition> AFTER <column_name>;

atau

ALTER TABLE <table_name> ADD COLUMN <column_name> FIRST <column_name>;

Perintah AFTER menyatakan bahwa filed baru akan diletakkan setelah filed tertentu, sedang perintah FIRST menyatakan bahwa field baru akan menjadi field pertama.

5.3 Merubah Urutan Field

Merubah urutan field dalam sebuah tabel dapat dilakukan dengan memindah urutan field yang dimaksud menjadi urutan pertama (FIRST), atau setelah urutan field lainnya (AFTER). Perintah SQL untuk merubah urutan field pada sebuah tabel adalah sebagai berikut;

ALTER TABLE <table_name> MODIFY <column_name> <column_definition> FIRST;

atau

ALTER TABLE <table_name> MODIFY <column_name> <column_definition> AFTER <column_name> ;

5.4 Menghapus Field

Menghapus field dalam sebuah tabel dapat dilakukan dengan cara menghapus satu persatu field yang dimksud, atau beberapa field sekaligus. Perintah SQL untuk menghapus field pada sebuah tabel adalah sebagai berikut;

(56)

5.5 Menambah dan Menghapus Primary Key dan Foreign Key

Menambah kunci utama (Primary Key) pada sebuah tabel dapat dilakukan dengan perintah SQL sebagai berikut;

ALTER TABLE <table_name> ADD PRIMARY KEY <column_name>;

Sedangkan perintah SQL untuk menambah kunci tamu (Foreign Key) adalah sebagai berikut;

ALTER TABLE <table_name> ADD COINSTRAINT

<constrain_foreign_name> FOREIGN KEY <constrain_foreign_name> (<field_name_for_foreign_name>) REFERENCES <table_name_reference> (<field_name_for_foreign_name>) [ON DELETE] [RESTRICT ON UPDATE RESTRICT];

E. LANGKAH-LANGKAH PRAKTIKUM

Guna membantu pemahaman kita dalam menggunakan perintah-perintah Data Definition Statement (DDS) untuk membuat, merubah, menduplikasi dan menghapus objek Table, lakukan beberapa perintah query berikut ini;

a. Masuklah ke MySQL sebagai root;

(57)

->tgl_lahir DATE NULL DEFAULT “0000-00-00”,

d. Masukkan data berikut ke masing-masing table yang telah tercipta dengan perintah INSERT INTO. Data yang dimasukkan adalah sebagai berikut;

Tabel 1: Data Dosen

D1001 Roy Markun L Bogor 1969-01-23 Jl. Mayjend. Sungkono 93 D1002 Ginanjar L Jakarta 1971-03-21 Jl. Ahmad Yani 100

D1003 Gina Sonia P Bandung 1962-09-12 Jl. Citarum 53 D1004 Ian Antono L Palembang 1970-10-11 Jl. Raden Saleh II/42 D1005 Indri Jelita P Bengkulu 1973-07-19 Jl. Ahmad Yani 21 D1006 Desi Ratnasari P Padang 1970-11-09 Jl. Mayjend. Panjaitan 45 D2001 Moh. Umar P Malang 1973-12-25 Jl. Citandui 52

D2002 Aisyah Kamila L Semarang 1968-10-03 Jl. Panglima Sudirman 15 D2003 Ike Nurjannah P Surabaya 1971-10-10 Jl. Sidodadi 76

Tabel 2: Data Mahasiswa

Nim nama_mhs klm tmp_lahir tgl_lahir alamat 0151001 Gogon L Medan 1982-09-29 Jl. Arjono 123

(58)

Nim nama_mhs klm tmp_lahir tgl_lahir alamat 0151009 Lilik Sundari P Samarang 1982-12-19 Jl. Ambarawa 93

Tabel 3: Data Jenis Ujian

KD_001 Sistem Basis Data 3 D1006

KD_002 Sistem Operasi 3 D2002

KD_003 Sistem Berkas 2 D1004

KD_004 Arsitektur & Organisasi Komputer 3 D1002 KK_001 Algoritma & Pemrograman 1 4 D1001 KK_002 Algoritma & Pemrograman 2 4 D2001 KK_003 Algoritma & Pemrograman 3 2 D1003 KK_004 Pemrograman Clint-Server 3 D1003 KK_005 Pemrograman Berbasis WEB 3 D2003 KK_006 Pemrograman Berbasis WAP 3 D1005 KK_007 Pemrograman Delphi 2 D2001 KK_008 Pemrograman Visual Basic 2 D1005

Gambar

Gambar 1: File MySQL-5.0.20.EXE Pada Windows Explorer
Gambar 3: Konfirmasi Terakhir Sebelum Instalasi MySQL
Gambar 5: Akhir Proses Instalasi Server MySQL
Gambar 10: Kondisi Proses Konfigurasi Sukses Dieksekusi
+7

Referensi

Dokumen terkait

H0 = Variabel persepsi kualitas produk tidak berpengaruh positif dan signifikan terhadap keputusan konsumen untuk melakukan pembelian sepeda motor

Pada hari Jum’at tanggal 12 Agustus 2016 saya dan teman-teman menghadiri petemuan dengan walikota Tangerang Selatan di aula Kecamatan Serpong Utara dengan

Berdasarkan hasil penelitian dan setelah dilakukan tabulasi data maka diperoleh nilai indeks kepuasan masyarakat per unsur pelayanan pada Puskesmas Kalicacing Kota

Peserta didik yang menyelesaikan studi mendapatkan ijazah dan dapat digunakan untuk melanjutkan pendidikan formal jenjang yang lebih tinggi; (4) mempertahankan kekhasan mata

Dari hasil wawancara awal pada 30 bidan di puskesmas Gogagoman Kota Kotamobagu bahwa ANC (Antenatal Care) terintegrasi belum 100% terlaksana dengan baik di karenakan

Penelitian dengan judul “ Dampak Fenomena the Day of the Week Effect, Monday Effect dan Weekend Effect pada Perdagangan Saham di Bursa Efek Indonesia” ini

Rincian tugas pekerjaan tersebut adalah: (1) Melakukan penyiapan bahan penyusunan rencana kerja dan anggaran Subbagian Organisasi dan Kepegawaian, (2) Melakukan penyiapan

11) mekanisme penanganan dalam hal terjadi kegagalan dalam memenuhi kewajiban... Dalam hal terjadi perubahan jenis Akad Syariah, isi Akad Syariah, kegiatan usaha dan/ atau aset