• Tidak ada hasil yang ditemukan

PRAKTIKUM 1 PERANCANGAN DATABASE : SYBASE POWER DESIGNER 12

N/A
N/A
Protected

Academic year: 2021

Membagikan "PRAKTIKUM 1 PERANCANGAN DATABASE : SYBASE POWER DESIGNER 12"

Copied!
36
0
0

Teks penuh

(1)

PRAKTIKUM 1

PERANCANGAN DATABASE : SYBASE POWER DESIGNER 12 1.1 Sekilas Mengenai Sybase Power Designer 12

Sybase Power Designer 12 merupakan tool pemodelan yang dikeluarkan oleh ybase untuk membangun sebuah sistem informasi yang cepat, terstruktur dan efektif. ybase

Power Designer 11 mendukung beberapa pemodelan sebagai berikut :

 Requirement Management  Application Modelling dengan UML  Business Process  Information Liquidity Modelling

 Data Modelling  Integrated Modelling

 XML Modelling

Pada praktikum ini kita akan mencoba menggunakan Power Designer untuk melakukan pemodelan data (data modeling) untuk kemudian akan kita gunakan untuk melakukan perancangan basis data. Secara sederhana, untuk melakukan pemodelan data pada Power Designer, kita harus memulainya pada level Conceptual Data Model, dimana pemodelan data dilakukan dengan menggunakan metode Entity Relationship Diagram. Pada CDM, tipe data yang dipergunakan bersifat general, dan tidak spesifik terhadap suatu database tertentu.

Tahap kedua adalah membuat Physical Data Model (PDM), PDM merupakan bentuk spesifik dari CDM yang telah kita bangun. Power Designer memiliki banyak dukungan target database, sehingga kita tidak perlu bingung mengenai tipe – tipe data yang dipergunakan, karena Power Designer akan menyesuaikan seperti pada tipe data yang kita definisikan sebelumnya pada tahap CDM.

Tahap terakhir adalah mengenerate script Data Definition Language (DDL) dari PDM yang telah dibuat. Melalui DDL inilah kita dapat mengenerate objek – objek database (table, trigger,view, procedure) sehingga kemudian DDL script ini dapat kita eksekusi ke software database lain seperti Oracle atau MySQL, atau dapat juga kita buat koneksi dan mengeksekusinya langsung via Power Designer.

(2)

1.2 Conceptual Data Modelling

Pada tahap ini kita akan membuat CDM dengan studi kasus adalah relasi antara Anggota Perpustakaan dengan Buku pada istem Informasi Perpustakaan. ampai tahap ini, diasumsikan anda sudah paham mengenai konsep ERD dan pemodelan data. Tahapan pembuatan CDM pada Power Designer 12 adalah sbb :

1. Pilih menu file > new > pada dialog new pilih new model dan Conceptual Data Model kemudian klik OK.

2. Langkah selanjutnya adalah membuat entitas mahasiswa. Pada tahapan ini, klik ikon entity pada pallete dan klik lagi pada workspace. Kemudian kembali ke pallete dan klik ikon panah lalu klik dua kali ikon entity atau klik kanan kemudian pilih properties untuk membuka “properties” nya seperti pada gambar dibawah :

(3)
(4)

3. Pada tab general, kita dapat memberi nama entitas tersebut yaitu “mahasiswa”.

4. Kemudian pada tab attributes, kita dapat menambahkan atribut pada entitas ini diantaranya : Nama

Atribut

Tipe Data

NIM Variable Character / Length 9

NamaMhs Variable Character / Length 25

AlamatMhs Variable Character / Length 35

5. Untuk atribut NIM kita set sebagai primary key, sehingga centang checkbox P untuk mengeset Primary Key; Selain itu NIM juga tidak boleh kosong sehingga centang juga M untuk Mandatory, kemudian klik OK.

6. Langkah selanjutnya adalah membuat entitas buku. Untuk membuat entitas buku, langkah langkah yang dilakukan sama dengan tahapan pembuatan entitas mahasiswa dengan atribut sbb:

Nama Atribut Tipe Data

KodeBuku Variable Character / Length 4

JudulBuku Variable Character / Length 35

PengarangBu ku

Variable Character / Length 20

(5)

7. Kemudian Set Kode Buku sebagai Primary Key dan Mandatory.

8. Berikutnya kita akan membuat relasi antara kedua entitas ini, untuk itu klik icon relationship pada pallete, kemudian hubungkan kedua entitas tersebut.

9. Kemudian klik dua kali atau klik kanan dan pilih menu properties untuk melihat properties nya.

10. Pada tab general , kita dapat mengubah nama relationshipnya menjadi “meminjam”.

11. Kemudian pada tab detail, kita dapat memilih tipe relasi antara kedua entitas tersebut, dalam hal ini pilih 1 to many.

12. Pada relasi mahasiswa to buku pilih cardinality 1,n dan centang pada checkbox mandatory. 13. Sedangkan pada relasi buku to mahasiswa, pilih cardinality 1,1 dan centang pada checkbox

(6)

14. Untuk mengecek kebenaran model ini, kita dapat memilih tools > check model > OK. Bila benar, maka akan terlihat pesan bahwa CDM yang telah dibangun benar pada bagian bawah workspace seperti pada gambar dibawah

C. Tahap 2 : Physical Data Modelling

1. Setelah membuat CDM, maka tahapan selanjutnya adalah membuat PDM. Untuk membuat PDM, maka pilih tools > generate physical data model.

2. Pada tab general kita dapat memilih generate new physical data model.

