Pengenalan Database
Pengenalan Database
Bagian I
Bagian I
Abdul Kadir
Pengertian Database
Pengertian Database
Database
Database
adalah kumpulan data
adalah kumpulan data
yang saling terkait yang disusun agar
yang saling terkait yang disusun agar
mudah untuk diakses
mudah untuk diakses
Database
Akademik Mahasisw a Registrasi
Matakulia h Nilai
Pemanfaatan Basis Data
Pemanfaatan Basis Data
Mudah untuk memperoleh informasi
Mudah untuk memperoleh informasi
tertentu
tertentu
Dalam aplikasi, mampu untuk
Dalam aplikasi, mampu untuk
mendapatkan jawaban
mendapatkan jawaban
pertanyaan-pertanyaan seperti:
pertanyaan seperti:
• Berapa jumlah mahasiswa yang mengikuti kuliah “Pengantar Berapa jumlah mahasiswa yang mengikuti kuliah “Pengantar Basis Data”?
Basis Data”?
• Siapa saja yang lulus pada periode Agustus tahun ini?Siapa saja yang lulus pada periode Agustus tahun ini?
• Berapa persentase mahasiswa yang tidak melakukan registrasi Berapa persentase mahasiswa yang tidak melakukan registrasi pada semester lalu?
pada semester lalu?
• Berapa jumlah SKS yang diperoleh oleh mahasiswa dengan Berapa jumlah SKS yang diperoleh oleh mahasiswa dengan NIM 12345?
Berbagai Aplikasi Basis Data
Berbagai Aplikasi Basis Data
ATM
ATM
e-Mobile Banking dan Internet
e-Mobile Banking dan Internet
Banking
Banking
Tracking Paket Barang
Tracking Paket Barang
Distance learning
Distance learning
Keuntungan Pendekatan Database
Keuntungan Pendekatan Database
Independensi program-data
Independensi program-data
Meminimalkan redundansi data
Meminimalkan redundansi data
Meningkatkan konsitensi data
Meningkatkan konsitensi data
Meningkatkan kemampuan berbagai data
Meningkatkan kemampuan berbagai data
Meningkatkan produktivitas pengembangan
Meningkatkan produktivitas pengembangan
aplikasi
aplikasi
Meningkatkan pencapaian standarisasi
Meningkatkan pencapaian standarisasi
Meningkatkan kualitas data
Meningkatkan kualitas data
Meningkatkan tanggapan dan kemudahan
Meningkatkan tanggapan dan kemudahan
akses terhadap data
akses terhadap data
Model Relasional
Model Relasional
Salah satu model database yang
Salah satu model database yang
terkenal adalah model relasional
terkenal adalah model relasional
Data disusun dalam bentuk
Data disusun dalam bentuk
tabel-
tabel-tabel
tabel
Antar dua tabel bisa punya
Antar dua tabel bisa punya
hubungan
Contoh Model Relasional
Contoh Model Relasional
NO_MHS
NO_MHS NAMA_MHSNAMA_MHS
55
55 AshadiAshadi
56
56 RinaRina
57
57 BudiBudi
KODE_MK
KODE_MK NAMA_MKNAMA_MK
DB001
DB001 Pengantar Basis DataPengantar Basis Data
DB002
DB002 Basis Data LanjutBasis Data Lanjut
PI001
PI001 Teknik MultimediaTeknik Multimedia
NO_MHS
NO_MHS KODE_MKKODE_MK NILAINILAI 55
55 DB001DB001 AA 55
55 PI001PI001 BB 56
56 DB001DB001 BB 57
57 DB001DB001 AA 57
57 DB002DB002 AA
Contoh Informasi yang
Contoh Informasi yang
Bisa Diperoleh
Bisa Diperoleh
NO_MHS
NO_MHS NAMA_MHSNAMA_MHS
55
55 AshadiAshadi
56
56 RinaRina
57
57 BudiBudi
KODE_MK
KODE_MK NAMA_MKNAMA_MK
DB001
DB001 Pengantar Basis DataPengantar Basis Data
DB002
DB002 Basis Data LanjutBasis Data Lanjut
PI001
PI001 Teknik MultimediaTeknik Multimedia
NO_MHS
NO_MHS KODE_MKKODE_MK NILAINILAI 55
55 DB001DB001 AA 55
55 PI001PI001 BB 56
56 DB001DB001 BB 57
57 DB001DB001 AA 57
57 DB002DB002 AA
NAMA_MHS
NAMA_MHS NAMA_MKNAMA_MK NILAINILAI
Ashadi
Ashadi Pengantar Basis DataPengantar Basis Data AA
Ashadi
Ashadi Teknik MultimediaTeknik Multimedia BB
Rina
Rina Pengantar Basis DataPengantar Basis Data BB
Budi
Budi Pengantar Basis DataPengantar Basis Data AA
Budi
Istilah Dasar
Istilah Dasar
Sebuah
Sebuah
database
database
terdiri atas
terdiri atas
sejumlah tabel
sejumlah tabel
Tabel sering
Tabel sering
disebut sebagai
disebut sebagai
relasi
relasi
Setiap tabel
Setiap tabel
menyimpan
menyimpan
sekumpulan data
sekumpulan data
atau
atau
baris
baris
Istilah Dasar (Lanjutan…)
Istilah Dasar (Lanjutan…)
Data dalam sebuah
Data dalam sebuah
tabel mengikuti
tabel mengikuti
hierarki seperti
hierarki seperti
disamping
disamping
Tabel
Rekaman … Rekaman
Elemen Data
… Elemen
Data
Istilah Dasar (Lanjutan…)
Istilah Dasar (Lanjutan…)
Database
Akademik Mahasisw a Registrasi
Matakulia h Nilai
Matakulia h
NO_MHS
NO_MHS KODE_MKKODE_MK NILAINILAI 55
55 DB001DB001 AA 55
55 PI001PI001 BB 56
56 DB001DB001 BB 57
57 DB001DB001 AA 57
57 DB001DB001 AA
Atribut atau kolom
Relasi atau tabel
Karakteristik dalam Relasi
Karakteristik dalam Relasi
Tidak ada baris yang kembar
Tidak ada baris yang kembar
Urutan baris tidak penting
Urutan baris tidak penting
Setiap atribut memiliki nama yang
Setiap atribut memiliki nama yang
unik
unik
Letak atribut bebas
Letak atribut bebas
Setiap atribut memiliki nilai tunggal
Setiap atribut memiliki nilai tunggal
dan jenisnya sama untuk semua
dan jenisnya sama untuk semua
baris
Pengertian Tidak Ada Baris Kembar
Pengertian Tidak Ada Baris Kembar
Baris punya
Baris punya
identitas yang
identitas yang
membuat dua buah
membuat dua buah
baris tidak kembar
baris tidak kembar
Identitas tersebut
Identitas tersebut
dinamakan
dinamakan
“primary key”
“primary key”
NO_MHS
NO_MHS KODE_MKKODE_MK NILAINILAI 55
55 DB001DB001 AA 55
55 PI001PI001 BB 56
56 DB001DB001 BB 57
57 DB001DB001 AA 57
57 DB001DB001 BB Primary key
Pengertian Urutan Baris Tidak
Pengertian Urutan Baris Tidak
Penting
Penting
NO_MHS
NO_MHS KODE_MKKODE_MK NILAINILAI
55
55 DB001DB001 AA
55
55 PI001PI001 BB
56
56 DB001DB001 BB
57
57 DB001DB001 AA
57
57 DB002DB002 AA
NO_MHS
NO_MHS KODE_MKKODE_MK NILAINILAI
57
57 DB001DB001 AA
55
55 PI001PI001 BB
56
56 DB001DB001 BB
55
55 DB001DB001 AA
57
Setiap Atribut Memiliki Nama Unik
Setiap Atribut Memiliki Nama Unik
NO_SISWA
NO_SISWA TES_1TES_1 TES_2TES_2
12
12 7575 8080
13
13 7676 7878
14
14 8989 5858
15
15 6060 9090
16
16 7575 8686
NO_SISWA
NO_SISWA TESTES TESTES
12
12 7575 8080
13
13 7676 7878
14
14 8989 5858
15
15 6060 9090
16
16 7575 8686
Letak Atribut Bebas
Letak Atribut Bebas
NO_SISWA
NO_SISWA TES_1TES_1 TES_2TES_2
12
12 7575 8080
13
13 7676 7878
14
14 8989 5858
15
15 6060 9090
16
16 7575 8686
TES_2
TES_2 TES_1TES_1 NO_SISWANO_SISWA
80
80 7575 1212
78
78 7676 1313
58
58 8989 1414
90
90 6060 1515
86
86 7575 1616
Setiap Atribut Memiliki
Setiap Atribut Memiliki
Nilai Tunggal
Nilai Tunggal
NO_SISWA
NO_SISWA TES_1TES_1 TES_2TES_2
12
12 7575 8080
13
13 7676 7878
14
14 8989 5858
15
15 6060 9090
16
16 7575 8686
NO_SISWA
NO_SISWA TESTES
12
12 7575
80 80 13
13 7676
78 78 14
14 8989
58 58 15
15 6060
90 90 16
16 7575
Setiap Atribut Berjenis Sama untuk
Setiap Atribut Berjenis Sama untuk
Semua Baris
Semua Baris
NO_SISWA
NO_SISWA TES_1TES_1 TES_2TES_2
12
12 7575 8080
13
13 7676 7878
14
14 8989 5858
15
15 6060 9090
16
16 7575 8686
Semua atribut bernilai tunggal
NO_SISWA
NO_SISWA TES_1TES_1 TES_2TES_2
12
12 7575 8080
13
13 Tujuh Tujuh puluh puluh enam enam 78 78 14
14 8989 5858
15
15 6060 9090
16
16 7575 8686
Apa Primary Key-nya? (1)
Apa Primary Key-nya? (1)
NO_KTP
NO_KTP NO_KKNO_KK NAMANAMA
?
Apa Primary Key-nya? (2)
Apa Primary Key-nya? (2)
KODE_DEPARTEMEN
KODE_DEPARTEMEN NAMA_DEPARTEMENNAMA_DEPARTEMEN
1
1 AkuntingAkunting
2
2 EDPEDP
3
3 PemasaranPemasaran
4
Apa Primary Key-nya? (3)
Apa Primary Key-nya? (3)
NO_FAKTUR
NO_FAKTUR KODE_ITEMKODE_ITEM JUMLAHJUMLAH
456
456 K-1K-1 22
457
457 K-5K-5 11
459
459 K-1K-1 33
459
459 K-2K-2 11
460
Apa Primary Key-nya? (4)
Apa Primary Key-nya? (4)
SEMESTER
SEMESTER TAHUNTAHUN NO_MHSNO_MHS KODE_MKULIAHKODE_MKULIAH SKSSKS
1
1 20072007 11891189 M-01M-01 33
1
1 20072007 11891189 M-02M-02 22
1
1 20072007 11901190 M-01M-01 33
1
1 20072007 11901190 M-02M-02 22
1
Apa yang Salah? (1)
Apa yang Salah? (1)
NO_FAKTUR
NO_FAKTUR ITEMITEM ITEMITEM ITEMITEM
456
456 PensilPensil
457
457 BukuBuku PenggarisPenggaris SpidolSpidol
459
459 BukuBuku PensilPensil
460
460 SpidolSpidol
461
Apa yang Salah? (2)
Apa yang Salah? (2)
NO_PEGAWAI
NO_PEGAWAI SEXSEX BAHASA_ASINGBAHASA_ASING
12345
12345 LL ARABARAB
12346
12346 WW
12347
12347 LL INGGRISINGGRIS
12348
12348 WW INGGRISINGGRIS
JERMAN JERMAN
12349
Apa yang Salah? (3)
Apa yang Salah? (3)
NO_PEGAWAI
NO_PEGAWAI SEXSEX BAHASA_ASINGBAHASA_ASING
12345
12345 LL ARABARAB
12346
12346 WW
12347
12347 LL INGGRISINGGRIS
12348
12348 WW INGGRISINGGRIS
12348
DBMS
DBMS
(DataBase Manajemen Systems)
(DataBase Manajemen Systems)
Software
Software
yang memudahkan dalam
yang memudahkan dalam
mengelola
mengelola
database
database
Contoh DBMS:
Contoh DBMS:
•
Microsoft Access
Microsoft Access
•
Microsoft SQL Server
Microsoft SQL Server
•
Informix
Informix
Fitur DBMS
Fitur DBMS
Selain memudahkan dalam
Selain memudahkan dalam
pengelolaan
pengelolaan
database
database
, beberapa fitur
, beberapa fitur
penting yang biasanya disediakan
penting yang biasanya disediakan
DBMS:
DBMS:
•
Backup
Backup
dan
dan
recovery
recovery
•
Security
Security
pengaksesan data
pengaksesan data
•
Report generator
Report generator
Komunikasi dengan Software
Komunikasi dengan Software
Pengembangan Aplikasi
Pengembangan Aplikasi
Seringkali
Seringkali
database
database
diakses tidak
diakses tidak
menggunakan
menggunakan
tool
tool
yang tersedia pada
yang tersedia pada
DBMS, melainkan dengan menggunakan
DBMS, melainkan dengan menggunakan
software
software
pengembangan aplikasi
pengembangan aplikasi
Misalnya menggunakan:
Misalnya menggunakan:
•
Delphi
Delphi
•
Visual BASIC
Visual BASIC
•
PHP
PHP
Standar pengaksesan data dilakukan
Standar pengaksesan data dilakukan
melalui SQL
Contoh Pengaksesan Melalui
Contoh Pengaksesan Melalui
Visual BASIC
Visual BASIC
Program Visual BASIC
Contoh Pengaksesan
Contoh Pengaksesan
Melalui MiddleWare
SQL
SQL
SQL (
SQL (
Structured Query Language
Structured Query Language
) merupakan
) merupakan
non-procedural language
non-procedural language
Standar pengaksesan data pada
Standar pengaksesan data pada
database
database
Contoh:
Contoh:
select
select
no_mhs, nama_mhs
no_mhs, nama_mhs
from
from
mahasiswa
mahasiswa
where
where
no_mhs
no_mhs
= ‘12345’
= ‘12345’
Perintah SQL bisa dikenakan pada DBMS ataupun
Perintah SQL bisa dikenakan pada DBMS ataupun
pada program aplikasi pengakses
SQL
SQL
Perintah SQL bisa dikenakan pada DBMS ataupun
Perintah SQL bisa dikenakan pada DBMS ataupun
pada program aplikasi pengakses
pada program aplikasi pengakses
database
database
Contoh pada VB:
Contoh pada VB:
On Error Resume Next
AdodcAtpm.ConnectionString = Conn.ConnectionString If Err.Number <> 0 Then
KeluarTanpaSyarat = True
MsgBox "Problem membuka koneksi", vbOKOnly, "Perhatian" Unload FormAccess
Exit Sub End If
AdodcAtpm.CommandType = adCmdText
SQL
SQL
Contoh pada PHP:
Contoh pada PHP:
$id_mysql = mysql_connect("localhost", $pemakai,$password); if (! $id_mysql)
die("Database MySQL 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"); }
Beberapa Persoalan Penting
Beberapa Persoalan Penting
Bagaimana menggunakan tool
Bagaimana menggunakan tool
seperti ERD untuk menggambarkan
seperti ERD untuk menggambarkan
hubungan entitas dalam merancang
hubungan entitas dalam merancang
database
database
?
?
Bagaimana bentuk implementasi SQL
Bagaimana bentuk implementasi SQL
dalam mengakses data?