Basis Data (4 sks) Rita Wiryasaputra, ST., M. Cs
[email protected]
Ketentuan Mata Kuliah Basis Data Jurusan Informatika (S1) UIGM • • • • •
• • •
Atasan Baju batik, Bawahan berwarna hitam (1 semester) Aktif dalam kegiatan kampus Datang tepat waktu, sebelum dosen memasuki ruangan Sebelum dan setelah perkuliahan, papan tulis dibersihkan , memiliki material perkuliahan Presensi kehadiran perkuliahan akan dilakukan apabila telah ada photo mahasiswa berpose rapi dan sopan berjaket almamater/jas berlatar belakang merah. Nilai tugas, apabila dikerjakan sendiri tanpa menjiblak hasil karya orang lain dan dikumpulkan tepat pada waktunya. Nilai Mid (UTS) apabila telah selesai melakukan pembayaran uang perkuliahan Nilai Final (UAS) apabila absensi lebih dari 80%
Kontrak Perkuliahan Saya yang bertanda tangan dibawah ini: Nama : .... NPM : ... Dengan ini menyetujui aturan yang berlaku untuk mata kuliah ... (..sks) pada semester ... Aturan yang berlaku adalah sebagai 1. Sistem penilaian (10% absensi, 10% Kuis, 20% Tugas, 30% Mid, 30% Final) 2. Nilai Absensi, Nilai Kuis, Nilai Mid, Nilai Final. Saya berhak mendapatkan nilai, apabila hadir saat kegiatan tersebut dilaksanakan (Tidak ada Susulan) 3. Nilai tugas, Saya berhak mendapatkan nilai tugas, apabila tugas tersebut dikerjakan sendiri tanpa menjiblak hasil karya orang lain dan dikumpulkan tepat pada waktunya. 4. Peraturan Kampus UIGM,Saya berhak dikeluarkan dari kelas, apabila tidak mengikuti peraturan kampus UIGM. Demikianlah kontrak perkuliahan ini dibuat dengan sadar dan tanpa paksaan Palembang, tanggal-bulan-tahun Tanda tangan Nama jelas
Penilaian Penilaian
Persentase
Absensi
10%
Tugas
20 %
Kuis
10 %
Ujian Tengah Semester
30 %
Ujian Akhir Semester
30 %
Website UniversitasUigm.ac.id Group Facebook Teknik Informatika UIGM
Komponen Penilaian UIGM Total Nilai
Grade
Konversi Nilai
80 > NA >= 100
A
4
68 > NA >= 80
B
3
56 > NA >= 68
C
2
45 > NA >= 56
D
1
NA <= 45
E
0
NA= 10% absensi + 10% Kuis + 20% Tugas + 30% Mid + 30% Final
Materi : • Sistem basis data • Relational model • SQL • Relational Database • Database Design and the E-R Model • Data mining dan sistem temu kembali informasi (information retrieval)
Daftar Pustaka Utama : • Silberschatsz, Abraham; Korth, Henry; Sudarshan, S.; Database Systems Concepts, 6th edition, Mc.Graw Hill, 2011 Pendukung : • Coronel, Carlos; Morris, Steven; Rob, Peter; Database System: Design, Implementation and Management, 9th edition, Cencage Learning USA, 2011 • Connoly, Thomas; Begg, Carolyn; Strachan, Anne; Database Systems : A Practical Approach to Design, Implementation and Management, 3rd edition, Addison Wesley, 2001 • Ramakrishnan, R.; Gehrke, J.; Database Management Systems, 2nd edition, McGraw-Hill
INTRODUCTION • • • •
Data File Processing System Database/Basis Data DBMS
Data • Data kumpulan dari fakta (seperti alamat, jumlah pesanan, nama pelanggan ) yang saling berkaitan secara logis, dirancang untuk memenuhi kebutuhan sebuah organisasi • Data can be maintained as a collection of operating system files, or stored in a DBMS (Database Management System)
Konsep Basis Data • H/W : I, P, O • S/W : O/S : DOS, Windows, UNIX Basis Data/Database (kump. data yg berintegrasi dan shareable). Hierarki data : char, field, record, file. A database is an integrated collection of data, usually so large that it has to be stored on secondary storage devices such as disks or tapes. DBMS (sistem pengelola basis data yg mengelola dan mengendalikan akses terhadap database) : Dbase, SQL
• B/W : Programmer, DBA, End-user 10
Tabel 1 Nama
Alamat
Kota
Jumlah
Pesanan
Tony Andi Tony Andi Tuti
Jl. Beo 34 Jl. Siaran Jl. Beo 34 Jl. Siaran Jl. Buntu
Jakarta Bandung Jakarta Bandung Bogor
3 4 6 5 3
Sapu Piring Melamin Ember Sapu Ember
11
Satuan DATA • Character satuan terkecil dari data • Field/Atribut kumpulan character yang membentuk 1 unit tertentu • Record/Tuple/Baris kumpulan field yang membentuk unit tertentu • File kumpulan record yang membentuk 1 unit tertentu • Database/Basis Data kumpulan file yang saling berkaitan 13
File Processing System vs DBMS • Both systems contain a collection of data and a set of programs which access that data.
File Processing System coordinates only the physical access.
DBMS
coordinates both the physical and the logical access to the data reduces the amount of data duplication by ensuring that a physical piece of data is available to all programs authorized to have access to it, whereas data written by one program in a file-processing system may not be readable by another program. is designed to allow pre-determined is designed to allow flexible access to data access to data (i.e., compiled programs) (i.e., queries) is usually designed to allow one or is designed to coordinate multiple users more programs to access different data accessing the same data at the same time. files at the same time. In a file-processing system, a file can be accessed by two programs concurrently only if both programs have read-only access to the file.
Tabel 2 user id user name
message recorded subject id date 54101 7-May meeting today
text
server id
there is
3786
server name IMAP05
3786
IMAP05
3786
IMAP05
6001
IMAP08
6001
IMAP08
2301
Smith
2301
Smith
54098
12-Jul
2301
Smith
54445
6-Oct
5607
Jones
54512
7-Jun
5607
Jones
54101
7-May
meeting today
5607
Jones
54660
1-Dec
jogging today can you ...
6001
IMAP08
7773
Walsh
54101
7-May
meeting today
there is
9988
EMEA01
7773
Walsh
54554
17-Mar
stock quote
the latest..
9988
EMEA01
2200
Patel
54101
7-May
meeting today
there is
9988
EMEA01
2200
Patel
54512
7-Jun
lunch
can you ...
9988
EMEA01
promotions
I like to.. your next next assignment ... lunch can you ... there is
• Tabel 1 dan tabel 2 data yang berulang/redudansi data. Kendala : apabila terjadi perubahan data maka banyak record terkait yang harus diubah. • Solusi dari redudansi data adalah normalisasi (memecah tabel tunggal menjadi beberapa tabel yang saling berhubungan)
17
• Database tidak dapat menyediakan informasi secara langsung terhadap user. User harus menjalankan aplikasi (ASP/VB/Delphi) untuk mengakses data dalam database. • Untuk bekerja dengan database maka diperlukan suatu bahasa • Kebutuhan dasar manajemen adalah efisiensi dan penghematan. Dalam bidang pendataan dikenal dengan nama database dan relational untuk manajemen database. • Sistem Database lebih teroganisasi dengan baik karena tidak ada duplikasi data
Mengapa menggunakan basis data?? • Untuk mempermudah pencarian data.Hal ini dikarenakan data telah diorganisasikan dengan baik (tidak ada duplikasi data) • Untuk meningkatkan pelayanan kepada pelanggan karena informasi cepat diperoleh • Mampu menyimpan semua data yang relevan ke dalam database • Dapat menghapus data yang tidak diperlukan
Kelemahan Penggunaan DBMS • s/w cenderung mahal • Konfigurasi h/w yang besar (spesifikasi CPU, terminal banyak, alat untuk komunikasi) • Rawannya keberhasilan operasi (karena gangguan listrik & komunikasi)
Penerapan Basis Data • Perbankan(informasi jumlah tabungan nasabah, informasi pinjaman, transaksi perbankan) • Maskapai Penerbangan • Rumah Sakit (history penyakit pasien,pembayaran perawatan) • Pabrik (jumlah produksi, persediaan bahan) • Kepegawaian(penggajian) • Pendidikan(jumlah sks yg ditempuh)
Kemampuan DBMS: • Mendefinisikan database melalui DDL (data definition languange) create, drop • Kapasitas besar • Mengendalikan akses terhadap database meliputi : Sistem keamanan mencegah user yang tidak berhak mengakses database Sistem integritas memelihara konsistensi data
22
Lanjutan kemampuan DBMS • Pencarian (query) menampilkan informasi sesuai dengan kriteria tertentu • Pengurutan menyusun informasi dengan urutan khusus • Laporan menghasilkan laporan dengan format tertentu. • Entri data/modifikasi/menghapus data dari database melalui DML (data manipulation languange) insert, delete 23
Untuk memilih macam apa DBMS yang akan dipakai tergantung pada beberapa faktor. Misalnya : • Berapa banyak data yang ditangani pada suatu tabel ? • Berapa banyak pemakai yang akan berbagi data untuk tabel tersebut ? • Perfomansi apa yang diharapkan pada database ?
Bahasa Basis Data • DDL (Data Definition Language) : pendefinisian tabel. C/o: create,alter,drop • DML (Data Manipulation Language): manipulasi data. C/o: select,insert DML Prosedural : penentuandata apa yg diperlukan dan bgmn cara mendapatkannya DML non Prosedural : penentuan data tanpa menyebutkan bagaimana cara mendapatkannya
29
Tabel 2.1 Tabel Pelanggan Kode Pelanggan 201 202 203
Nama
Alamat
Kota
Tony Jl. Beo 34 Jakarta Andi Jl. Siaran Bandung Tuti Jl. Buntu Bogor
30
Tabel 2.2 Tabel Pesanan No pesanan 1230 1231 1232 1233 1234
Kode Pelanggan 201 202 201 202 203
Jumlah
Pesanan
3 4 6 5 3
Sapu Piring Melamin Ember Sapu Ember
31
Relational Database • Sistem pengorganisasian data yg efektif dlm database krn menggunakan himp. Teori matematika utk pengaturan data. • Relasi = data yg dihimpun dlm tabel dan berhubungan dengan tabel lain • Fitur yg memungkinkan aplikasi utk menyimpan dan memanipulasi data, spesifik database, hub konsisten antar tabel dlm database (referential integrity) 32
Key/ Kunci • Hubungan antara tabel satu dengan lainnya melalui field yang sama disebut relasi • Relasi dibuat dengan menggunakan key
33
Primary Key Jika menambahkan constraint primary key pada kolom, DBMS akan mengecek data dlm kolom yang terlibat. Pengecekannya meliputi : • Tidak ada data dgn nilai null • Tidak ada nilai duplikasi (data bersifat unik) Constraint primary key tidak dapat dihapus jika diacu oleh tabel lain dengan constraint foreign key • Hanya dapat mendefinisikan 1 buah constraint primary key dgn 1 kolom atau lebih kolom.
34
Foreign Key • Merupakan kolom atau kombinasi beberapa kolom yg dipakai utk menghubungkan sebuah tabel dgn tabel lainnya. • Sebuah tabel dapat memiliki beberapa constraint foreign key
35
Bentuk Relasi antar tabel Terdapat 3 bentuk relasi antartabel : • One to one : contoh belajar privat • One to many : contoh belajar sekolah • Many to many : contoh belajar perkuliahan
36