3. Pada pilihan database, kita dapat memilih database yang akan kita gunakan, karena dalam tutorial kita menggunakan Oracle 10g XE, maka dapat kita pilih database Oracle 10g.

4. Kemudian berilah nama pada PDM ini dengan PDM perpus

(7)

6. Pada reference, ganti pilihan delete rule dengan cascade, kemudian klik OK.

7. Kemudian, kita dapat mengecek kebenaran model dengan cara yang sama saat mengecek kebenaran model CDM.

D. Tahap 3 : Data Definition Language Generation

1. Tahap terakhir dalam perancangan database dengan menggunakan Sybase Power Designer 11 ini adalah perancangan DDL script yang nantinya dapat kita impor pada database server. 2. Untuk itu pilih database > generate database.

3. Pada dialog database generation, pilih script generation pada pilihan generation type. 4. Pada directory, kita dapat memilih dimana DDL script ini akan disimpan.

5. Pada file name, kita dapat mengetikkan nama untuk script ini. 6. Untuk tab dan pilihan lain dapat kita biarkan dalam kondisi default.

7. Kemudian klik OK dan untuk melihat DDL script yang telah kita generate klik edit, dibawah ini adalah DDL script untuk relasi mahasiswa – buku yang telah kita buat :

(8)
(9)

TUGAS

1. Buatlah sebuah model basis data dengan menggunakan powerdesigner yaitu sebuah sistem pada perusahaan, dimana perusahaan tersebut memiliki divisi produksi, divisi management, divisi finance, divisi HRD, divisi trade. Sistem apa saja yang sekiranya berada di salah satu divisi atau beberapa divisi tersebut, secara spesifik, dengan minimal tabel yaitu 7 tabel.

2. Generate menjadi physical data model. 3. Jelaskan sistem tersebut secara terperinci.

(10)

PRAKTIKUM 2

QUERY : PENGENALAN DASAR

2.1 PENDAHULUAN

MySQL (My Structure Query Language) adalah salah satu aplikasi database dari sekian banyak aplikasi database lain seperti Oracle, MS SQL, PostgresSQL dan banyak lagi. Kesemuanya itu mempunyai fungsi dan manfaat yang hampir sama namun dalam pengerjaanya sedikit berbeda. Diantara beberapa aplikasi database, dalam penggunaannya MySQL tergolong adalah yang paling mudah untuk digunakan. MySQL juga tidak memerlukan spesifikasi komputer yang tinggi dalam menjalankannya dan termasuk aplikasi database yang ringan, cepat, reliable, dan telah banyak digunakan untuk menangani pembuatan software besar.

MySQL adalah sebuah aplikasi database manajemen sistem (DBMS) yang merupakan salah satu system dalam mengakses database dengan menggunakan bahasa SQL. MySQL juga merupakan software Open source yang artinya memungkinkan untuk semua orang untuk menggunakan dan memodifikasi software. Setiap orang dapat men-download MySQL dari internet dan menggunakannya tanpa membayar apapun. Kita bisa mempelajari kode sumber dan memodifikasinya sesuai dengan yang kita inginkan.

2.2 PRAKTIKUM

MENJALANKAN MYSQL

1. Buka MS. DOS dengan jalan klik start-run.., pada menu run ketikkan CMD kemudian enter

2. Masuk ke dalam direktori C:\xampp\mysql\bin dan ketikkan : mysql –h localhost –u root 3. Setelah masuk akan tampak menu utama dari MySql

Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 359

Server version: 5.1.41 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

(11)

4. Untuk keluar dari MySql Tekan ctrl + c mysql> \q

Bye

MELIHAT TANGGAL & WAKTU

Untuk melihat tanggal didalam MySql anda dapat melakukan dengan rumus cur date () ; Mysql>select curdate();

Sedangkan untuk melihat waktu dengan rumus curtime () ; Mysql>select curtime();

Untuk melihat waktu dan sekaligus tanggal, maka tumus yang dituliskan adalah now () ; Mysql>select now();

MYSQL SEBAGAI KALKULATOR

Dengan MySql, kita tidak usah bingung ketika suatu saat kita harus menggunakan alat bantu kalkulator., karena hal ini dapat ditangani langsung oleh MySql tanpa harus membuat program terlebih dahulu. Rumus yang dituliskan adalah select rumus_perhitungan; Mysql>select 5+5;

DATABASE

Database adalah kumpulan dari tabel-tabel, dan tabel merupakan kumpulan dari beberapa Field atau column. Untuk membuat suatu table maka seorang user harus membuat database terlebih dahulu. Dengan mengaktifkan database yang dibuat tersebut.

MELIHAT DATABASE

Untuk melihat database rumus yang digunakan adalah show databases; Mysql>show databases;

Perintah diatas digunakan untuk melihat semua databases yang ada didalam MySql, sedangkan untuk melihat databases yang sedang aktif menggunakan rumus select database(); Mysql>select database();

Untuk menggunakan atau masuk kedalam suatau database rumus yang digunakan adalah use nama_database;

(12)

Mysql>use <nama database>;

Jika terdapat pesan database changed, berarti anda telah berhasil masuk ke database tersebut, tetapi jika terdapat pesan ERROR 1049:unknown database, berarti anda tidak berhasil masuk kedatabase tersebut.

MELIHAT TABEL

Untuk melihat tabel yang ada dalam suatu database rumus yang digunakan adalah Mysql>show tables;

MEMBUAT DAN MENGHAPUS DATABASE Aturan penamaan dalam pembuatan database :

