MATERI PERANCANGAN BASIS DATA
Diajukan sebagai tugas mata kuliah Perancangan Basis Data
Disusun oleh:
Tinawati Pasaribu
2011
1
Membuat Basis Data dan Mendesain Tabel Di Microsoft Access
• Pendahuluan
Pengertian Basis Data
Basis Data (Database) dapat dibayangkan sebagai sebuah lemari atau tempat penyimpanan arsip yang dapat diatur dan di kelolah sendiri. Atau kumpulan informasi yang terorganisasi dan di sajikan untuk tujuan khusus. Sedangkan sistem basis data merupakan perpaduan antara basis data dan sistem manajemen basis data (DBMS). DBMS adalah software yang menangani semua akses ke basis data.
Contoh dari DBMS yaitu Microsoft SQL, Server 2000, Oracle, Mysql, Interbase, Paradox, Microsoft Access, dan lain‐lain.
Komponen‐komponen basis data antara lain :
• Entitas
Entitas digunakan untuk menerapkan integritas pada tingkat Entity (Tabel), agar setiap Instances (Record/Baris) pada suatu Entity bersifat unique yang disebut dengan Primary Key sehingga dapat dibedakan antara yang satu dengan yang lain.
• Atribute
Setiap entitas pasti memiliki atribute yang mendeskrifsikan karakteristik dari entitas tersebut. Penentuan/pemilihan atribute‐atribute yang relevan bagi sebuah entitas merupakan hal penting dalam pembentukan model data.
• Normalisasi
Normalisasi adalah proses penyusunan tabel‐tabel yang tidak redudan (dobel), yang dapat menyebabkan anomali pada saat terjadi operasi manipulasi data seperti tambah, ubah, dan hapus. Anomali yaitu proses basis data yang memberikan efek samping yang tidak diharapkan (misalnya menyebabkan ketidak konsistenan data atau membuat sesuatu data menjadi hilang ketika data lain dihapus).
Merupakan suatu proses pengelompokan data menjadi tabel yang menunjukan entity dan relasinya. Kolom dari tabel menunjukan attribut dari file, attribut ini menunjukan item data atau field data yang disebut domain. Sehingga masing‐masing dari record di dalam data disebut tuple atau record ini dapat mempunyai satu kunci unik disebut field kunci (key field).
Ada berapa macam key yang dapat diterapkan pada suatu tabel, yaitu:
a. Super Key
Merupakan himpunan dari satu atau lebih entitas yang dapat digunakan untuk mengidentifikasikan secara unik sebuah entitas dalam entitas set.
2
b. Kunci Calon (Candidate Key)
Merupakan kumpulan atribut minimal yang dapat membedakan setiap baris data dalam sebuah tabel secara unik. Sebuah candidate key tidak boleh berisi atribut atau kumpulan super key yang lain.
c. Kunci Utama (Primary Key)
Yaitu satu atribut atau satu set minimal atribut yang tidak hanya mengidentifikasi secara unik suatu kejadian spesifik tapi juga dapat mewakili setiap kejadian dari suatu entity.
d. Kunci Alternatif (Alternate Key)
Merupakan kunci candidate yang tidak dipakai sebagai primary key. Sering kali kunci alternatif ini dipakai sebagai kunci pengurutan dalam pembuatan laporan.
e. Kunci Tamu (Foreign Key)
Yaitu satu atribut atau satu set minimal atribut yang melengkapi satu hubungan yang menunjukan ke induknya. Kunci tamu ditempatkan pada entity anak dan sama dengan induk kunci utama yang direlasikan.
Bentuk‐bentuk normalisas
• Bentuk Tidak Normal
Bentuk ini merupakan kumpulan data yang akan direkam, tidak ada keharusan mengikuti format tertentu, dapat saja tidak lengkap dan terduplikasi. Data dikumpulkan apa adanya sesuai keadaannya.
• Bentuk Normal Pertama(1 NF)
Sebuah tabel disebut 1 NF jika :
Tidak ada baris yang terduplikat dalam tabel tersebut
Masing‐masing cell bernilai tunggal
• Bentuk Normal Kedua(2 NF)
Bentuk normal kedua (2NF) terpenuhi jika pada sebuah tabel semua atribut yang tidak termasuk dalam primary key memiliki ketergantungan fungsional pada primary key secara utuh.
• Bentuk Normal Ketiga (3 NF)
Menghilangkan anomali‐anomali hasil dari ketergantungan fungsional
• Bentuk Normal Keempat (4 NF)
• BCNF (Boyce Code Normal Form)
• Implementasi Perancangan Basis Data
3
Mengenal Lingkungan Kerja Ms. Access 2003/2007
Microsoft Access (atau Microsoft Office Access) adalah sebuah program aplikasi basis data dengan model relasional. Aplikasi ini menggunakan mesin basis data Microsoft jet Database Engine, dan juga menggunakan tampilan grafis yang intuitif sehingga memudahkan pengguna. Versi terakhir adalah Microsoft Office Access 2010 yang termasuk ke dalam Microsoft Office System 2010.
Microsoft Access dapat menggunakan data yang disimpan di dalam format Microsoft Access, Microsoft Jet Database Engine, Microsoft SQL Server, Oracle Database, atau semua kontainer basis data yang mendukung standar ODBC.
Susunan/hierarki pada access :
• Character
• Field
• Record
• File
• Database
• Membuat Basis Data Di Access
• Mengaktifkan Ms. Access
Klik menu Start all program Ms. Office Ms. Access
• Membuat Database
Klik file New Pilih pada task pane Blank Database
Tampil Jendela File New Database
Ketik nama database
Klik Tombol Create
Kemudian Tampil Jendela Database
4
Object yang berada pada jendela database yaitu sebagai berikut :
Tables
Merupakan objek utama dalam sebuah file database sekaligus objek pertama yang harus dibuat karena didalam tabel inilah seluruh data‐data yang dibutuhkan disimpan
Queries
Merupakan objek yang berfungsi untuk menampilkan, mengubah dan menganalisa data
Forms
Merupakan objek yang digunakan untuk menampilkan data yang tersimpan dalam tabel (untuk pembuatan user interface)
Reports
Merupakan objek yang digunakan untuk merangkum dan mencetak data atau suatu laporan secara efektif
Pages
Page merupakan objek yang digunakan untuk mengakses data diweb secara langsung (online)
Macro
Merupakan objek yang digunakan untuk mengoptimasi sekaligus menghemat waktu yang diperlukan dalam pembuatan aplikasi database. Dengan kata lain Macro adalah kumpulan beberapa perintah, yang tersusun dalam sebuah daftar.
Modules
Merupakan objek yang digunakan untuk menuliskan kode program atau prosedur yang dapat digunakan untuk program aplikasi
5
Pertemuan 1 Buatlah Database dengan nama Kampus
• Membuat Tabel
Klik tab tables pada objects/jendela access
Create table in design view
Double klik create table in design view lalu buatlah tabel sesuai dengan struktur tabelnya
data pada tabel
save tabel : filesaveketik nama tabel, contoh : mahasiwa
Aktifkan database kampus, kemudian buat tabel‐tabel dengan struktur dibawah ini :
Tabel Mahasiswa
Field Name Data Type Size Keterangan Nim Text 8 Primary key Nama_mahasiswa Text 20 Tempat_lahir Text 20 Tgl_lahir Date/Time Medium Date Alamat Text 30 Isikan data sebanyak 10 record, dengan contoh pengisian sebagai berikut :
Nim Nama_mahasiswa Tempat_lahir Tgl_lahir Alamat 12102222 Satrio Arguna Bekasi 09‐Okt‐2009 Jl Bintara 14 Lanjutkan pengisian hingga 10 record
Tabel Dosen
Field Name Data Type Size Keterangan Nip_dosen Text 8 Primary key Nama_dosen Text 20 Mata_kuliah Text 20 Jadwal_mengajar Text 10 Nim Text 8 Lookup
DisplaycontrolComboBox Row SourceTypeTable/Query Row Sourcetabel_mahasiswa
Isikan data sebanyak 10 record, dengan contoh pengisian sebagai berikut :
Nip_dosen Nama_dosen Mata_kuliah Jadwal_mengajar Nim 200803025 Tinawati Perancangan Basis
Data Pagi 12102222
Lanjutkan pengisian hingga 10 record
Ket : Untuk Nim Tinggal di pilih saja
6
Tebel Kelas
Field Name Data Type Size Keterangan Kode_kelas Text 8 Primary key Nip_dosen Text 8 Lookup
DisplaycontrolComboBox Row SourceTypeTable/Query Row Sourcetabel_dosen
Isikan data sebanyak 10 record, dengan contoh pengisian sebagai berikut :
Kode_kelas Nip_dosen 12.2B.07 200803025 Lanjutkan pengisian hingga 10 record
Ket : Untuk Nip dosen Tinggal di pilih saja
• Membuat Relasi Tabel
Untuk membuat relasi tabel :
Klik menu Tool Relationship
Kemudian tampil jendela show table
Kemudian sorot nama tabel dan add satu‐persatu tabel dan susun seperti di bawah ini :
• Membuat garis relasi antar tabel :
Tarik garis diagonal dari field Nip_dosen(primary key) pada tabel dosen ke field Nip_dosen pada tabel kelas
7
Hingga tampil jendela edit relationships
Cheklist Enforce Referential Intergity, Cascade Update Related Fields, Cascade Deleted Related Record
Klik Create
Lanjutkan langkah pembuatan hingga terbentuk relasi seperti di bawah ini
Pertemuan 2 Buatlah Database koperasi, kemudian buat tabel‐tabel dengan struktur dibawah ini :
Buatlah Database dengan nama Koperasi
• Membuat Tabel
Klik tab tables pada objects/jendela access
Create table in design view
Double klik create table in design view lalu buatlah tabel sesuai dengan struktur tabelnya
data pada tabel
save tabel : filesaveketik nama tabel, contoh : barang
Keterangan : Buat Relationship dahulu baru memasukan isi record
8
Tabel Barang
Field Name Data Type Size Keterangan Kode_barang Text 6 Primary key Nama_barang Text 30 Satuan Text 8 Harga Currency Isikan data sebanyak 5 record, dengan contoh pengisian sebagai berikut :
Kode_barang Nama_barang Satuan Harga NC3001 Nescape Cream Isi 30 PACK 24000 SG0001 Sabun Mandi Giv PCS 1500 Lanjutkan pengisian hingga 5 record
Tabel Karyawan
Field Name Data Type Size Keterangan NIK Text 9 Primary key Nama_karyawan Text 30 Bagian Text 10 Isikan data sebanyak 5 record, dengan contoh pengisian sebagai berikut :
NIK Nama_karyawan Bagian 200803012 SATRIO PERSONALIA 200803088 ARGUNA ADMIN Lanjutkan pengisian hingga 5 record
Tabel Header_penjualan
Field Name Data Type Size Keterangan No_fak Text 5 Primary key Tgl_fak Date/time Long date NIK Text 9 Lookup
DisplaycontrolComboBox Row SourceTypeTable/Query Row Sourcetabel_karyawan
Isikan data sebanyak 5 record, dengan contoh pengisian sebagai berikut :
No_fak Tgl_fak NIK F0001 17 Maret 2011 200803012 F0002 18 Maret 2011 200803088 Lanjutkan pengisian hingga 5 record
Tabel Detail_penjualan
Field Name Data Type
Size Keterangan
No_fak Text 5 Foreign Key
9
Kode_barang Text 6 Foreign Key Lookup DisplaycontrolComboBox Row SourceTypeTable/Query Row Sourcetabel_barang
Jumlah number Long integer Isikan data sebanyak 5 record, dengan contoh pengisian sebagai berikut :
No_fak Kode_barang Jumlah F0001 NC3001 2 F0002 SG0001 3 Lanjutkan pengisian hingga 5 record
Membuat Relasi Tabel
Untuk membuat relasi tabel :
Klik menu Tool Relationship
Kemudian tampil jendela show table
Kemudian sorot nama tabel dan add satu‐persatu tabel dan susun seperti di bawah ini :
10
• Membuat garis relasi antar tabel :
Tarik garis diagonal dari field Nip_dosen(primary key) pada tabel dosen ke field Nip_dosen pada tabel kelas
Hingga tampil jendela edit relationships
• Membuat Query
Query adalah suatu objek database yang dapat digunakan untuk menampilkan, menyunting atau manganalisa suatu data dengan memberikan baris‐baris perintah tertentu.
Pada aplikasi ini sudah dilengkapi dengan Struktur Query Languange(SQL)yang menjadi standar bahasa dalam mengelolah database.
Dengan SQL kita dapat mempersingkat penulisan listing program yang panjang karena pada setiap perintahnya dapat mencakup banyak perintah sekaligus.
Query juga dapat digunakan untuk bekerja dengan data lebih dari dua tabel dengan mudah.
Langkah Membuat Query
• Klik tab Queries pada objects
• Double klik create query in Design View
• Tampil jendela show table
11
• Sorot nama tabel kemudia klik add hingga tampil seperti di bawah ini :
• Keterangan
Field : Nama field yang ingin ditampilkan
Table : Nama tabel dari field tersebut
Sort : Mengurutkan data hasil query
Show : Mengatur field ditampilkan atau tidak
Criteria : Syarat dari data yang ingin ditampilkan
• Jika ingin menggunakan seluruh field dalam tabel tersebut maka kita hanya klik dan drop tanda * pada tabel barang ke dalam baris field
• Terdapat tiga pilihan pada toolbar view antara lain :
• Design View : untuk menampilkan desain tabel query
• Datasheet View : untuk menampilkan data hasil query
• SQL View : untuk membuat query dengan script SQL
Contoh : SELECT * FROM barang :
(dengan kata lain perintah SELECT * digunakan untuk menampilkan seluruh data pada tabel sedangkan FROM barang digunakan untuk memperjelas data dari tabel mana yang akan di pakai atau ditampilkan).
Pembuatan Query
Buatlah query, sebagai berikut :
Field Sumber Tabel Kode_barang Barang Nama_barang Barang
12
Jalankan query dengan mengklik tanda seru ! pada icon toolbar
Jika ingin menampilkan salah satu data barang saja, sebelum menjalankan kita dapat mengetik kode yang ingin ditampilkan pada baris criteria pada kolom kode_barang.
Contoh : Menampilkan data barang dengan kode barang “NC3001”
Kemudian jalankan query melalui tampilan datasheet dan jalankan melalui SQL View untuk melihat sintaks SQL yang terbentuk
Berikut sintaks SQL yang ditampilkan
SELECT nama tabel.nama field,nama tabel.nama field,........
FROM nama tabel;
SELECT barang.kode_barang, barang.nama_barang
FROM barang
WHERE (((barang.kode_barang)=”NC3001”));
Latihan 1 :
Buka database koperasi, buatlah Query dari tabel Header_penjualan dan tabel karyawan
dengan menggunakan sintaks SQL melalui SQL View pada tab query
Field Sumber Tabel NIK Header_penjualan Nama_karyawan Karyawan Bagian Karyawan No_fak Header_penjualan Tgl_fak Header_penjualan Tampilkan data pembelian karyawan dengan NIK 200803025 dengan perintah select
Simpan dengan nama query_dt_beli_karyawan
Latihan 2:
Buatlah query dari tabel barang dan detail_penjualan
Field Sumber Tabel No_fak Detail_penjualan Kode_barang Detail_penjualan Nama_barang Barang Satuan Barang
13
Harga Barang Jumlah Detail_penjualan Total Total:[harga]+[jumlah]Diskon Ekspresi Bonus Ekspresi
Diskon
Jika total pembelian > 50000 mendapat diskon 5% dari total
Jika total pembelian > 100000 mendapat diskon 10% total
Selain dari itu tidak mendapat diskon
Bonus
Jika total pembelian > 100000 mendapat bonus 1 pcs Sunlight 400 ml
Selain dari itu tidak mendapat bonus
Pertemuan 3 Sintak – sintak SQL
NAMA FUNGSI SELECT Untuk menampilkan seluruh data pada tabel FROM Untuk memperjelas data dari tabel mana yang akan di pakai atau
di tampilkan INNER JOIN Untuk menyatukan dua tabel dalam satu query CREATE(DDL) Untuk membuat tabel ALTER(DDL) Untuk merubah ADD(DDL) Untuk menambah DROP(DDL) Untuk menghapus INSERT(DML) Untuk menyisipkan, memasukan, atau menyimpan data dari luar
sistem kedalam database SELECT(DML) Untuk membentuk tabel baru dengan cara
mengcopy(backup)seluruh data dari tabel aktif UPDATE(DML) Untuk mengubah satu atau lebih data field yang terdapat pada
satu atau lebih record DELETE(DML) Untuk menghapus satu atau beberapa record dari satu tabel
Query DDL (Data Definition Language)
Data Definition Language (DDL) merupakan sub bahasa SQL yang berfungsi mendefinisikan database dan tabel. Karena di accses perintah DDL ini dapat digunakan dalam mendefinisikan tabel saja. Perintah yang digunakan antaranya : CREATE, ALTER, dan DROP.
14
Dengan menggunakan ketiga perintah tersebut kita sudah dapat membangun struktur data dengan lengkap.
CREATE
BU :
Create Table nama_tabel (
Kolom_1 tipe(panjang),
Kolom_2 tipe(panjang),
Kolom_n tipe(panjang))
LATIHAN CREATE
Sebelumnya buat dahulu database baru dengan nama rental_mobil, lalu setelah masuk kedalam jendela accses:
Pilih QueriesCreate query in Design view
Akan tampil show tableclose show tablenyalalu pilih SQL di menu bar
lalu keluar jendela sqlnya
15
Membuat tabel mobil dengan mengetikan script SQL berikut pada view di query
create table mobil (
nopol text(8) not null,
nama_pemilik text(20) not null,
alamat text(35) not null,
merk text(15) not null,
type text(15) not null,
jenis text(15) not null,
tahun_pembuatan number,
warna text(15),
primary key (nopol))
atau
create table mobil (
nopol text(8) not null primary key,
nama_pemilik text(20) not null,
alamat text(35) not null,
merk text(15) not null,
type text(15) not null,
jenis text(15) not null,
tahun_pembuatan number,
warna text(15))
Keterangan :
Nopol text(8) not null primary key
Pada field nopol dan nama_pemilik data tidak boleh kosong (not null)
Dan field nopol juga merupakan kunci utama (primary key)
Kemudian untuk menjalankan kita dapat mengklik run/tanda seru dari icon toolbar
Untuk melihatnya pada object klik tab tables dan double kilk nama tabel mobil
16
Membuat tabel pelanggan dengan mengetikan script SQL berikut pada view di query
create table pelanggan (
kode_pelanggan text(4) not null primary key,
nama_pemilik text(20) not null,
alamat text(35) not null,
telp text(15))
ALTER
BU :
Alter table nama_tabel[spesifikasi perubahan]
Latihan Alter
Menambahkan field no rangka pada tabel mobil
BU :
Alter table nama_tabel add nama_field tipe (panjang);
Sintaks SQL :
Alter table mobil add no_rangka text(15);
Merubah ukuran dan tipe dari field no_rangka pada tabel mobil
BU :
Alter table nama_tabel alter column nama_field tipe;
Sintaks SQL :
Alter table mobil alter column no_rangka number;
Menghapus field no_rangka dari tabel mobil
BU :
Alter table nama_tabel drop nama_field;
Sintaks SQL :
Alter table mobil drop no_rangka;
DROP
17
BU :
Drop table nama tabel;
Menghapus tabel pelanggan
Sintaks SQL :
Drop table pelanggan
Pertemuan 4 QUERY DML (Data Manipulation Language)
Data Manipulation Language (DML) merupakan sub bahasa SQL yang berfungsi memanipulasi data yang ada di dalam basisdata atau database. Perintah yang termasuk didalam DML adalah INSERT, SELECT, UPDATE, dan DELETE.
INSERT
Berfungsi untuk menyisipkan, mamasukan, atau menyimpan data dari luar sistem kedalam database.
BU :
INSERT INTO nama_tabel(nama_field1,nama_field2,.......,nama_field n)
VALUES(value1,value2,.......,value n)
Atau
INSERT INTO nama_tabel
VALUES(value1,value2,........,value n)
Sintaks SQL :
INSERT INTO pelanggan
VALUES(“PL01”,”Ayu”,”Jl.Joglo Raya”,”021999888”)
Lanjutkan pengisian hingga 5 record pada tabel pelanggan
INSERT INTO mobil
VALUES(“B0011TWP”,”Tita”,”Jl.Coba 2”,”Honda”,”Xenia”,”Sport”,”2011”,”Hitam”)
Lanjutkan pengisian hingga 5 record pada tabel mobil
18
SELECT
Perintah select berfungsi untuk membentuk tabel baru dengan cara mengcopy (backup) seluruh data dari tabel aktif.
BU :
SELECT nama_field1,nama_field2,.....,nama_field n
INTO nama_tabel_baru
FROM nama_tabel_aktif
Atau
SELECT *
INTO nama_tabel_baru
FROM nama_tabel_aktif
Sintaks SQL:
SELECT *
INFO mobil_baru
FROM mobil
UPDATE
Perintah update berfungsi untuk mengubah satu atau lebih data field yang terdapat pada satu atau lebih record.
BU :
UPDATE nama_tabel
SET field=value
WHERE kriteria
Atau
UPDATE nama_tabel
SET field1=value1,field2=value2,......,fieldn=valuen
WHERE kriteria
19
Sintaks SQL:
UPDATE pelanggan
SET nama =”Satrio”
WHERE kode_pelanggan=”PL01”
DELETE
Berfungsi untuk menghapus satu atau beberapa record dari suatu tabel
BU :
DELETE *
FROM nama_tabel
WHERE kriteria
Sintaks SQL :
DELETE *
FROM pelanggan
WHERE kode_pelanggan=”pl01”
Pertemuan 5 Pembuatan Form
Form merupakan objek yang digunakan untuk menampilkan data yang tersimpan dalam tabel (untuk pembuatan user interface) dengan tampilan form
Membuat Form Data Pelanggan
Berdasarkan database Rental_mobil yang telah dibuat, selanjutnya akan kita buat Form dan Subformnya.
Langkah‐langkah membuat form :
• Klik Tab Form pada Object
Double Klik pada Create• Form by Using Wizard, tampil Form Wizard seperti berikut :
20
• fields kabagian selected field Pindahkan fields pada available
• Pilih Next lalu, Pilih layout yang diinginkan untuk form ang akan dibuat y
• Lalu Pilih Next, lalu pilih style yang diinginkan untuk form yang akan dibuat
21
• Lalu pilih Next, ketikan nama form dan pilih Modify the form’s design
• Lalu pilih Finish
• Maka Akan tampil Form Pelanggan
Cara Membuat Button
• Klik Button di menubar, maka akan tampil Command Button Wizard
Record Operations, lalu Actions : Add New Record • Pilih Categories :
22
• Pilih Next, maka akan tampil contoh Button, lalu pilih Text dan tuliskan nama ButtonNya
• Pilih Next, maka akan tampil name untuk penyimpanannya
• Pilih Finish, maka akan tampil Button tambah kedalam Form Pelanggan
23
• Buat Button Tambah, Button Simpan, Button Hapus, Button Close
• Buat database Perpustakaan
at Tabel menggunakan Sintak SQL
bel Anggota
Latihan :
• Bu
Ta
Panjang KeterNama_Field Type angan No_anggota Text 5 PK Nama Text 15 Alamat Text 25 Telp Text 15 Pekerjaan Text 15 Jenis Kelamin Text 1
Tabel Buku
Nama_Field Type Panjang Keterangan Kd_buku Text 5 PK Judul Text 20 Pengarang Text 20 Penerbit Text 20 Jenis_buku Text 20 • Masuka
masing tabeln record ke Tabel Anggota Tabel Buku isi kan record ke masing‐
m‐form ke ‐masing tabel
dalam dan 5
• Buat For masing
24
Tugas UTS
Buat Database apa saja minimal 3 tabel yang saling berhubungan/relationsip menggunakan sintak SQL (DDL dan DML)
menggunakan DDL dan lakukan perintah‐perintah(Create, Alter Add, Alter Drop, )
Setiap Perintah disimpan
• Buat Form‐formnya dari semua tabel
tidak boleh sama databasenya dan tabelnya, jika sama dengan temannya akan di beri nilai
Dikumpulkan saat Quis
L
• Pengenalan MySql dan L
Mysql adalah sebuah program r yang mampu menerima dan kan datanya dengan sangat cepat, multi user serta menggunakan perintah standar
(Structure Query Language). MySql merupakan sebuah database server yang free rtinya kita bebas menggunakan database ini untuk keperluan pribadi atau usaha tanpa
akan hasil ciptaan dari Michael “Monty” tahun 1995 mereka lalu mendirikan
•
• BuatDrop
• Isi recordnya tiap tabel minimal 5 record menggunakan MDL dan lakukan perintah‐perintah (Insert, Select, Update dan Delete)
• dan sintaknya di print
• Programnya di simpan di CD
• Tiap mahasiswa 0
• (telat tidak diterima)
Pertemuan 9 MySQ
ingkungan Kerja
database servemengirimSQLamembeli atau membayar lisensinya. Mysql merupWidenius, David Axmark, dan Allan Larson. Padaperusahaan bernama MySQL AB di Swedia. Tujuan awal diciptakannya MySQL yaitu untuk mengembangkan aplikasi web yang akan digunakan oleh salah satu klien MySQL AB. Database MySQL, biasa kita baca mai‐es‐ki‐el merupakan perangkat lunak database yang berbentuk database relasional atau dalam bahasa basis data sering disebut dengan Relation Database Management System (RDBMS) yang menggunakan suatu bahasa permintaan bernama SQL. Perbedaan antara MySQL dan SQL, MySQL adalah program database server sedangkan SQL adalah bahasa yang digunakan didalamnya.
• Kelebihan MySQL
MySQL adalah sebuah database server dapat juga berperan sebagai clien sehingga disebut database client/server yang open source dapat berjalan pada OS manapun dengan platform Windows maupun linux.
25
1 Penggunaan MySQL dengan Command Prompt
Dalam modul ini menggunakan paket program PHPTriad, dengan sistem operasi
.3.
Windows XP. Paket PHPTriad biasanya di‐instal pada direktori atau folder C:\ Apache2Triad. arena PHPTriad merupakan kumpulan paket dari Apache(Versi 1.3.23), MySQL (Versi
dan software tersebut akan disimpan dir Sedangkan
ntuk fil
K5.0.18) PHP (Versi 4.1.1), sehingga masing‐masingpada ektori khusus. Untuk MySQL ada pada direktori C:\apache2triad\mysql.u e‐file eksekusinya (file biner) ada di direktori C:\apache2triad\mysql\bin.
Untuk dapat menggunakan mysql terlebih dahulu aktifkan dengan cara sebagai berikut :
• Pilih menu Start‐All Programs Accessories kemudian Pilih Command Prompt. Selanjutnya akan tampil jendela sebagai berikut :
• Kemudian pada command prompt tersebut ketikan perintah sebagai berikut: C:\User\..>cd..
C:\>
iad
ache2triad>
mysql
ysql>
bin
in>
C:\cd apache2tr
C:\ap
C:\apache2triad>cd
C:\apache2triad\m
C:\apache2triad\mysql>cd
C:\apache2triad\mysql\b
26
• Kemudian jalankan program mysql client dengan mengetikan mysql pada command prompt.
e2triad\mysql\bin>mysql
ah tersebut berhasil, maka pada layar akan tampil ucapan selamat datang
Ketikan :
C:\apach
Bila perintdari mysql :
Anda sekarang sudah berhasil menjalankan mysql dan berhasil masuk kedalam system mysql. Pesan tersebut berisi ucapan selamat datang, pemberitahuan tentang penulisan perintah MySql yang (tidak) selalu diakhiri dengan ymbol. Versi MySql
Ketera
Mkdir
nya untuk pidah direktori
syang kita gunakan (3.4) dan connection id berupa nomor urut kita masuk ke server.
ngan Perintah Sederhana di Command Prompt
nama_direktorinya untuk membuat direktori baru
cls untuk membersihkan layar
exit untuk keluar
cd.. untuk keluar dari direktori
cd nama_direktori
help untuk bantuan
27
• Pengantar Sintak Dasar
MySql merupakan bahasa pemograman database dimana penulisan sintaknya tidak serumit bahasa pemrograman lainnya seperti java, C++, dan sebagainya. Satu hal yang perlu
MySQL di Dos‐Prompt harus selalu diakhiri dengan anda tit
Mysql>show databases;
kut :
diingat bahwa setiap penulisan scriptt ik koma (;). Didalam source MySQL yang terinstal secara default telah terisi sebuah database yang bernama mysql dan information_schema.
Untuk dapat menampilkan apa saja nama database yang telah ada maupun yang akan kita buat, gunakan sintak :
Perhatikan contoh beri
Contoh diatas menunjukan bahwa dengan menggunakan sintak show databases;
Berarti kita dapat menampilkan seluruh nama database yang ada. Sintak untuk bisa masuk kedalam salah satu system database tersebut adalah :
ma;
changed
Mysql>use nama_database;
Contoh :
Mysql>use information_sche
Database
Perhatikan gambar dibawah ini:
28
Dengan mengetikan sintak use information_schema; dan keluar kalimat database change, berarti kita telah masuk ke dalam database mysql yang telah ada. Di setiap database tentu ada terdapat beberapa tabel yang menjadi komponen dasar sebuah database. Sintak untuk menampilkan seluruh tabel yang telah ada di dalam database mysql adalah :
Mysql>show tables;
Perhatikan gambar di bawah ini :
Dari gambar diatas, kita dapat melihat bahwa didalam database mysql sudah ada beberapa tabel yang telah default dari mysql nya sendiri. Didalam database tersebut ada tabel‐tabel, dimana tiap tabelnya memiliki fungsi tertentu yang dapat diakses oleh tiap user. Database mysql ini biasanya sering digunakan bagi webmaster sebagai tempat penyimpanan data, karena tabel‐tabel yang telah ada dan tabel yang dibutuhkan sebagai besar telah terpenuhi.
Keterangan :
Mysql>exit; untuk keluar dari mysql
29
Latihan :
• Lihat database
Masuk dan lihat database
Lihat tabel mysql
Data Definition Languange(DDL)
Penggunaan Data Definition
Mysql>show databases;
• mysql
Mysql>use mysql;
Database changed
•
Mysql>show tables;
Pertemuan 10 Data Definition Languange
•
Skema basis data dispesifikasikan oleh sekumpulan definisi dengan sebuah bahasa khusus yang disebut data‐definition language (DDL). Hasil kompilasi DDL berupa tabel‐tabel yang disimpan dalam sebuah file, disebut data dictionary (kamus data) atau data directory. Kamus data adalah sebuah file yang berisi metadata. File ini yang dikonsultasi sebelum data yang sebenarnya dibaca atau dimodifikasi oleh system basis data.
• Languange(DDL)
• Membuat Database Baru
Database adalah sebuah media utama yang harus dibuat dalam membangun sebuah basis data agar nantinya dapat diletakkan beberapa tabel dengan field‐fieldnya, bila kita lihat dalam mysql database hanyalah semacam direktori saja, berbeda jika dibandingkan dengan program database yang berbentuk visual seperti access ataupun paradox.
Pada mysql database akan disimpan dan dikumpulkan pada sebuah direktori khusus yang bernama data, dalam direktori data semua sub direktori yang ada didalamnya disebut database. Berikut tampilan struktur direktori mysql.
Untuk menciptakan database baru pada mysql syntak penulisan adalah sebagai berikut :
Syntak :
Create database nama_database;
Akan tampil
30
Query Ok, 1 row affected (0.06 sec)
Contoh :
Create database medis;
Akan tampil
Query Ok, 1 row affected (0.06 sec)
Kemudian ketikan perintah berikut :
Syntak :
show databases; untuk melihat apakah database medis sudah di buat
Untuk menghilangkan database atau menghapus gunakan perintah drop
Syntak :
Drop database nama_database;
Contoh :
Drop database medis;
Akan tampil
Query Ok, 0 row affected (0.02 sec)
31
Kemudian lihat, gunakan perintah
Show databases;
Latihan 1 :
• nama medis Buat Database dengan
Buka dan lihat database• medis
Aktifkan database sebagai berikut :
Syntak :
Use nama_database;
Contoh :
Use medis;
Tampil
Database changed
32
Setelah masuk dan diizinkan melakukan operasi, lalu buat sebuah tabel.
Untuk membuat tabel baru di dalam database, ketikan sebagai berikut :
Syntak :
Create table nama_table(field1 type(panjang) not null,
field2 type(panjang)not null,....... ,
fieldn type(panjang));
Tabel Dokter
Nama Field Type Size Keterangan Kd_dok Chart 4 Primary Key Nm_dok Varchar 25 Spesialis Varchar 15 Alamat Varchar 30 Contoh:
Create table dokter(kd_dok char(4)not null,
Nm_dok varchar(25)not null,
Spesialis varchar(15)not null,
Alamat varchar(30),primary key(kd_dok));
33
Kemudian untuk melihat table, gunakan perintah :
Syntak :
Show tables;
Untuk melihat isi table, gunakan perintah :
Syntak :
Desc nama_tabel;
Contoh :
Desc dokter;
Untuk menghapus table, gunakan perintah :
Syntak :
Drop table;
Contoh :
Drop table dokter;
34
Latihan buat tabel
• Buat tabel dibawah ini :
Tabel Rekam
Nama Field Type Size Keterangan No_rekam Char 5 Primary key Tgl Date Nm_pasien Varchar 25 Kd_dok Varchar 4 By_rekam Int Jml_rekam Int
• Lihat tabel
Katifkan tabel rekam
Lihat isi tabel
•
•
Pertemuan 11 (Lanjutan DDL) Buat 2(dua) buah tabel didalam Database Perpustakaan dengan struktur tabel sebagai berikut :
Tabel Buku
Nama Field Type Size Keterangan id_buku Char 4 Primary key judul Varchar 15 pengarang Varchar 15 thn_terbit Date jenis_buku Varchar 10 status Varchar 10
35
Tabel Pinjam
Nama Field Type Size Keterangan No_pinjam Char 4 Primary key id_anggota Char 4 id_buku Char 4 tgl_pinjam Date tgl_kembali Date
1. Masuk ke dalam Mysql
2. Buat Database Perpustakaan
3. Aktifkan Database Perpustakaan
4. Buat tabel Buku
5. Tampilkan tabel Buku
6. Tampilkan struktur dari tabel Buku
36
7. Ganti nama tabel
Bu :
Rename table nama_tabel_lama to nama_tabel_baru;
Contoh :
Rename table buku to buku_baru;
8. Penambahan field pada tabel
Bu :
alter table nama_table add nama_field tipe (panjang);
Contoh :
alter table buku_baru add penerbit char(15);
‐ Tampilkan struktur/isi dari tabel buku_baru
37
9. Menambah kolom unik pada tabel
Bu :
alter table nama_tabel add index(nama_field);
Contoh :
alter table buku_baru add index(judul);
‐ Tampilkan struktur/isi tabel buku_baru yang baru
10. Mengubah nama kolom pada tabel
Bu :
alter table nama_tabel change kolom_lama kolom_baru type (panjang);
38
Contoh :
alter table buku_baru change judul judul_buku varchar(20);
‐ Tampilkan struktur/isi dari tabel buku_baru
11. Menghapus kolom/field
Bu :
alter table nama_table drop nama_field;
Contoh :
alter table buku_baru drop penerbit;
‐ Tampilkan struktur/isi dari tabel buku_baru
39
12. Membuat validasi di tabel
Bu :
Create table nama_table(field1 type(panjang) not null,
field2 type(panjang)not null,....... ,
fieldn enum('1','2'));
Contoh :
create table buku(
id_buku char (4)not null primary key,
judul varchar(15)not null,
pengarang varchar(15)not null,
thn_terbit date,
jenis_buku varchar(10)not null,
status varchar (10)not null,
penerbit enum('1','2'));
‐ Tampilkan struktur/isi dari tabel buku
Latihan
1. ‐ Buat tabel pinjam dalam database perpustakaan
‐ Tampilkan tabel yang ada di dalam database perpustakaan
40
2. ‐ Ganti tabel pinjam menjadi tabel pinjam_baru
‐ Tampilkan tabel
3. Tambahkan field denda int pada tabel pinjam_baru
‐ Tampilkan struktur/isi tabel pinjam_baru
4. Tambahkan kolom unik pada tabel pinjam_baru fieldnya id_anggota
‐ Tampilkan struktur/isi tabel pinjam_baru
5. Rubah nama kolom pada tabel pinjam_baru pada field denda menjadi denda_perhari curency
‐ Tampilkan struktur/isi tabel pinjam_baru
6. Buat validasi dengan nama pinjam isi dari tabel pinjam ditambahkan denda (1/2)
‐ Tampilkan struktur/isi tabel pinjam
Pertemuan 12
Data Manipulation Languange (DML)
1. (DML) Data Manipulation Languange
DML atau Data Manipulation Languange merupakan perintah‐perintah yang berfungsi untuk melakukan manipulasi data ataupun objek‐objek yang ada di dalam table. Definisi lainnya tentang DML adalah perintah‐perintah untuk memanipulasi data pada basis data, misalnya perintah untuk memilih data (query), menyisipkan, mengubah dan menghapus data dalam basis data. Bentuk manipulasi yang dapat dilakukan oleh DML diantaranya adalah untuk keperluan pencarian kembali data lama, penyisipan data baru, penghapusan data, pengubahan data dll. Sedangkan DML sendiri menurut jenisnya dapat dibagi menjadi 2 jenis yaitu procedural dan non procedural.
1.Beberapa manfaat atau kegunaan dari DDL diantaranya adalah sebagai berikut :
2. Pengambilan informasi yang disimpan dalam basis data
3. Penyisipan informasi baru ke basis data
4. Penghapusan informasi dari basis data
5. Modifikasi informasi yang disimpan dalam basis data
41
6. Query adalah perintah yang ditulis untuk mengambil informasi. Bagian dari DML yang menangani pengambilan informasi ini disebut bahasa query.
2. Penggunaan DML
Perintah Insert
Perintah INSERT digunakan untuk menambah data baru ke dalam table. Insert mempunyai 2 format penulisan. Berikut ini contoh‐contoh penulisan perintah INSERT dalam proses penambahan data kedalam table anggota
Latihan
1. Buat Database SMU dan aktifkan database SMU 2. Buat Tabel Jadwal_Pelajaran
Nama Field Type Panjang Keterangan Kd_MP Char 3 PK Mata_pelajaran Varchar 15 Guru Varchar 15 Hari Varchar 15 Jam Varchar 15 Kelas Varchar 10
3. Masukan isi data kedalam tabel jadwal pelajaran
BU :
INSERT INTO nama_tabel (daftar_kolom) VALUES(daftar_nilai);
INSERT INTO nama_tabel SET nama_kolom=nilai_kolom;
Contoh :
INSERT INTO Jadwal_Pelajaran (kd_mp,mata_pelajaran,guru,hari,jam,kelas)
42
VALUES (“MTK”,”Matematika”,”Irwan”,”Senin‐Kamis”,”08.00‐10.00”,”3A”);
Isi data sebagai berikut :
Kd_mp Mata_pelajaran guru Hari jam Kelas MTK Matematika Irwan Senin‐Kamis 08.00‐10.00 3A BIO Biologi Santi Senin‐Kamis 10.00‐12.00 3 IPA 3 FSK Fisika Ardi Jum’at 08.00‐11.00 3 IPA 2
3.Perintah SELECT
Berfungsi untuk menampilkan data yang terdapat didalam database atau table Sintaks sederhana dari perintah SELECT tampak seperti berikut ini :
BU :
SELECT * FROM nama_table;
Contoh :
SELECT * FROM Jadwal_Pelajaran;
4.Perintah UPDATTE
Berfungsi untuk melakukan perubahan terhadap sejumlah data yang ada didalam table yang telah dibuat.
BU :
43
UPDATE table_name
Set column1_name=column1_content where column2_name=column2_content;
Contoh :
UPDATE Jadwal_Pelajaran set hari=”Senin”,kelas=”3 IPA 1” where kd_mp=”MTK”;
4.Perintah DELETE
Berfungsi untuk menghapus record/tuple yang ada didalam table
BU :
DELETE FROM nama_table
WHERE Kondisi;
Contoh :
DELETE FROM Jadwal_Pelajaran where kd_mp=”MTK”;
44
Pertemuan 13
PHPMyAdmin PHPMyAdmin adalah alat yang ditulis dalam PHP yang di tunjukan untuk menangani administrasi MySQL melalui web. Membuat dan drop database. Membuat/drop/merubah tabel, menghapus/mengedit/menambahkan kolom, jalankan SQL pernyataan apapun, mengatur kunci pada field, mengatur hak, ekspor data kedalam berbagai format dan tersedia dalam 50 bahasa.
1. Mengaktifkan PHPMyAdmin a. Pilih browser yang tersedia (IE, Mozzila Firefox, Opera) b. Kemudian ketikan localhost/phpmyadmin pada address bar
c. Isi user name dan password
d. Masukkan username root dan passwordnya password, kemudian akan tampil
seperti di bawah ini :
45
2. IDE phpmyadmin
46
MembuatKetikan
Database Adress Bar Menu MYSQL Menu Phpmyadmin
3. Database a. nama database pada textbox create new database, kemudian klik create
Ketikan Nama Databasenya Klik Create
47
MenghapusPilih
Checklist
4. Database a. menu database pada tampilan Home Phpmyadmin
Pilih Database
b. pada database yang akan dihapus kemudian pilih drop
Ceklist database Pilih Drop
Tabel
1. Tabel Membuat
SetelahType Size Keterangan
Ketikkan nama tabel pada textbox name, kemudian ketikkan jumlah field yang akan dibuat pada table tersebut setelah itu klik go untuk memulai pengetikan struktur datanya.
Ketikan Nama Tabel Ketikan Jumlah Field Klik Go a. tampil layar seperti dibawah ini masukkan struktur data untuk table anggota
Nama Field Id_anggota Varchar 4 Primary Key
48
Nama Varchar 20 Alamat Varchar 30 NoTelp Varchar 13 Tgl_lahir Date
b. mpil layar se dibawah ini masukan struktur data untuk
. Setelah kita masukan field‐field yang dibutuhkan kemudian klik save
Klik Save Primary Key
bila telah ak
Setelah ta perti table anggota
c
d. Apa sukses m a akan tampil tampilan seperti dibawah ini
49
50
MengelolahM
2. Tabel a. enambah Field
1. Klik menu structure 2. Masukan jumlah field yang ingin ditambah, pilih at end of table, at beginning
of table atau after dari field yang sudah ada setelah itu klik go
Jumlah Field Yang Baru Posisi field yang ditambah klik go
3. Masukan nama field yang ditambah kemudian klik save, tambahkan field dengan nama tempat_lahir, type varchar dan length 20.
Klik Save
4. Maka apabila telah di klik save akan tampil seperti di bawah ini
b. Menghapus Field a. Checklist field yang ingin dihapus kemudian drop
Check List Klik drop
51
b. Setelah klik drop maka akan tampil pertanyaan, pilih yes. Kemudian akan tampil pesan sukses
Klik Yes
c. Merubah Field a. Checklist field ingin dirubah, kemudian klik change
Check list field yang akan di edit Klik Change
b. Rubahlah id_anggota menjadi kode, setelah itu klik save
d. Menambah isi field
a. Klik database perpustakaan, kemudian checklist table yang ingin kita isikan data setelah itu klik insert
52
53
Check List Klik Insert
b.Akan tampil layar seperti dibawah ini, kemudian isikan 2 record, setelah itu klik go
53
e.Mencari Data
a. klik search pada menu, kemudian masukan kode yang ingin dicari, kemudian klik Go
b.Maka akan tampil seperti dibawah ini
54
SQL INNER JOIN JOIN kata kunci yang digunakan dalam pernyataan SQL untuk melakukan query data dari dua atau lebih tabel, yang didasarkan pada hubungan antara kolom-kolom tertentu dalam tabel ini.
Tabel dalam database sering berhubungan satu sama lain dengan kunci.
Sebuah primary key adalah kolom/field (atau kombinasi dari kolom/field) dengan nilai unik untuk setiap baris. Setiap nilai kunci primer harus unik di dalam tabel (tidak boleh ada nilai field kuncinya sama). Tujuannya adalah untuk mengikat data bersama-sama, di meja, tanpa mengulang semua data dalam setiap tabel.
Buat Database Latihan_nim
Buat Tabel Person
Field Type Size/Panjang Keterangan
P_Id Char 1 Primary Key
LastName Varchar 15
FirstName Varchar 15
Address Varchar 30
City Varchar 20
Buat Tabel Orders
Field Type Size/Panjang Keterangan
O_Id Char 1 Primary Key
OrderNo Int
Jml Int
Harga Int
P_Id Char 1
55
Lihat pada tabel “Person” berikut:
P_Id LastName FirstName Address City
1 Hansen Ola Timoteivn 10 Sandnes
2 Svendson Tove Borgvn 23 Sandnes
3 Pettersen Kari Storgt 20 Stavanger
Perhatikan bahwa field/kolom "P_Id" adalah kunci utama dalam tabel "Person". Ini berarti bahwa tidak ada dua baris record dapat memiliki P_Id yang sama. P_Id akan membedakan dua orang bahkan jika mereka memiliki nama yang sama.
Kemudian kita memiliki tabel “Orders” berikut:
O_Id OrderNo Jml Harga P_Id
1 77895 2 30000 3
2 44678 1 20000 3
3 22456 3 10000 1
4 24562 4 15000 1
5 34764 5 25000 15
Perhatikan bahwa kolom/field "O_Id" adalah kunci utama dalam tabel "Pegawai" dan kolom/field "P_Id" mengacu pada orang-orang dalam tabel "Person" tanpa menggunakan nama mereka. Perhatikan bahwa hubungan antara dua tabel di atas adalah kolom/field "P_Id".
Sebelum kita melanjutkan dengan contoh-contoh, kami akan membuat daftar jenis JOIN yang bisa anda gunakan, dan perbedaan-perbedaannya.
1. INNER JOIN
INNER JOIN: hanya akan menampilkan baris untuk data yang memiliki nilai yang sama pada field kunci dengan tabel yang berelasi.
Sintax dari SQL INNER JOIN
56
SELECT table_name.column_name... FROM table_name1 INNER JOIN table_name2 ON table_name1.column_name=table_name2.column_name
Order By table_name.column_name
Catatan : INNER JOIN sama dengan JOIN.
Contoh SQL INNER JOIN
Tabel "Person" :
P_Id LastName FirstName Address City
1 Hansen Ola Timoteivn 10 Sandnes
2 Svendson Tove Borgvn 23 Sandnes
3 Pettersen Kari Storgt 20 Stavanger
Tabel "Orders" :
O_Id OrderNo Jml Harga P_Id
1 77895 2 30000 3
2 44678 1 20000 3
3 22456 3 10000 1
4 24562 4 15000 1
5 34764 5 25000 15
Sekarang kita ingin membuat daftar semua orang dengan perintah. Kita menggunakan SELECT berikut:
57
Tampilkan Sebagai Berikut :
Field Table
LastName Person
FirstName Person
P_Id Orders
SELECT Person.LastName, Person.FirstName, Orders.OrderNo FROM Person INNER JOIN Orders ON Person.P_Id=Orders.P_Id
Hasil-set akan terlihat seperti ini:
LastName FirstName OrderNo
Hansen Ola 22456
Hansen Ola 24562
Pettersen Kari 77895
Pettersen Kari 44678
Dari hasil join dapat dilihat yang tampil hanya jika nilai pada field kunci tabel “Person” terdapat pada tabel “Order”.
58
Tampilkan Sebagai Berikut:
Field Table
LastName Person
Address Person
Jml Orders
Harga Orders
Total =Jml*Harga
SELECT Person.LastName, Person.Address,Orders.Jml,
Order.Harga,(Jml*Harga)As Total FROM Person INNER JOIN Orders ON Person.P_Id=Orders.P_Id
Tampilkan Sebagai Berikut:
Field Table
LastName Person
Address Person
OrderNo Orders
Jml Orders
Harga Orders
Total Ekspressi
Diskon Ekspressi
Bayar Ekspressi
59
Ketentuan Ekspressi:
a. Total : Jml*Harga b. Diskon : Jika jml>4,maka diskon 10% dari harga, jika
jml>2,maka diskon 5% dari harga, selain itu tidak dapat diskon.
c. Bayar : Total-Diskon
SELECT Person.LastName, Person.Address,Orders.OrderNo,Orders.Jml,Order.Harga,
(Jml*Harga)As Total,
if(Jml>4,10/100*Harga,if(Jml>2,5/100*Harga,0))As Diskon, (Jml*Harga)-
if(Jml>4,10/100*Harga,if(Jml>2,5/100*Harga,0)))As Bayar FROM Person INNER JOIN Orders ON Person.P_Id=Orders.P_Id
60
Top Related