Praktikum Basis Data Pertemuan 1
Praktikum Basis Data Kusumodestoni (P. Toni) Hp. 085 640 11 58 65 kusumodestoni@gmail.com
Jl. KH. Hasyim As’ari no.3 Ungaran
Lahir di Purbalingga, 22 Desember 1986
SDN 2 Poka, Ambon
SMPN 6, Purwokerto
SMA Jurusan IPA , Ungaran
S1, T. Informatika UDINUS, Semarang (2009)
S2 , T. Informatika UDINUS, Semarang (2012)
UNISNU, Universitas Islam NU Jepara ( Dosen Tetap )
UDINUS, Universitas Dian Nuswantoro (
Dosen Tidak Tetap )
Ketua Kelompok B11.4.2. :
Nama : Yudhi Aryo No. HP : 085741223940: 40% 4. Keaktifan Mahasiswa / Kehadiran
Mempunyai kartu peserta ujian (UTS / UAS)
Membawa surat keterangan tidak bisa ikut ujian
Mahasiswa yang dapat mengikuti ujian susulan:
Mendapatkan tugas dari fakultas
Sakit dan sedang rawat inap
Ada keluarga yang meninggal (surat kematian)
Tidak ada alasan lain untuk bisa ikut ujian susulan
Prosedur Ujian Susulan
Ajukan permohonan ke panitia pelaksana
ujian Yang menentukan boleh dan tidaknya mengikuti ujian susulan adalah Panitia Pelaksana Ujian bukan Dosen Ujian susulan dilakukan 1 kali, maksimal 4
hari setelah ujian berakhir dan serempak
untuk semua mata kuliahRemidi Bagi yang nilainya kurang memuaskan
dan melakukan remidi, belum tentu nilainya akan naik/berubah
Kurikulum Manajemen S-1 (Komputer)
N Semester Gasal Semester Genap o
1 Pengantar Teknologi P 2 1 Algoritma dan Pemrograman T 3 2
Informasi1
2 Sistem Basis Data T 2 3 Algoritma dan Pemrograman P 2 2
2 (Delphi)
3 Pemrograman Aplikasi P 2 5 Pemrograman Aplikasi 1 P 2 4
2 (Foxpro) (V.Basic) 4 Praktek Basis Data (Mysql) P 2 45 Analisa dan Perancangan T 3 6
Sistem
Mata kuliah ini berisi
implementasi dari materi
yang telah disampaikandalam mata kuliah Sistem
Basis Data.Apa Itu Basis Data ?
Basis : gudang/markas/tempat berkumpul/
- tempat bersarang ( Tempat Penyimpanan )
Data : representasi fakta dunia nyata yang
mewakili suatu obyek (manusia, benda, kejadian,
dll) yang disimpan dalam bentuk teks, angka, gambar, bunyi, simbol, atau kombinasinya
Basis data : kumpulan data yang saling
- berhubungan yang diorganisasikan sedemikian rupa sehingga kelak dapat dimanfaatkan sedemikian rupa dan disimpan dalam media penyimpan elektronik
Berbagai Definisi Basis Data
Stephens dan Silberschatz, dkkPlew ;2000 (2002)
- Kumpulan data berupa
- Informasi
Menyimpan Informasi dan
data
Mc Leod, dkk
- kumpulan seluruh
Gehrke (2003)
sumber daya berbasis
- Kumpulan data yg
Definisi
komputer mendiskripsikan aktivitas
Basis Data
Kesimpulan ?
Basis data didefinisikan sebagai
sekumpulan data yang saling berhubungan , disimpan dengan minimum redundansi untuk melayani banyak aplikasi secara optimal sehingga menghasilkan Informasi .
Apa Itu Basis Data Database Administrator
M
file1
Q O U
file2
D E U R
file4
Y L
file3
Sistem Basis Data User
Input-Proses-Ouput
Input Data
Data Formulir
Proses Informasi
SBD
Tentang Penjualan mobil PT. Jaya Mobil periode 2000-2003
Data Penjualan Mobil PT. Jaya Mobil Tahun 2000-20031200 1000 800 it
Taruna n 600
Kijang U
400 200 2000 2001 2002 2003
Tahun
Gambar 1.1. Grafik penjualan mobil periode 2000-20003 Gambar 1.1.Mahasiswa nim Nama_mhs alamat_mhs
nim Nama_mhs Alamat_mhs Tgl_lahir
Tabel Mahasiswa Kuliah
Kode_kul
Kode_kul Nama_kul sks semester
Tabel Kuliah Nama_kul mempelajari
Kode_kul Indeks_nilai
N N
nim semester sks
nim Kode_kul Indeks_nilai
Tabel Mempelajari/Tabel Nilai
Tabel khusus yang mewakili himpunan relasi
Tgl_lahir
Entity Relationship Diagram (ERD)
Diagram (ERD)
ERD adalah suatu diagram yang menggambarkan hubungan antar entity di dalam database.
Skema tentang diagram pertama kali
diresmikan oleh Charles Bachman pada
tahun 1960-an, yang menggunakan kotaksegi empat untuk menunjukkan tipe-tipe
record dan tanda panah dari satu record ke record lain untuk menunjukkan hubungan one-to-many.Basis data ERD
ERD digunakan untuk memodelkan struktur data dan hubungan antar data.
Dengan ERD kita mencoba menjawab pertanyaan seperti : data apa yang kita perlukan? Bagaimana data yang satu berhubungan dengan yang lain.
Entity
Adalah objek dalam dunia nyata, berupa
- Object fisik : Rumah, manusia, Kendaraan, Peralatan, dll
- Object Konsep : Pekerjaan, Perusahaan, Rencana, kasus, dll
Adalah suatu objek yang dapat dibedakan atau
dapat diidentifikasikan secara unik dengan
objek lainnya, dimana semua informasi yangberkaitan dengannya dikumpulkan. Kumpulan
dari entity yang sejenis dinamakan Entity Set
Atribut
Berfungsi untuk mendeskripsikan karakter entity atau relationship.
Misal entity pegawai memiliki atribut nik, nama, alamat, nohp,dll
Relationships
Menggambarkan hubungan antara satu atau lebih entity, yang digambarkan dalam bentuk diamond.
Biasanya menunjukkan hubungan:
one-to-one, one-to-many, dan many-
to-manyAtribut
- Entity •
- noktp nama alamat tgl_lahir jeniskelamin status nohp foto
Contoh lain
Atribut
- nomesin noplat model merk harga warna
thn_pembuatan
Varian Entitas
Entitas Lemah (Weak Entity) Berisi entitas yang kemunculannya tergantung pada eksistensinya dalam sebuah relasi.misal entitas Mahasiswa - orang tua & hobby, pegawai - tanggungan.
Entitas kuat (Strong Entity) Entitas yang berdiri sendiri, keberadaannya tidak tergantung dengan entitas lain.
Pegawai NIP
Nama nama status
Tanggungan miliki
Entitas kuat (Strong Entity) Entitas Lemah (Weak Entity)
Simbol-simbol ER diagram
Entity Atribut Multivalue
Relationship Atribut
Atribut Composite Weak Entity
Atribut Derivatif Identifying Relationship
Atribut key
Jenis Atribut
Atribut Key - atribut yang digunakan untuk membedakan data secara unik.misal nik, nim, no_peserta.
Atribut Simple – atribut bernilai tunggal, misal nama, harga, status.
Atribut Multivalue - atribut memiliki sekelompok nilai yang banyak, misal gelar, hobby.
Atribut Composite – atribut yang masih dapat diuraikan lagi, misal alamat, korban, waktu.
Atribut Derivatif – atribut yang dihasilkan dari turunan
atribut lain, misal umur dari tanggal lahir.Atribut Key
PEGAWAI Id_pegawai
nama alamatlengkap Tgl_lhr Gol_drh nohp jk foto agama
Namaruang lokasi kapasitas
Kualitas Harga Nama
Atribut Simple
BARANG idbarang
Atribut Multivalue PEGAWAI
agama Tgl_lhr Gelar
Atribut Composite PEGAWAI
nama Tgl_lhr namadepan namatengah namabelakang
Tgl_lhr umur agama
Atribut Derivatif
PEGAWAI
Unary ( Derajat Satu ) Adalah satu buah relationship menghubungkan satu buah entity.
Manusia Menikah
Contoh :
Keterangan : Manusia menikah dengan manusia, relationship menikah hanya menghubungkan entity manusia.
Binary ( Derajat Dua )
Adalah satu buah relationship yang menghubungkan dua buah entity.
Pegawai Kendaraan
Contoh :
Memiliki Keterangan :
Pegawai memiliki kendaraan, sebuah relationship memiliki mengubungkan entity Pegawai dan entity Kendaraan. Ternary ( Derajat Tiga ) Adalah satu buah relationship menghubungkan tiga buah entity.
Pegawai
Contoh :
Bekerja Proyek Keterangan :
Kota Pegawai pada kota tertentu mempunyai suatu Proyek.
Bekerja mengubungkan Entity Pegawai, Proyek dan Kota
Cardinalitas Relasi
One to One
Hubungan satu ke satu. Contoh seorang Dosen mengepalai satu jurusan
NIP Kd_mk
Nama jenis
1
1 Kendaraan Dinas Pegawai miliki
One to Many
Hubungan satu ke banyak. Contoh seorang Pelanggan membeli beberapa mobil.
No_KP No_Mesin
Nama Merk
1 n
Mobil Pelanggan Membeli
Many to Many
Hubungan banyak ke banyak. Contoh mahasiswa mengambil matakuliah
Nim Kd_mk
Nama Nm_mk n m
Matakuliah mahasiswa ambil
Contoh Diagram ER
1 n Fakultas Daftar Mahasiswa
1 n miliki ambil m n ajar
Dosen Mata Kuliah n
1 Mahasiswa nim Nama_mhs alamat_mhs
nim Nama_mhs Alamat_mhs Tgl_lahir
Tabel Mahasiswa Kuliah
Kode_kul
Kode_kul Nama_kul sks semester
Tabel Kuliah Nama_kul mempelajari
Kode_kul Indeks_nilai
N N
nim semester sks
nim Kode_kul Indeks_nilai
Tabel Mempelajari/Tabel Nilai
Tabel khusus yang mewakili himpunan relasi
Tgl_lahir
Mahasiswa dapat: Mengetahui, Memahami, dan Mengimplementasi teori Basis data ke dalam (Menciptakan, merubah, Mysql menghapus serta memanipulasi
1. Pertemuan ke : 1 Memahami dan memiliki pengetahuan tentang Mysql. (Pengenalan Mysql, Bagaimana Menjalankan
Mysql, melihat tanggal dan waktu dalam Mysql,
Mysql untuk perhitungan).2. Pertemuan ke : 2 s/d 3 Mengetahui tentang Database dalam Mysql. (Membuat database, melihat data base, menghapus database, membuat tabel dan melihat tabel).
3. Pertemuan ke : 4 s/d 5
Mengetahui secara umum bahasa dalam SQL.
(DDL (Data Definition language), DML (Data Manipulation Language), DCL(Data Control Language))4. Pertemuan ke : 6 s/d 7 Mengetahui bagaimana mengelola tabel dalam Mysql. (Membuat tabel, mengubah struktur tabel, mengganti nama tabel, menghapus tabel,
5. Pertemuan ke : 8 s/d 9 Memahami bagaimana mengakses data dalam
Mysql (Perintah Select, Klausal into, Klausal
from, Klausal where, Group by, Having, Klausal order by, Super Aggregate).6. Pertemuan ke : 10 - 12 Dapat memahami bagaimana menggabungkan beberapa tabel (Operator Join, Operator Relasi, Operator Between, Operator Like, Inner Join,
1. Aripin , Modul Praktikum Basis Data, Semarang, 2003.
2. Adi Nugroho “Konsep Pengembangan Sistem Basis Data, Penerbit Informatika, Bandung.
3. Inge Martina, Ir, “Microsoft SQL Server 2000”, Penerbit PT. Elex Media Komputindo, Jakarta.
4. Arbie, “Manajemen Database dengan Mysql”, Penerbit Andi Yogyakarta, 2004.
Memahami Pengetahuan tentang SQL (Stucture Query Language)
Pengenalan SQL Pengenalan SQL
SQl singkatan dari Structured Query
Language yang merupakan bahasa komputer standar ANSI (American National Standards Institute). Berfungsi sebagai bahasa
SQL
pemrograman basis data yang digunakan utk mengolah database .
Dengan SQL kita dapat
Membuat basis data dan struktur tabel
◦
◦
Input, update, dan delete data dari tabel
◦
Membuat query sederhana dan kompleks
SQL
SQL tersedia dalam banyak versi Ms.Access, DB2, MS SQL server, Oracle, MySQL, Sysbase, WampServer, XampServer,dll.
My SQL My SQL
My SQL adalah sebuah database yang
berfungsi untuk penyimpanan data dalam
sebuah website.
Dasar-dasar Perintah My Dasar-dasar Perintah My
SQL
SQL
1.Membuat Database
CREATE DATABASE [nama_database] –> contoh : CREATE DATABASE db_Data_Mahasiswa;
2. Menghapus Database
DROP [nama_database] –> contoh : DROP db_Data_Mahasiswa;
USE [nama_database] –> contoh : USE db_Data_Mahasiswa;
4. Membuat Tabel
CREATE TABLE [nama_tabel] ( [nama_kolom] [tipe_data] [nul / not null], [nama_kolom] [tipe_data] [nul / not null], ) contoh : CREATE TABLE tbl_mahasiswa; ( nim int NOT NULL PRIMARY KEY; nama vachar(25); nilai vachar(1); kota_asal vachar(20); )
5. Mengisi Tabel
INSERT [nama_tabel] VALUES ( ['isi_kolom1' , 'isi_kolom2', dst ] ) contoh :
INSERT tbl_mahasisw (nim,nama,kota_asal)
VALUES ( 682003001, ‘Roy’ , ‘Jambi’ );
6. Menampilkan Isi Tabel
SELECT * FROM [nama_tabel]; contoh : SELECT * FROM tbl_mahasiswa;
7. Menghapus Tabel
DELETE FROM [nama_tabel] WHERE [syarat]; contoh : DELETE FROM tbl_mahasiswa WHERE nama = ‘Roy’ ;
Menghapus Seluruh Isi Tabel :
DROP TABLE [ nama_tabel] –> DROP
8. Memperbaharui Isi Tabel
UPDATE [nama_table] SET [nama_kolom] value WHERE [syarat] ; contoh : UPDATE tbl_mahasiswa SET nilai =’A’ WHERE nim=682003001;
Ada 2 (dua) jenis perintah dasar di dalam MySQL, yaitu DDL (Data Definition
Language) dan DML (Data Manipulation Language)1. DDL
Adalah perintah-perintah yang biasa digunakan untuk mendefinisikan
skema ke dalam DBMS, skema adalah deskripsi lengkap tentang strukturtabel, rekaman, dan hubungan data pada basis data. contoh : create…
2. DML Adalah Perintah-perintah yang digunakan untuk mengubah, memanipulasi dan mengambil data pada basis data. Tindakan meghapus (delete), mengubah (update) dan mengambil data adalah bagian dari DML. Contoh : insert, delete
Ada 3 (tiga) kelompok besar tipe data yang dikenal di dalam Mysql :
1. NUMERIC Jenis data angka , di dalamnya akan diklasifikasi kembali menjadi pecahan (float, single, double) dan bilangan bulan (integer, decimal).
2. STRING Jenis data alphanumeric , bisa menampung gabungan dari angka, huruf maupun symbol yang diperbolehkan.
3. DATE Jenis data dengan aturan satuan waktu, tahun, bulan, hari, jam menit serta detik bisa disimpan menggunakan jenis data ini.
Tipe Data Keterangan Ukuran
Integer atau Int [(m)]
Signed value : -2147683648 to 2147683647 4 byte Unsigned value : 0 to 4294967295 Decimal atau Dec (M,D)
Bilangan desimal dengan nilai tergantung besaran M dan D
M byte Tinyint [(m)] Signed value : -128 to 127 1 byte Unsigned value : 0 to 255
Smallint [(m)] Signed value : -32768 to 32767 2 byte Unsigned value : 0 to 65535 Mediumint [(m)] Signed value : -8388608 to 838860 3 byte Unsigned value : 0 to 16777215 Begint [(m)]
Signed value : - 922337203685477808 to 9223372036854775807 8 byte
Unsigned value : 0 to 18446744073709551615 Float (m,d) Bilangan pecahan presisi tunggal 4 byte Double [(m,d)] Bilangan pecahan presisi ganda 8 byte
Tipe Data Keterangan
A Fixed-length character string : Char atau menyatakan deretan karakter (string) yang character lebarnya tetap yaitu maksimum adalah 255 karakter A variable-length character string : Data
Varchar string dengan lebar data yang bervariasi (M), Maksimum lebar adalah 255 karakter
Tinyblob A very small BLOB (binary large object) BLOB A small BLOB Mediumblob A medium-sized BLOB Longblob A large BLOB
Ukura Tipe Data Keterangan n
Digunakan untuk tanggal dengan format "YYYY-
Date MM-DD" Range nilai : "1000-01-01" s.d "9999- 3 byte
12-31"Digunakan untuk waktu dengan format
Time "hh:mm:ss" Range nilai : -838:59:59" s.d 3 byte
"838:59:59" Digunakan untuk tanggal dan waktu denganformat "YYYY-MM-DD hh:mm:ss" Range
Datetime 8 byte nilai :"1000-01-01 00:00:00" s.d "9999-12-31
23:59:59" Digunakan untuk penulisan tanggal dan waktu Time stamp
4 byte dengan format "YYYYMMDDhhmmss" Digunakan untuk penulisan tahun dengan Year
1 byte format "YYYY" Range nilai : 1901 s.d 2155
Tipe Keterangan Data
Penjumlahan + Pengurangan -
Perkalian * / Pembagian
% Mencari sisa hasil bagi
Tipe Data Keterangan
= Sama dengan > Lebih besar dari < Lebih kecil dari >= Lebih besar dari atau sama dengan
<= Lebih kecil dari sama dengan <> Tidak sama dengan != Tidak sama dengan Is Null Apakah semua nilai adalah null
Apaah semua nilai berada di dalam pilihan In yang ada Apaah semua nilai tidak berada di dalam
Not in pilihan yang ada Singkatan dari Reguler Expression, Nilai Regexp menjadi benar (true) bila nilai a sama dengan nilai b
Praktikum Ke 1
START > Run… ( Putty ) [ Enter ] Host Name : 192.168.10.250 Protokol : SSH
NIM
Login as : b11xxyyyyy [ Enter ] Contoh : b110801234 [ Enter ] Password : a [ Enter ]
[b1108 01234@192.168.10.253~]$ mysql [ Enter ]
Catatan :
Ketikkan perintah pada console , diakhiri dengan tanda “;”
(titik koma) dan eksekusi dengan menekan
tombol [ Enter ] Perhatikan penulisan huruf kecil / besar karenaKetik : help; atau \h atau \? Lalu [ Enter ] Contoh : mysql> \h [ Enter ]
\c Lalu Ketik : [ Enter ] Contoh : mysql> salah perintah ……… \c [ Enter ]
Keluar dari Mysql \q atau quit atau exit Lalu Ketik : [ Enter ] Contoh : mysql> \q [ Enter ]
Mahasiswa nim Nama_mhs alamat_mhs
nim Nama_mhs Alamat_mhs Tgl_lahir
Tabel Mahasiswa Kuliah
Kode_kul
Kode_kul Nama_kul sks semester
Tabel Kuliah Nama_kul mempelajari
Kode_kul Indeks_nilai
N N
nim semester sks
nim Kode_kul Indeks_nilai
Tabel Mempelajari/Tabel Nilai
Tabel khusus yang mewakili himpunan relasi
Tgl_lahir
Tabel MAHASISWA Nama Tipe Lebar Null? Kunci Kolom Data NOT nim CHAR
12 NULL Primary Key nama_mhs
VARCHAR 40 alamat_mh
VARCHAR 50 tgl_lahir DATE Tabel MEMPELAJARI Nama Tipe Lebar Null? Kunci Kolom Data
NOT nim CHAR
12 NULL Primary Key kode_kul CHAR 5 indeks_nilai CHAR 1
Tabel KULIAH Nama Tipe Lebar Null? Kunci Kolom Data
Lalu
Rumus: CREATE DATABASE <nama database>;
[ Enter ]
Contoh : Buat database PERKULIAHAN mysql> CREATE DATABASE PERKULIAHANDB; [ Enter ]
Rumus: SHOW DATABASES;
Lalu [ Enter ]
Rumus: USE <namadatabase>; Contoh : USE PERKULIAHANDB;
Rumus: DROP DATABASE IF EXISTS <namadatabase>; Lalu [ Enter ] Contoh : DROP DATABASE IF EXISTS PERKULIAHANDB; [ Enter ]
Tabel MAHASISWA Nama Kolom Tipe Data Lebar Null? Kunci
NOT nim CHAR
12 Primary Key NULL nama_mhs
VARCHAR 40 alamat_mh
VARCHAR 50 tgl_lahir DATE
Lalu
Rumus: CREATE DATABASE <nama database>;
[ Enter ]
Contoh : Buat database B110801234 mysql> CREATE DATABASE B110801234DB; [ Enter ]
Rumus: SHOW DATABASES;
Lalu [ Enter ]
Rumus: USE <namadatabase>; Lalu [ Enter ] Contoh : USE B110801234DB; [ Enter ]
Rumus: DROP DATABASE IF EXISTS <namadatabase>; Lalu [ Enter ] Contoh : DROP DATABASE IF EXISTS B110801234DB; [ Enter ]
1. Buatlah database dengan nama berikut ini :
a. latihan1db
b. latihan2db
c. latihan3db
2. Kemudian hapus database latihan3db dan latihan1db
3. Pastikan database latihan1db tidak terhapus dengan melihat tampilan dalam daftar nama database menggunakan perintah SHOW DATABASES;
Rumus: CREATE TABLE <nama tabel> ( <field> <tipe data>, <field> <tipe data>, … ) [TYPE = <tipe tabel>]; Contoh : CREATE TABLE MAHASISWA ( nim INT NOT NULL AUTO_INCREMENT, nama_mhs VARCHAR (30), alamat_mhs VARCHAR (40), PRIMARY KEY (nim) ) TYPE = innodb;
TYPE=InnoDB merupakan perintah agar tabel
yang dibuat memiliki mesin penyimpananInnoDB. Jika anda tidak menyertakan perintah
tersebut, maka tabel akan disimpan dalam mesin penyimpanan MyISAMRumus: DROP TABLE IF EXISTS <nama tabel>;
CONTOH
DROP TABLE IF EXISTS MAHASISWA;
SEKIAN
TERIMA KASIH