1. Jangan menggunakan spasi dan spesial karakter dalam pembuatan nama database 2. Jangan menggunkan angka pada awal pembuatan nama database

Rumus yang digunakan untuk membuat database adalah create database <nama database>;

Mysql>create database <nama database>;

Untuk menghapus database yang telah dibuat, rumus yang digunakan adalah drop database <nama database>;

Mysql>drop database <nama database>;

2.3 TUGAS

1. Tuliskan hasil perintah melihat tanggal dengan menggunakan MySql 2. Tuliskan hasil perintah melihat waktu dengan menggunakan MySql

(13)

3. Tuliskan hasil perintah melihat tanggal dan waktu dengan menggunakan MySql 4. Tuliskan hasil perintah dari 10*5 , 5+10 , 123-100, 10 / 3 menggunakan MySql 5. Tuliskan / gambar hasil perintah melihat semua database yang ada dalam MySql

6. Masuklah kesalah satu database tersebut, kemudian lihatlah database anda (menggunakan rumus database yang sedang aktif ) kumudian anda tuliskan hasil dari perintah tersebut 7. Buatlah sebuah database dengan nama ”tugas”, kemudian lihat database tersebut apakah

sudah berhasil anda buat, tuliskan keterangan anda

5. Lihatlah tabel yang ada didalam salah satu database yang ada didalam MySql, kemudian tulisian hasilnya

6. Hapuslah database yang telah anda buat pada perintah no 7, tuliskan hasil dari perintah tersebut kemudian lihat hasilnya apakah database tersebut telah terhapus, tuliskan hasilnya

(14)

PRAKTIKUM 3

QUERY : MANIPULASI TABEL 3.1 PENDAHULUAN

Secara umum bahasa SQL dibagi menjadi tiga bagian:

1. DDL (Data Definition Language) yang digunakan untuk membangun objek-objek dalam

database seperti tabel.

2. DML (Data Manipulation Language) yang digunakan dalam memanipulasi suatu tabel didalam database (menambah, mengedit, mencari dan menghapus)

3. DCL (Data Control Language) yang digunakan untuk menangani masalah keamanan dalam database server

Ketiga komponen ini bisa digunakan setelah suatu database di aktifkan. 3.2 PRAKTIKUM

Membuat Tabel

Setelah menciptakan suatu database dan mengaktifkan database tersebut maka dapat dilakukan

perintah pembuatan tabel.

CREATE TABLE Nm_Tabel (

Nm_Kolom1<spasi>tipe_data(ukuran), nm_kolom2<spasi>tipe_data(ukuran)….. nm_kolom_n<spasi>tipe_data (ukuran) );

Untuk bentuk tipe data yang digunakan ada bermacam-macam yaitu: int, char, varchar, date, text, dll.

(15)

Membuat tabel buku_alamat seperti tabel dibawah, tetapi yang perlu dingingat adalah anda tidak boleh membuat nama tabel atau field yang menggunakan spasi.

Tabel buku_alamat Field Type No Int(3) Nama Varchar(25) Alamat Varchar(50) Kd_post Char(5) Email Varchar(30)

Rumus untuk membuat tabel tersebut :

Mysql>create table buku_alamat ->( ->no int(3), ->nama varchar(25), ->alamat varchar(50), ->Kd_post(5), ->email varchar(30) ->);

(16)

dalam daftar tabel yang ada Melihat Struktur Tabel

Perintah describe nama_tabel; digunakan untuk melihat struktur tabel yang telah dibuat. Namun sebelumnya, sudah berada pada database yang mempunyai tabel tersebut. Contoh :

melihat struktur tabel yang telah anda buat (buku_alamat), dengan mengetikkan perintah :

mysql>describe buku_alamat;

Mengubah Struktur Tabel

Ada empat macam perubahan dalam struktur tabel, yaitu : a. Perubahan nama field/kolom

Perubahan yang terjadi hanya pada nama field/kolom saja. Nama field/kolom lama diganti dengan nama field/kolom yang baru. Struktur penulisan :

alter table nama_tabel

change nama_field_lama nama_field_baru tipe_data; Contoh :

Mengganti field kd_post pada tabel buku_alamat dengan kdpos, dengan mengetikkan perintah

mysql>alter table buku_alamat change kd_pos kdpos varchar(6);

Lihatlah hasil perubahan dengan menggunakan perintah Melihat Struktur Tabel seperti pada pembahasan diatas.

b. Perubahan tipe data

Perubahan yang terjadi hanya pada tipe data yang digunakan oleh field/kolom tertentu. Tipe data baru langsung disebutkan di belakang nama field/kolom, tanpa harus menyebutkan tipe data lama.

Struktur penulisan :

Alter table nama_tabel modify nama_field tipe_data_baru; Contoh :

(17)

mysql>alter table buku_alamat modify alamat text;

Lihatlah hasil perubahan dengan menggunakan perintah Melihat Struktur Tabel seperti pada pembahasan diatas

c. Penambahan field

Struktur tabel akan berubah dengan bertambahnya field/kolom baru didalamnya. Struktur penulisan :

Alter table nama_tabel add nama_field tipe_data_baru; Atribut tambahan: first = untuk penambahan field di awal table;

after ‘nama_field’ = untuk penambahan field di sesudah ‘nama_fields’; Contoh :

membuat field baru pada tabel buku_alamat dengan nama field jk type data varchar(2), dengan mengetikkan perintah :

mysql>alter table buku_alamat addjk varchar(2);

Lihatlah hasil perubahan dengan menggunakan perintah Melihat Struktur Tabel seperti pada pembahasan diatas.

