Pengenalan Database Bagian I Abdul Kadir Pengertian Database
Pengenalan Database Bagian I Abdul Kadir
Pengertian Database adalah kumpulan data yang saling terkait yang disusun agar mudah untuk diakses Database Akademik Mahasiswa Registrasi Matakuliah Nilai Matakuliah
Pemanfaatan Basis Data n n Mudah untuk memperoleh informasi tertentu Dalam aplikasi, mampu untuk mendapatkan jawaban pertanyaan seperti: • Berapa jumlah mahasiswa yang mengikuti kuliah “Pengantar Basis Data”? • Siapa saja yang lulus pada periode Agustus tahun ini? • Berapa persentase mahasiswa yang tidak melakukan registrasi pada semester lalu? • Berapa jumlah SKS yang diperoleh mahasiswa dengan NIM 12345?
Berbagai Aplikasi Basis Data n n n ATM e-Mobile Banking dan Internet Banking Tracking Paket Barang Distance learning Reservasi Tiket Penerbangan Sistem Perpustakaan
Keuntungan Pendekatan Database n n n n n Independensi program-data Meminimalkan redundansi data Meningkatkan konsitensi data Meningkatkan kemampuan berbagai data Meningkatkan produktivitas pengembangan aplikasi Meningkatkan pencapaian standarisasi Meningkatkan kualitas data Meningkatkan tanggapan dan kemudahan akses terhadap data Mengurangi pemeliharaan program
Model Relasional n n n Salah satu model database yang terkenal adalah model relasional Data disusun dalam bentuk tabel Antar dua tabel bisa punya hubungan
Contoh Model Relasional NO_MHS NAMA_MHS KODE_MK NAMA_MK 55 Ashadi DB 001 Pengantar Basis Data 56 Rina DB 002 Basis Data Lanjut PI 001 Teknik Multimedia 57 Budi Hubungan NO_MHS KODE_MK NILAI 55 DB 001 A 55 PI 001 B 56 DB 001 B 57 DB 001 A 57 DB 002 A
Contoh Informasi yang Bisa Diperoleh NO_MHS NAMA_MHS KODE_MK NAMA_MK 55 Ashadi DB 001 Pengantar Basis Data 56 Rina DB 002 Basis Data Lanjut 57 Budi PI 001 Teknik Multimedia NO_MHS KODE_MK NILAI 55 DB 001 A NAMA_MHS NAMA_MK NILAI 55 PI 001 B Ashadi Pengantar Basis Data A 56 DB 001 B Ashadi Teknik Multimedia B 57 DB 001 A Rina Pengantar Basis Data B 57 DB 002 A Budi Pengantar Basis Data A Budi Basis Data Lanjut A
Istilah Dasar n n n Sebuah database terdiri atas sejumlah tabel Tabel sering disebut sebagai relasi Setiap tabel menyimpan sekumpulan data atau baris Database Akademik Mahasiswa Registrasi Matakuliah Nilai Matakuliah Contoh ada 3 tabel
Istilah Dasar (Lanjutan…) n Data dalam sebuah tabel mengikuti hierarki seperti disamping Elemen Data Tabel Rekaman … … Rekaman Elemen Data Deretan byte/bit
Istilah Dasar (Lanjutan…) Database Akademik Mahasiswa Atribut atau kolom Registrasi Matakuliah Nilai Matakuliah Relasi atau tabel Baris atau tuple NO_MHS KODE_MK NILAI 55 DB 001 A 55 PI 001 B 56 DB 001 B 57 DB 001 A
Karakteristik dalam Relasi n n n Tidak ada baris yang kembar Urutan baris tidak penting Setiap atribut memiliki nama yang unik Letak atribut bebas Setiap atribut memiliki nilai tunggal dan jenisnya sama untuk semua baris
Pengertian Tidak Ada Baris Kembar n n Baris punya identitas yang membuat dua buah baris tidak kembar Identitas tersebut dinamakan “primary key” Contoh baris kembar Primary key NO_MHS KODE_MK NILAI 55 DB 001 A 55 PI 001 B 56 DB 001 B 57 DB 001 A 57 DB 001 B
Pengertian Urutan Baris Tidak Penting NO_MHS KODE_MK NILAI 55 DB 001 A 57 DB 001 A 55 PI 001 B 56 DB 001 B 57 DB 001 A 55 DB 001 A 57 DB 002 A
Setiap Atribut Memiliki Nama Unik Nama atribut unik TIDAK Nama UNIK atribut unik NO_SISWA TES_1 TES_2 NO_SISWA TES 12 75 80 13 76 78 14 89 58 15 60 90 16 75 86
Letak Atribut Bebas NO_SISWA TES_1 TES_2 TES_1 NO_SISWA 12 75 80 80 75 12 13 76 78 78 76 13 14 89 58 58 89 14 15 60 90 90 60 15 16 75 86 86 75 16 Urutan kolom tidak penting
Setiap Atribut Memiliki Nilai Tunggal Semua atribut Nilai TIDAK TUNGGAL bernilai tunggal NO_SISWA TES_1 TES_2 NO_SISWA TES 12 75 80 13 76 78 14 89 58 15 60 90 15 16 75 86 60 90 16 75 86
Setiap Atribut Berjenis Sama untuk Semua Baris Semua atribut Jenis tidak bernilai tunggal sama NO_SISWA TES_1 TES_2 12 75 80 13 76 78 13 78 14 89 58 Tujuh puluh enam 14 89 58 15 60 90 16 75 86
Apa Primary Key-nya? (1) NO_KTP NO_KK NAMA ? ? ?
Apa Primary Key-nya? (2) KODE_DEPARTEMEN NAMA_DEPARTEMEN 1 Akunting 2 EDP 3 Pemasaran 4 Produksi
Apa Primary Key-nya? (3) NO_FAKTUR KODE_ITEM JUMLAH 456 K-1 2 457 K-5 1 459 K-1 3 459 K-2 1 460 K-8 5
Apa Primary Key-nya? (4) SEMESTER TAHUN NO_MHS KODE_MKULIAH SKS 1 2007 1189 M-01 3 1 2007 1189 M-02 2 1 2007 1190 M-01 3 1 2007 1190 M-02 2 1 2007 1190 M-03 3
Apa yang Salah? (1) NO_FAKTUR ITEM Spidol 456 Pensil 457 Buku Penggaris 459 Buku Pensil 460 Spidol 461 Buku Spidol Penghapus
Apa yang Salah? (2) NO_PEGAWAI SEX BAHASA_ASING 12345 L ARAB 12346 W 12347 L INGGRIS 12348 W INGGRIS JERMAN 12349 W SPANYOL
Apa yang Salah? (3) NO_PEGAWAI SEX BAHASA_ASING 12345 L ARAB 12346 W 12347 L INGGRIS 12348 W JERMAN
DBMS (Data. Base Manajemen Systems) n n Software yang memudahkan dalam mengelola database Contoh DBMS: • Microsoft • Informix • Oracle • My. SQL Access SQL Server
Contoh DBMS Access
Fitur DBMS n Selain memudahkan dalam pengelolaan database, beberapa fitur penting yang biasanya disediakan DBMS: • Backup dan recovery • Security pengaksesan data • Report generator • Form generator
Komunikasi dengan Software Pengembangan Aplikasi n n Seringkali database diakses tidak menggunakan tool yang tersedia pada DBMS, melainkan dengan menggunakan software pengembangan aplikasi Misalnya menggunakan: • Delphi • Visual BASIC • PHP n Standar pengaksesan data dilakukan melalui SQL
Contoh Pengaksesan Melalui Visual BASIC Program Visual BASIC My. ODBC Database Server My. SQL
Contoh Pengaksesan Melalui Middle. Ware
SQL n n n SQL (Structured Query Language) merupakan non-procedural language Standar pengaksesan data pada database Contoh: select n no_mhs, nama_mhs from where no_mhs = ‘ 12345’ mahasiswa Perintah SQL bisa dikenakan pada DBMS ataupun pada program aplikasi pengakses database
SQL n n Perintah SQL bisa dikenakan pada DBMS ataupun pada program aplikasi pengakses database Contoh pada VB: On Error Resume Next Adodc. Atpm. Connection. String = Connection. String If Err. Number <> 0 Then Keluar. Tanpa. Syarat = True Msg. Box "Problem membuka koneksi", vb. OKOnly, "Perhatian" Unload Form. Access Exit Sub End If Adodc. Atpm. Command. Type = ad. Cmd. Text Adodc. Atpm. Record. Source = "SELECT * FROM ATPM; " On Error Go. To 0
SQL Contoh pada PHP: $id_mysql = mysql_connect("localhost", $pemakai, $password); if (! $id_mysql) die("Database My. SQL tak dapat dibuka"); if (! mysql_select_db("jflora_plant", $id_mysql)) die("Database tidak bisa dipilih"); $hasil = mysql_query("SELECT * FROM category", $id_mysql); if (! $hasil) die("Permintaan gagal dilaksanakan"); while ( $baris = mysql_fetch_row($hasil) ) { print("$baris[1]<BR>n"); } mysql_close($id_mysql);
Beberapa Persoalan Penting n n Bagaimana menggunakan tool seperti ERD untuk menggambarkan hubungan entitas dalam merancang database? Bagaimana bentuk implementasi SQL dalam mengakses data?
- Slides: 35