d. Penghapusan field

Struktur tabel mengalami perubahan akibat berkurangnya field/kolom tertentu. Struktur penulisan :

Alter table nama_tabel drop column nama_field; Contoh :

menghapus field kdpos pada tabel buku_alamat dengan mengetikkan perintah : mysql>alter table buku_alamat drop column kdpos;

Lihatlah hasil perubahan dengan menggunakan perintah Melihat Struktur Tabel seperti pada pembahasan diatas

Mengganti Nama Tabel

Penggantian nama tabel meliputi nama tabel itu sendiri. Struktur penulisan : Alter table nama_tabel_lama rename nama_tabel_baru; Contoh :

(18)

mysql>alter table buku_alamat rename alamat; Lihatlah hasil perubahan dengan menggunakan perintah show tables Menghapus Tabel

Tabel dapat saja dihapus karena sudah tidak dibutuhkan lagi,atau terjadi kesalahan. Struktur penulisan :

Drop table nama_tabel;

Contoh:

menghapus tabel alamat, dengan mengetikkan perintah : mysql>drop tablealamat; Lihatlah hasil perubahan dengan menggunakan perintah show tables;

3.3 TUGAS

1. Buatlah sebuah database “akademik”, kemudian buatlah sebuah tabel mhs seperti berikut : Field Type No Int(3) Nim int(10) Nama Varchar(25) Alamat Varchar(30) Jk Varchar(2) Tlp Varchar(25)

Lihatlah struktur tabel yang telah anda buat dengan perintah seperti pembahasan diatas, kemudian tuliskan struktur tersebut

2. Dari pembuatan tabel diatas rubahlah nama field Tlp menjadi HP, lihat struktur tabel dan tuliskan hasilnya

3. Rubahlah tipe data tabel diatas pada field alamat menjadi text, lihat struktur tabel dan tuliskan hasilnya

(19)

4. Tambahkan satu field baru dengan nama field nama_ortu type data varchar(25), lihat struktur tabel dan tuliskan hasilnya

5. Hapuslah satu field dari tabel tersebut, lihat struktur tabel dan tuliskan hasilnya serta field apa yang ada haspus

6. Rubahlah nama tabel tersebut dengan nama data_mhs, lihat hasil perubahan dengan perintah melihat tabel yang ada, kemudian tuliskan hasilnya

PRAKTIKUM 4

QUERY : DATA MANIPULATION LANGUAGE

4.1 PENDAHULUAN

DML (Data Manipulation Language) yaitu bahasa atau perintah sql yang digunakan untuk memanipulasi data seperti menampilkan data, menambah/mengisi data, mengubah data

(20)

dan DELETE. 4.2 PRAKTIKUM

Kunci Primer (Primary Key)

Secara sederhana kunci primer digunakan untuk menyatakan bahwa suatu nilai tidak boleh ada yang sama dan nilai tersebut harus diisi (NOT NULL).

Penetapan kunci primer dibuat pada saat pembuatan tabel:

mysql> create table mhs ( NIM varchar(10) not null primary key, Nama varchar(25), Alamat varchar(35),jk char(1),telp varchar(25));

Memberikan nilai bawaan (Default)

Jika tidak memberikan suatu nilai dalam kolom tertentu maka oleh system secara otomatis diisi dengan nilai NULL. Oleh karena itu pada saat perancangan table field tersebut defaultnya diisi dengan tetapan yang dikehendaki.

mysql> create table MatKul (kode varchar(10) not null primary key, nama varchar(20),SKS int default 2);

Memasukkan Data (Insert)

Ada dua cara yang dapat digunakan untuk memasukkan data kedalam tabel, yaitu:

1. insert into nama_tabel values

(isi_field_2,…,isi_field_n); Contoh :

insert into matkul values(JFKK232,’Basis Data’,2);

2. insert into nama_tabel (nama_field_1, nama_field_2,…,nama_ field_n) values (isi_field_1, isi_field_2,…,isi_field_n); Contoh :

Insert into matkul (kode,nama,sks) values (JFKK232, ’Basis Data’ , 2);

(21)

Kode Varchar(10) No Primary Null

Nama Varchar(20) Yes Null

Sks int(1) Yes 2

Isikan data tabel tersebut :

Kode Nama Sks

JFKK232 Basis Data 2

JFPB231 Praktikum Basis Data 1 JFKB131 Sistem Operasi 2 JFPB232 Praktikum Sistem Operasi 1

Menampilkan Data (Select) Struktur Penulisan :

Select [fields] from [nama_tabel] Where [kondisi] Order by [nama_field] Group by [nama_field] asc / desc

Note :

Setelah penulisan select, [fields] dapat diganti dengan menyebutkan satu nama field saja atau beberapa field sekaligus yang dipisah dengan tanda koma (,). Penulisan field-field tersebut digunakan untuk memunculkan data dari kolom mana saja yang akan ditampilkan. Jika seluruh kolom akan ditampilkan dapat menggunakan tanda asterik (*) untuk mewakilinya. Menampilkan data yang telah dimasukkan pada latihan PRAKTIKUM diatas dengan mengetikkan perintah :

Select kode,nama from matkul;

(menampilkan kode dan nama mata kuliah ) Select * from matkul;

(menampilkan semua data) Mengurutkan Tampilan

Klausa ORDER BY digunakan untuk mengurutkan hasil. Jika menginginkan data ditampilkan urut berdasarkan pada urutan terkecil ke besar, dapat menggunakan ASC (ascending). Sedangkan untuk mengurutkan data berdasarkan yang terbesar ke kecil, dapat menggunakan DESC (descending). Menampilkan data dari tabel yang telah dibuat diatas dengan menggunakan model urutsesuai sks secara descending, dengan mengetikkan perintah :

(22)

Mengubah Data (Update)

Jika data sudah kadaluarsa, berikut perintah digunakan untuk merubah data. Struktur penulisan :

Update nama_tabel set nama_field_1=isi_baru_1,

nama_field_2=isi_baru_2,…,nama_field_n=isi_baru_n Where kriteria;

Contoh :

mengubah data mata kuliah ’Praktikum Sistem Operasi’ dengan sks = 2 dengan mengetikkan perintah:

Update matkul set nama=’Prak. Sistem Operasi’ where kode=’JFPB232’;

Lihat hasilnya dengan menampilkan isi tabel.

4.3 TUGAS

1. Buatlah sebuah tabel tugas seperti berikut :

Field Type Key Null

Nim int(10) Ya No

Nama Varchar(25) No Yes matkul Varchar(25) No Yes nilai Varchar(1) No Yes

Lihatlah struktur tabel dari pembuatan tabel tersebut, kemudian tuliskan hasilnnya. 2. Isikan data tabel dari tabel tersebut :

Nim Nama Matkul Nilai

2345 Rita Susilowati Sistem Operasi A 2346 Andi Nugroho Sistem Operasi B 2347 Slamet Widodo Sistem Operasi C 2348 Nike Astuti Sistem Operasi B 2349 Novi Yulianti Sistem Operasi A Tampilkan data tersebut ( semua data ), tuliskan hasilnya.

3. Dari tabel diatas tampilkan data Nim dan Matkul saja, tuliskan hasilnya

4. Tampilkan semua data diatas dengan diurutkan berdasarkan nilai secara ascending, tuliskan hasilnya.

(23)

5. Rubahlah data tabel tersebut menjadi seperti berikut :

Nim Nama Matkul Nilai

2345 Rita Susilowati Basis Data C 2346 Andi Nugroho Basis Data A 2347 Slamet Widodo Basis Data B 2348 Nike Astuti Basis Data C 2349 Novi Yulianti Basis Data B Tampilkan data tersebut ( semua data ), tuliskan hasilnya.

(24)

PRAKTIKUM 5

QUERY : MENAMPILKAN DATA 5.1 PRAKTIKUM

OPERATOR RELASIONAL

Operator yang digunakan untuk perbandingan antara dua buah nilai. Jenis dari operator ini adalah = , >, <, >=, <=, <>

Latihan : buatlah tabel mhs seperti dibawah ini Field Type Key Null Default Nim Varchar(10) Ya No Null

Nama Varchar(25) No Yes Null

Jk Varchar(1) No Yes L

Isikan datanya seperti contoh berikut :

Nim Nama Jk

J1F107001 Aria Marwan Putra L J1F107003 Rahmat Hidayatullah L J1F107006 Yuniar Rezekiani P J1F107007 Muhammad Hasmi L J1F107008 Ismi Yunita P

Untuk pengisian data dengan memasukkan data lebih dari satu/sekaligus dapat dilakukan dengan perintah :

mysql> INSERT INTO nama_tabel VALUES(isi_field_1_1,isi_field_2_1, ..,isi_field_n_1) , (isi_field_1_2,isi_field_2_2, ..,isi_field_n_2), ...;

mysql>INSERT INTO mhs VALUES(‘J1F107001’,'Aria Marwan Putra',’L’), (‘J1F107003’,'Rahmat Hidayatullah',’L’), (‘J1F107006’,'Yuniar Rezekiani',’P’); Tampilkan data yang mempunyai jenis kelamin (jk) = P dengan mengetikkan perintah : mysql> select * from mhs where Jk='P';

(25)

OPERATOR AND dan OR

And dan or menggabungkan dua tabel atau lebih kondisi pada klause where. Operator and akan menampilkan data jika semua kondisi yang diminta bernilai benar, sedangkan operator or akan menampilkan data jika ada kondisi yang benar. Rumus yang digunakan adalah : Select*from<nama tabel> where <nama field>=’<kondisi>’ and/or <nama field>=’<kondisi>

Latihan : buatlah tabel pegawai dengan data sebagai berikut : Tabel pegawai

KodePegawai NamaDepan Alamat Kota

01 Hasan Jl. Diponegoro 10 Yogyakarta

02 Adi Jl. A. Yani 233 Solo

03 Diana Jl. Merdeka 45 Medan

04 Ita Jl. Jend. Sudirman 3 Yogyakarta

Untuk menampilkan data dengan nama ita atau kota yogyakarta adalah :

Select * from pegawai where namadepan=’Ita’ or kota=’Yogyakarta’;

Operator and dan or dapat digunakan secara bersamaan, yaitu:

Select * from pegawai where (namadepan=’Ita’ or kota=’Yogyakarta’) and (alamat=’Jl. Jend. Sudirman 3’); Operator BETWEEN dan NOT BETWEEN

Operator between ini untuk menangani operasi “jangkauan”

Tambahkan tabel mhs diatas hingga menjadi tabel seperti contoh berikut : Field Type Key Null Default

Nim int(10) Ya No Null

Nama Varchar(25) No Yes Null Jk Varchar(1) No Yes L Tgl_lhr date no Yes Null

Nim Nama Jk Tgl_lhr

J1F107001 Aria Marwan Putra L ‘Tahun-bulan-tgl’ J1F107003 Rahmat Hidayatullah L ‘Tahun-bulan-tgl’ J1F107006 Yuniar Rezekiani P ‘Tahun-bulan-tgl’ J1F107007 Muhammad Hasmi L ‘Tahun-bulan-tgl’ J1F107008 Ismi Yunita P ‘Tahun-bulan-tgl’

(26)

mysql> select * from mhs where tgl_lhr between '1985-01-01' and '1990-12-29';

Menampilkan data dari tabel tersebut yang mempunyai nim J1F107002 s/d J1F107006, dengan mengetikkan perintah:

mysql> select * from mhs where nim between' J1F107002' and ' J1F107006'; Menampilkan data dari tabel tersebut yang lahir pada bulan 10, dengan mengetikkan perintah:

mysql> select * from mhs where tgl_lhr like ‘_ _ _ _-10-_ _'; Operator LIKE

Operator LIKE atau NOT LIKE sangat bermanfaat dalam mencari suatu data. Operasi ini digunakan dengan menyebutkan tanda wildcard berupa garis bawah (_) atau (%). Tanda garis bawah (_) berarti sebuah karakter apa saja. Contoh a_u cocok dengan anu,aku,alu,abu dan tidak

cocok untuk andu,ambu ataupun allu. Tanda % berarti cocok dengan kata apa saja dan berapapun

panjangnya. contoh:

mysql> select nim,nama,alamat from mhs where nama like 'an%'; Menampilkan data dari tabel tersebut yang namanya mengandung nama an, dengan

mengetikkan perintah mysql> select * from mhs where nama like '%ar%';

(27)

5.2 TUGAS

1. Buatlah tabel barang seperti berikut :

Field Type Key Null

Kode int(10) Ya No

Nama Varchar(25) No No

Hrg float(6) No No

Isikan datanya sebagai berikut :

kode Nama Hrg AD Sabun mandi 3000 AE Sikat gigi 2000 AS Pasta gigi 1500 AR Shampo 9000 AT Sabun cuci 3000

Tampilkan data yang harganya lebih besar dari 3000, tuliskan hasilnya. 2. Tampilkan data yang mempunyai harga 3000, tuliskan hasilnya

3. Tampilkan data yang mempunyai harga antara 2000 – 3000, tuliskan hasilnya

4. Tampilkan data yang namanya mengandung kata gigi dengan menggunakan operator LIKE, tuliskan hasilnya!

5. Buatlah tabel barang dengan data sebagai berikut : No KodeBar

ang

Nama Harga

1 AD01 Mie instant rebus 1000

2 AD02 Mie instant goreng 1500

3 AD03 Sabun mandi 1000

4 AD04 Sabun cuci 500

5 AD05 Sikat gigi 1500

6 AD06 Pasta gigi 1500

a. Tampilkan data yang namanya sabun cuci atau barang yang harganya lebih besar dari 1000, tuliskan hasilnya

b. Dari tabel diatas tampilkan data yang namanya sabun mandi atau harganya 1000,

tuliskan hasilnya

c. Dari tabel diatas tampilkan data yang namanya sabun mandi atau barang-barang

(28)

PRAKTIKUM 6

QUERY : PENGGABUNGAN TABEL I

6.1 PENDAHULUAN

MySQL mempunyai kemampuan untuk menggabungkan dua tabel atau lebih guna mendapatkan informasi yang diinginkan. Proses yang dilakukan dengan nama JOIN. Dalam penggabungan dari beberapa tabel (join) ada beberapa hal yang perlu diperhatian, antara lain :

1. Setiap kolom disebutkan dengan bentuk,

2. tabel-tabel yang dilibatkan dalam query perlu disebutkan dalam Klausa FORM dengan antar tabel dipisah oleh koma.

3. Kondisi dalam WHERE menetukan macam join yang terbentuk Macam-macam bentuk Penggabungan (Join)

1. CROSS JOIN

Cross Join merupakan bentuk penggabungan yang paling sederhana, tanpa ada kondisi.  : SELECT field1,field2 FROM Tabel1 CROSS JOIN tabel2;

mysql> select * from mhs cross join ambilmatkul; 2. INNER JOIN

Hampir sama dengan cross join tetapi diikuti dengan kondisi  : SELECT Field FROM tabel1 INNER JOIN tabel 2 ON kondisi

mysql> select * from mhs inner join ambilmatkul on mhs.nim = ambilmatkul.nim;

3. STRAIGHT JOIN

Straight Join identik dengan inner join tetapi tidak mengenal klausa where  : SELECT field FROM Tabel1 STRAIGHT JOIN tabel2

4. LEFT JOIN

Left Join merupakan penggabungan tabel dimana data akan ditampilkan secara keseluruhan pada tabel pertama (kiri) namun record pada tabel kedua (kanan) yang kosong akan ditampilkan dengan isi NULL.

(29)

 : SELECT field FROM tabel1 LEFT JOIN tabel2 ON kondisi Contoh

mysql> select mhs.nim,nama,alamat,ambilmatkul.namamatkul,sks from mhs left join ambilmatkul on mhs.nim=ambilmatkul.nim;

5. RIGHT JOIN

Right Join memiliki fungsi yang bertolak belakang dengan left join, dimana right join akan menampilkan data secara keseluruhan pada tabel kedua (kanan), namun NULL pada tabel pertama (kiri).

 : SELECT field FROM tabel1 RIGHT JOIN tabel2 ON kondisi Contoh

mysql> select mhs.nim,nama,alamat,ambilmatkul.namamatkul,sks from mhs left join ambilmatkul on mhs.nim=ambilmatkul.nim.

6.2 PRAKTIKUM

Buatlah dua table berikut :

Tabel mhs; Tabel ambilmatkul;

Field Type Key Null

Nim int(10) Yes No Nama Varchar(25) No Yes Alamat Varchar(30) No Yes

Field Type Key Null Defaulr Ekstra

No Int(11) ya No Null Auto_increment Nim Int(10) No Yes Null

Kode varchar(20) No Yes Null Namamat

kul

Varchar(25) No Yes Null Sks float(6) No Yes 2

Isi dua tabel tersebut dengan data dibawah : No Nim kodematkul Namamatkul sks

1 2345 JFKB131 Sistem Operasi 2 2 2345 JFKK232 Basis Data 2 3 2346 JFKB131 Sistem Operasi 2 4 2347 JFKK232 Basis Data 2 5 2346 JFKK232 Basis Data 2 6 2348 JFKK232 Basis Data 2

(30)

7 2347 JFKB131 Sistem Operasi 2 8 2349 JFKB131 Sistem Operasi 2 9 2350 JFKB131 Sistem Operasi 2

Nim Nama Alamat

2345 Rita Susilowati Jl. A. Yani km.38 2346 Andi Nugroho Komp.antasari 2347 Slamet Widodo landasan ulin 2348 Nike Astuti Jl.cempaka 2349 Novi Yulianti Jl.pm nur

mysql> select mhs.nim,nama,alamat, ambilmatkul.namamatkul,sks from mhs,ambilmatkul where mhs.nim=ambilmatkul.nim;

Dari perintah diatas akan didapatkan tampilan data penggabungan antara table mhs dengan table ambilmatkul berikut:

Nim Nama Alamat Namamatkul Sks

2345 Rita Susilowati Jl. A. Yani km.38 Sistem Operasi 2 2346 Andi Nugroho komp.antasari Sistem Operasi 2 2347 Slamet Widodo landasan ulin Sistem Operasi 2 2349 Novi Yulianti jl.pm nur Sistem Operasi 2 2345 Rita Susilowati Jl. A. Yani km.38 Basis Data 2 2346 Andi Nugroho komp.antasari Basis Data 2 2347 Slamet Widodo landasan ulin Basis Data 2 2348 Nike Astuti jl.cempaka Basis Data 2

6.3 TUGAS

1. Buatlah tabel mhs dan nilai dengan data sebagai berikut, tampilkan data dari kedua tabel tersebut dan tuliskan hasilnya.

Tabel mhs

Nim Nama Alamat

1234 Andi Santoso Jl. A. Yani km.38 1235 Bunafit Yahya Komp.antasari 1236 Ike Ferina landasan ulin

1237 Riani jl.pm nur

(31)

1239 Marfaniatun Komp.antasari Tabel nilai

No Nim kodematkul Namamatkul Nilai

1 1234 JFKK132 Organisasi Komputer 75 2 1235 JFKK233 Alpro2 80 3 1236 JFPB152 Riset Operasi 85 4 1237 JFKK233 Alpro2 70 5 1238 JFKK132 Organisasi Komputer 75 6 1239 JFPB152 Riset Operasi 80 7 1234 JFKK131 Manajemen Proyek 80 8 1236 JFKK232 Basis Data 80 9 1238 JFKK232 Basis Data 80

2. Gabungkan tabel tersebut dengan menggunakan kelima metode join : metode inner join, right join, left join dan cross join kemudian tuliskan hasilnya

(32)

PRAKTIKUM 7

QUERY : PENGGABUNGAN TABEL II

7.1 Pengganbungan Dengan Kunci (key)

Pada praktikum sebelumnya kita menggabungkan beberapa tabel dengan Join, pada paraktikum kali ini kita akan menggabungkan beberapa tabel dengan menggunakan kunci. Tabel dalam basis data dapat dihubungkan satu sama lain menggunakan kunci. Kunci utama adalah sebuah kolom dengan nilai unik untuk masing-masing baris. Tujuannya adalah menggabungkan data antar tabel tanpa mengulangi semua data pada setiap tabel.

Rumus yang digunakan adalah :

select <nama tabel1.nama field>,<nama tabel2.nama field> from <nama tabel1, nama tabel2> where <nama tabel1.field kunci=nama tabel2.field kunci>

Latihan : buatlah tabel mhs dan tabel ambilmatkul dengan data sebagai berikut : Tabel mhs

Nim Nama Jk Tgl_lhr Alamat

J1F107001 Aria Marwan Putra L ‘Tahun-bulan-tgl’ [alamat mhs] J1F107003 Rahmat Hidayatullah L ‘Tahun-bulan-tgl’ [alamat mhs] J1F107006 Yuniar Rezekiani P ‘Tahun-bulan-tgl’ [alamat mhs] J1F107007 Muhammad Hasmi L ‘Tahun-bulan-tgl’ [alamat mhs] J1F107008 Ismi Yunita P ‘Tahun-bulan-tgl’ [alamat mhs]

Tabel ambilmatkul

nim kodematkul Namamatkul sks

J1F107001 JFKB131 Sistem Operasi 2 J1F107001 JFKK232 Basis Data 2 J1F107003 JFKB131 Sistem Operasi 2 J1F107006 JFKK232 Basis Data 2 J1F107003 JFKK232 Basis Data 2 J1F107007 JFKK232 Basis Data 2 J1F107006 JFKB131 Sistem Operasi 2

(33)

Kita akan menampilkan nama mahasiwa, alamat dan matakuliah beserta sksnya yang diambil oleh mahasiwa dengan menggabungkan dari kedua tabel. Ketikkan perintah sebagai berikut :

Select mhs.nama, mhs.alamat, ambilmatkul.namamatkul, ambilmatkul.sks from mhs, ambilmatkul where mhs.nim = ambilmatkul.nim; .

Kemudian untuk mengetahui siapa yang mengambil matakuliah basis data, maka rumus yang digunakan adalah : Select mhs.nama, mhs.alamat from mhs,

ambilmatkul where mhs.nim=ambilmatkul.nim and

ambilmatkul.namamatkul=’basis data’;. 7.2 Integritas Basis Data Pada Mysql

Membuat Tabel dengan Key dan Foreign Key

Mendefinisikan Key dan Foreign Key pada dua tabel yang berelasi dapat menjamin integritas basis data. Pada contoh ini akan dibuat dua buah tabel yaitu tabel mhs dan KTP. Dengan aturan seorang mahasiswa hanya mempunyai satu KTP.

Struktur kedua tabel tersebut adalah : Tabel mhs

+---+---+---+---+---+---+ | Field | Type | Null | Key | Default | Extra | +---+---+---+---+---+---+ | nim | varchar(11) | | PRI | 0 | | | nama | varchar(30) | YES | | NULL | | | jk | char(1) | YES | | L | |

| tgl_lhr | date | YES | | NULL | |

| alamat | varchar(30) | YES | | NULL | | +---+---+---+---+---+---+

Tabel ktp

+---+---+---+---+---+---+ | Field | Type | Null | Key | Default | Extra | +---+---+---+---+---+---+ | noktp | varchar(11) | | PRI | 0 | | | kota | varchar(11) | YES | | NULL | |

(34)

| nim | varchar(11) | | MUL | 0 | | +---+---+---+---+---+---+

Tabel mhs merupakan tabel induk dengan Primary Key nim, sedangkan nim pada tabel ktp merupakan Foreign Key yang mengacu pada tabel mhs. Untuk mendefinisikan kedua tabel tersebut perintah yang dipergunakan adalah:

CREATE TABLE mhs (

nim varchar(10) NOT NULL, nama VARCHAR(30),

jk CHAR(1) default ‘L’, tgl_lhr DATE,

alamat VARCHAR(30),

PRIMARY KEY (nim) ) TYPE = INNODB ;

CREATE TABLE ktp (

noktp varchar(10) NOT NULL, kota VARCHAR(30),

nim VARCHAR(10) NOT NULL, PRIMARY KEY(noktp),

INDEX (nim),

FOREIGN KEY (nim) REFERENCES mhs (nim) ) TYPE = INNODB;

Insert Data pada tabel

Untuk melakukan Insert data pada kedua tabel dengan perintah :

mysql>INSERT INTO mhs VALUES(‘J1F107001’,'Aria Marwan Putra',’L’,’0000-00-

00’,’Banjarbaru’),(‘J1F107003’,'Rahmat Hidayatullah',’L’,’0000-00-00’,

’Banjarbaru’),(‘J1F107006’,'Yuniar Rezekiani',’P’ ,’0000-00-00’, ’Banjarbaru’);

(35)

mysql>insert into ktp values('13100' , 'Banjarbaru' , ‘J1F107001’),('23343','Banjarbaru',

J1F107003’);

Insert data pada tabel ktp dengan data yang tidak ada pada tabel mhs

mysql>insert into ktp values ('131435','Banjarbaru', ‘J1F107102’),( '131446','Banjarbaru',

‘J1F107104’);

ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint f ails (`test/ktp`, CONSTRAINT `ktp_ibfk_1` FOREIGN KEY (`nim`) REFERENCES `mhs` ( `NIM`))

Insert data dengan nim J1F107102 dan J1F107104 pada tabel ktp tidak diijinkan karena nim mhs tersebut tidak terdapat pada tabel induknya (tabel mhs).

7.3 TUGAS

1. Buatlah tabel mhs dan ambilmatkul dengan data sebagai berikut: Tabel dosen:

Nip Nama Alamat

132326023 Andi Farmadi Banjarbaru 132326021 Andre Iskandar Banjarmasin 132326025 Radityo Adi Nugroho Banjarbaru 132317534 Heri Setiyoko Banjarmasin 132299505 Ichsan Ridwan Banjarbaru 132230133 Dewi Sri Susanti Banjarbaru Tabel ajarmatkul:

Nip KodeMatkul NamaMatkul Sks

132230133 JAKK131 Statistika Dasar 2

132299505 JFKK233 ALPRO2 3 132326025 JFKB131 Sistem Operasi 2 132326023 JFKK232 Basis Data 2 132326021 JFPB152 Riset Operasi 3 132317534 JFKK132 Organisasi Komputer 3 132326021 JFKB131 Sistem Operasi 2

Tampilkan Nip, nama dosen, Kode Mata Kuliah dan Nama Mata Kuliah, tuliskan hasilnya.

2. Dari tabel diatas tampilkan dosen yang mengajar mata kuliah Sistem Operasi dan Basis

(36)

Data, tuliskan hasilnya.

3. Dari tabel diatas tampilkan mata kuliah apa saja yang diajar oleh Heri Setiyoko, tuliskan hasilnya.

Gambar

Tabel pegawai
Tabel mhs
Tabel dalam basis data dapat dihubungkan satu sama lain menggunakan kunci. Kunci utama  adalah  sebuah  kolom  dengan  nilai  unik  untuk  masing-masing  baris
Tabel mhs
+2

Referensi

Dokumen terkait