setyo budi, m - dinus.ac.iddinus.ac.id/repository/docs/ajar/02.manajemen_database_2p.pdf · disebut...
Post on 26-Mar-2018
217 Views
Preview:
TRANSCRIPT
MANAJEMEN DATABASE
SETYO BUDI, M.KOM
4/18/2014 1tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Abstraksi DataPenjelasan : Tingkat/level abstraksi data
Abstraksi Data merupakan tingkatan/level bagaimana melihat data dalamsebuah sistem basis data.
Tidak ada bayangan memperhatikan kondisi sesungguhnya bagaimana data dapat masuk ke database, bagaimana data disimpan dalam disk dan disektor mana, tetapi menyangkut secara menyeluruh bagaimana data tersebut dapat diabstraksikan/digambarkan menyerupai kondisi yang dihadapi oleh pemakai sehari-hari
Sistem yang sesungguhnya tentang teknis bagaiman data disimpan dan dipelihara, seakan akan disembunyikan kerumitannya dan kemudian diungkapkan dalam bahasa dan gambar yang mudah dimengerti oleh orang.
Pemakai/user dapak dikelompokkan menjadi tiga tingkatan abstraksi saat memandang suatu database.
Ada 3 level :1. Level fisik2. Level konseptual3. Level pandangan pemakai
4/18/2014 2tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Abstraksi Data
Bagan Abstraksi Data
User View
User View
User View
Conceptual View
Physical View
Level
Eksternal
Level
Konseptual
Level
Internal
4/18/2014 3tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Abstraksi DataPenjelasan : Tingkat/level abstraksi data
1. Physical View / Level phisik• Level abstraksi paling rendah, menggambarkan bagaimana data
disimpan dalam kondisi sebenarnya. • Level ini paling komplek, struktur data level terendah.
2. Conceptual view / Tingkat Konseptual• Menggambarkan data apa yang disimpan dalam database dan
hubungan relasi yang terjadi antara data.• Menggambarkan keseluruhan database, pemakai tidak memperdulikan
kerumitan dalam struktur level phisik lagi, penggambaran hanya cukup dengan memakai kotak, garis dan keterangan secukupnya.
• Digunakan oleh database administrator, utk memutuskan informasi apa yang akan dipelihara dalam satu database.
4/18/2014 se4tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Abstraksi DataPenjelasan : Tingkat/level abstraksi data
3. Level Pandangan Pemakai / View Level• level abstraksi tertinggi yang menggambarkan hanya
satu bagian dari keseluruhan database.• Hanya sebagian saja yang dilihat dan dipakai, hal ini
disebabkan beberapa pemakai database tidak memakai semua isi database.
• Level yang sangat dekat dengan user/pemakai.• Setiap user butuh sebagian dari dari database
contoh: Bagian personalia rumah sakit hanya memakai data file pegawai dan gaji, tidak membutuhkan file pasien, resep dan pendaftaran
4/18/2014 se5tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
• Conceptual Level
– Pendaftaran (no_pendaftaran: string, tanggal : date, kode_poli: string,
no_antrian:string, id_pasien:string, nama_pasien :string, alamat:string,
gender:string, umur:number, telepon:number, biaya:number)
– Poliklinik (id_poli : string, nama_poli : string)
– Dokter (id_poli : string, id_dokter : string)
– Pasien (id_pasien: string, ruang : string)
– Data Resep (tgl : date, no_resep: string, id_dokter : string,id_pasien, dll)
• Physical Level
– Relasi-relasi disimpan sebagai file-file.
– Indeks berdasarkan pada kolom pertama.
• View Level
– Infopasien (id_pasien : string, ruang : string)
– infoResep (id_pasien : string,no_resep:
string,id_dokter:string,id_pasien:string)
Contoh Abstraksi Data
4/18/2014 6tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Database Language adalah cara berinteraksiantara pemakai dengan basis data diatur dalambahasa khusus yang ditetapkan oleh pihakpembuat
Bahasa basis data (database language) yg terdiriatas sejumlah perintah (command) yang dapatdituliskan/diberikan untuk kemudian diproses.
Contoh-contoh bahasa basis data adalah SQL, QBE, QUEL dan sebagainya.
Bahasa Database ( Database Language)
4/18/2014 7tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Bahasa Basis Data
4/18/2014 8tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
DML
Data Manipulation
Language
DDLData Definition
Language
Basis Data
Database Language
1. DDL ( Data Definitation Language)
• Struktur basis data menggambarkan desain basis data secarakeseluruhan, dimana kita dapat membuat tabel baru, membuatindeks, mengubah tabel, menentukan struktur penyimpanantabel, mengubah tabel, menentukan struktur penyimpanantabel.
• Hasil dari kompilasi tabel yang disimpan dalam file khusus yang disebut Kamus Data ( Data Dictionary)
• Kamus Data merupakan suatu metadata yang mendiskripsikandata yang sesungguhnya.
• Bahasa query yang digunakan adalah create(membuat database maupun tabel), alter(perubahan data baik penambahan kolom, mengganti nama field, memodifikasi kolom, dll) dan drop ( menghapus database atau tabel)
Bahasa Basis Data
4/18/2014 9tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
• Membuat tabel dalam databaseCREATE TABLE Buku(id INTEGER PRIMARY KEY, kode_buku VARCHAR(20) NULL,judul_buku VARCHAR(225) NOT NULL,tanggal_terbit DATE NULL );
• Merubah data tabelAlter TABLE Buku ADD Penulis Varchar(100);Alter TABLE Buku Drop Column Judul_buku;
• Menghapus sebuah tabelDROP TABLE Buku;
• Merubah Nama DatabaseALTER DATABASE namadatabaselama MODIFY NAME = namadatabasebaru; // Untuk Microsoft sql server
atau EXEC sp_renamedb ‘namadatabaselama ‘, ‘namadatabasebaru’;// UntukMicrosoft sql server
RENAME {DATABASE | SCHEMA} namadatabaselama TO namadatabasebaru; // Untuk MYSQL
Contoh DDL ( Data Definitation Language)
4/18/2014 10tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
2. DML (Data Manipulation Language)Terdiri dari perintah-perintah yang disediakan untukmelakukan manipulasi data dan pengambilan datapada suatu basis data. Manipulasi data berupa :1. Penyisipan/Penambahan data baru ke suatu
database2. Penghapusan data dari database3. Pengubahan data dari database
DML merupakan bahasa yang bertujuan memudahkanpemakai untuk mengakses data( untuk kemudianmenampilkannya atau memanipulasinya) sebagaimanadirepresentasikan oleh model data.
Bahasa Basis Data
4/18/2014 11tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Ada 2 jenis prosedur DML yaitu :
a. Prosedur yang mensyaratkan agar pemakai menentukan data
apa yang diinginkan serta bagaimana cara mendapatkannya
b. Nonprosedural yang membuat pemakai dapat menentukan
data apa yang diinginkan tanpa menyebutkan bagaimana cara
mendapatkannya.
Contoh :
Prosedural DML : dBase, FoxBase
Nonprosedural DML : SQL (Structure Query Language), QBE
(Query By Example).
Bahasa Basis Data
4/18/2014 12tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
DCL merupakan singkatan dari Data Control Language, konsep inidigunakan untuk merubah hak akses, memberikan roles, dan isu lain yang berhubungan dengan keamanan database.
Contoh DCL dalam Basis data
• Ada dua perintah SQL yang termasuk dalam DCL yaitu GRANT danREVOKE.
GRANT SELECT, UPDATE ON Nama_Database TO user1, user2;
REVOKE SELECT, UPDATE ON Nama_database FROM User1, User2;
Penjelasan : Perintah GRANT memberikan kewenangan terhadappengguna untuk melakukan operasi pada suatu database. PerintahREVOKE berfungsi untuk menghilangkan hak perintah kepada user tertentu terhadap objek atau schema database.
DCL(Data Control Language)
4/18/2014 13tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
• TCL merupakan singkatan dari Transaction Processing Language, konsep ini digunakanuntuk mekanisme dalam pemrosesan sebuah transaksi dalam database. Dua perintahSQL yang paling populer untuk TCL adalah Rollback dan Commit
• Contoh TCL Dalam Basis Data
BEGIN TRANDelete From Buku Where id = 1124;Rollback//Commit
Penjelasan :
• Begin tran digunakan untuk perintah bahwa akan dimulai suatu transaksi/query, pada bagian akhir terdapat perintah rollback dan Commit.
• Rollback artinya query yang ada diantara begin tran tidak akan di eksekusi dalamdatabase secara langsung, dalam artian data sesungguhnya tidak berubah.
• Penggunaan TCL ini untuk melihat apakah query yang dijalankan sudah benar ataubelum, jika masih salah makan programmer atau DBA dapat memperbaikinya lagisehingga tidak membahayakan data dalam tabel fisiknya. Jika sudah benar, makaDBA dapat meremark TCL Rollback dan mengaktifkan perintah TCL Commit untukmemberikan perubahan pada tabel fisik.
TCL (Transaction Processing Language)
4/18/2014 14tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
• Model Data adalah kumpulan perangkatkonseptual untuk menggambarkan Data, hubungan antar data, semantik dan batasandata.
• Model data biasanya digunakan untuk perancanganbasis data, yang disebabkan karena kelangkaan data / fakta yang dimiliki
• Henry F. Korth :
Ada 2 kelompok model data, yaitu :
Model data berbasis object
Model data berbasis record
Model Data Dalam SBD
4/18/2014 15tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Model Data Dalam SBD
4/18/2014 16tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Data Model
Object Based
Record Based
Physical Based
E-R Model
Semantic Model
Binary Model
Network Model
Unifying Model
Frame Model
Relational Model
Hierarchycal Model
Secara umum :
• Semesta data di dunia nyata ditansformasikan ke dalam sebuah diagram dengan memanfaatkan perangkat konseptual disebut dengan ERD (Entity Relationship Diagram).
• Model yang menjelaskan hub antar data dalam basis data berdasarkan suatupersepsi bahwa real word terdiri dari obyek-obyek dasar yang mempunyairelasi antara obyek-obyek tersebut.
Simbol / Notasi E-R Diagram :
Strong Entity
Weak Entity
AssociativeEntity
Relationship
IdentifyingRelationship
Attribute
MultivaluedAttribute
DerivedAttributeLink
E-R Model ( Entity-Relationship Model)
E-R Model
4/18/2014 18tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Dosen Mata KuliahMengajar1 N
Nama_dos
Alamat_dos
Nama_dos
tempat
waktu
kode-_kuliah
Kode_kuliah
Nm_kuliah
SKS
Contoh :
Komponen Utama Pembentuk Model E-R
4/18/2014 19tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
1. Entity (Entitas)
Merupakan individu yang mewakili sesuatu yang nyata
dan dapat dibedakan dari sesuatu yang lainnya.
(individu : manusia, tempat, obyek, kejadian, konsep).
Biasanya berhub. Dg baris dlm sebuah tabel).
Simbol yang digunakan :
Komponen Utama Pembentuk Model E-R
4/18/2014 20tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Tipe Entitas
• Entitas Kuat yaitu entitas mandiri yang keberadaannyatidak bergantung pada keberadaan entitas lain.
• Entitas lemah/ Weak Entity yaitu entitas yang keberadaannya bergantung pada keberadaan entitas lain
• Entitas Assosiatif adalah entitas yang terbentuk darisuatu relasi, bisa terjadi jika :
1. Relasi yang merekatkan dua entitas bersifat banyak kebanyak
2. Biasanya berasal dari suatu relasi dimana relasi itumemiliki makna mandiri bagi pengguna
Komponen Utama Pembentuk Model E-R
4/18/2014 21tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
A. Entity Sets (Himpunan Entitas) :
Sekelompok entitas yang sejenis dan berada dalamlingkup yang sama
Contoh :
Himpunan Entitas : Pelanggan
Entitas : Budiman, Suherman dll
Himpunan Entitas : Mobil
Entitas : Mobil Suzuki, Mobil Honda dll
Himpunan Entitas : Mahasiswa
Entitas : Ali, Budi, Iman dll
E-R Model
4/18/2014 22tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Contoh :
NIM Nama
Mahasiswa
Alamat Tgl Lahir
980001 Ali Akbar Jl. Merdeka No. 10 Jakarta 40121 2 Jan 1979
980002 Budi Haryanto Jl. Gajah Mada No. 2 Jakarta 6 Okt 1978
980003 Imam Faisal Komp. Griya Asri D-2 Depok 40151 13 Mei 1978
980004 Indah Susanti Jl. Adil No. 123 Bogor 21 Juni 1979
Himpunan Entitas
Entitas 1
Entitas 1Entitas 1
Entitas 1
E-R Model
4/18/2014 23tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
2. Atribut (attribute / Properties)
Merupakan karakteristik dari sebuah entitas
(biasanya berhubungan dengan field dalam
sebuah tabel).
Penentuan atribut bagi suatu entitas didasarkan
pada relevansinya terhadap entitas tersebut.
Simbol yang digunakan :
E-R Model
4/18/2014 24tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Jenis Atribut
1. Atribut sederhana/atomik : atribut yang tidak dapat dibagi-
bagi menjadi atribut yang lebih mendasar.
Contoh : atribut harga dari entity barang.
2. Atribut komposit : atribut yang terdiri dari beberapa atribut
yang lebih mendasar.
Contoh : Entity mahasiswa memiliki atribut nama yang terdiri
dari nama depan (first name), nama tengah (middle name)
dan nama belakang (last name).
E-R Model
4/18/2014 25tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
4. Atribut Berharga Tunggal (Single-valued Attribute) : atributyang hanya mempunyai satu harga untuk suatu entitastertentu.
Contoh : atribut umur.5. Atribut Berharga Banyak (Multi-valued Attribute) : atribut
yang dapat terdiri dari sekumpulan harga untuk suatuentitas tertentu.
Contoh : atribut hobi.6. Atribut Derivatif : suatu atribut yang dihasilkan dari atribut
lain.Contoh : atribut umur yang dapat dihasilkan dari atributtgl_lahir.
4/18/2014 26
Relation
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
3. Relation adalah hubungan antara suatu himpunan entitas
dengan himpunan entitas lainnya.
Simbol :
Contoh : entitas seoarang mahasiswa dengan nim
=‘D22.2010.00001’ dan nama_mhs=‘Bejo Agi’ mempunyai relasi
dengan entitas sebuah mata kuliah dengan kode_kul=‘00001’ dan
nama_kul=‘PSIK-1’. Relasi antara kedua entitas tersebut
mengandung arti bahwa mahasiswa tersebut sedang mengambil
mata kuliah tersebut.
Atribut Key
4/18/2014 27tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Key adalah sejumlah atribut yang mengidentifikasi record/baris dalamsebuah relation secara unique.
® SuperkeyAdalah satu / lebih atribut yg dapat membedakan entitassatu dengan lainnya dalam himp entitas
® Candidate KeyMerupakan kumpulan atribut minimal yang dapat membedakan entitas satu dengan lainnya dalam himp entitas.
® Primary KeySalah satu dari candidate key yang digunakan sebagi pengidentifikasi suatu entitas dalam himp entitas.
@ Alternate Key : kandidat key yang tidak dijadikan primary key.@ Composite key : key yang terdiri dari 2 atribut atau lebih. Atribut-
atribut tersebut bila berdiri sendiri tidak menjadi identitas record, tetapi bila dirangkaikan menjadi satu kesatuan akan dapatmengidentifikasi secara unik
Key
4/18/2014 28tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
6. Foreign Key : non key atribut pada sebuah relation yang juga
menjadi key (primary) atribut di relation lainnya.
Foreign key biasanya digunakan sebagai penghubung antara record-
record dan kedua relation tersebut(kolom(atau gabungan beberapa
kolom) yang merupakan primary key pada relation(tabel)lain)
Berguna untuk menghubungkan antara dependent relation (sisi many)
dengan parentrelation(sisi one)
Kode P#
1002 2345
1003 3456
1004 5678
Key
4/18/2014 29tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
S# Snama Kode
S1 DIDIN 1002
S2 DEWI 1004
S3 DEDE 1006
Super Key : S#, SNama, KodeCandidate Key : S#, SnamaPrimary Key : S#Alternative Key : SnamaForeign Key : Kode
E-R Model
4/18/2014 30tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
superkey
CandidateKey
Primary Key
Contoh : No_KTP No_SIM Nama Alamat
Superkey : No_KTP+No_SIM+Nama+AlamatNo_KTP+No_SIM+Nama
No_KTP+No_SIM+alamatNo_KTP+No_SIM
No_KTP+namaNo_KTP+alamatNo_SIM+ namaNo_SIM+ alamatNo_KTPNo_SIM
Candidate Key:
No_KTPNo_SIM
Primary Key:
No_KTP atau No_SIMtergantung kebutuhan
E-R Model
4/18/2014 31tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Dasar pemilihan Primary Key :1. Key sering digunakan sebagai acuan2. Key lebih ringkas3. Key adalah unik
Atribut Sederhana (Simple Attribute) : atribut atomik yg tidak dapat di pilah lagi
Atribut Komposit (Composite Attribute) : atribut atomik yg dapat di pilah lagi
Contoh :
Atribut nama : atribut sederhana (nilai sudah paling kecil / atomik)Atribut alamat : atribut komposit, karena masih dapat dipilah-pilah
lagi menjadi atribut : jalan, kota dan kode_pos
Macam-macam atribut
E-R Model
4/18/2014 32tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Atribut bernilai banyak (multivalued attribute) : Merupakan atribut yang dapat bernilai lebih dari 1 nilai yang sejenis
Atribut bernilai tunggal (Single-valued attribute) : Merupakan atribut yang hanya mempunyai satu nilai
Contoh :
NIM Nama Alamat Hobi
98001 Rudi Jl. Seroja RenangNonton
98002 Wati Dago Raya Tidur
NIM, Nama dan Alamat :atribut bernilai tunggal
Hobi : atribut bernilai banyak
Atribut Turunan (Derived attribute) : Merupakan atribut yang nilainya diperoleh dari pengolahan atau diturunkan dari atribut / tabel lain
33
Contoh :
NIM Nama Alamat Angkatan IPK
98001 Andi Jl. X 1998 3.299011 Susi Jl. Y 1999 3.0
Angkatan, IPK :
Atribut turunan
Atribut harus bernilai (Mandatory Attribute) :Merupakan atribut-atribut yang harus diisikan nilainya
Atribut tidak harus bernilai (Non Mandatory Attribute / Null) :Merupakan atribut-atribut yang nilainya boleh dikosongi
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
34
Relasi (Relationship) :Digunakan untuk menunjukan hubungan antar entitas
Himpunan Relasi (Relationship Sets) :Merupakan kumpulan semua relasi diantara entitas
Contoh :Mahasiswa Mata Kuliah
NIM Nama ...
98001 Andi ...98003 Rudi ...
Kode_kul Nama_kul sks
A01 Pancasila 2A03 Internet I 2A02 Network I 2
Dari tabel-tabel diatas, dapat dilihat bahwa terdapat hubungan / relasiantara himp entitas mahasiswa dengan mata kuliah.--> Andi mempelajari mata kuliah Internet I--> Rudi mempelajari mata kuliah Internet I dan Network I
98013 Susi ...
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
35
Sehingga apabila dimodelkan dengan E-R Diagram :
Mahasiswa Mata kuliahMempelajari
NIM
Nama
Kode_kul
Nama_kul
sks
Kode_kulNIM
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
36
Merupakan jumlah maksimum entitas yang dapat berelasi dengan
entitas pada himp entitas yang lain.
Macam-macam Kardinalitas :
Satu ke satu (one to one)
A B
Entitas 1Entitas 2Entitas 3Entitas 4
Entitas 2Entitas 3Entitas 4
Entitas 1Setiap entitas pada himp entitas A Berhubungan dengan paling banyakDengan satu entias pada himpunanEntitas B dan begitu juga sebaliknya
Kardinalitas / Derajad Relasi :
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
37
Contoh :
Dosen ProgdiMenge
palai
1 1
Nama-Dosen alamat Nama_progKode
Nama-Dosen Kode
Satu dosen paling banyak mengepalai satu program studi (walaupuntidak semua dosen menjadi ketua) dan setiap program studi di kepalaioleh paling banyak satu dosen.
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
38
Satu ke banyak (one to many)
Setiap entitas pada himp entitas A Berhubungan dengan banyak entias pada himpunan entitas B, tetapiTidak sebaliknya
A B
Entitas 1Entitas 2Entitas 3Entitas 4
Entitas 1Entitas 2Entitas 3Entitas 4
Contoh : Setiap agama dapat dianut oleh lebih dari satu mahasiswa,tetapi tidak sebaliknya (setiap mahasiswa hanya dapat menganut satu agama)
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
39
Agama Mahasiswadianut1 N
Kode_agm
Deskripsi
Kode_agm NIM
NIM
Nama
Semester
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
40
banyak ke banyak (many to many)
Setiap entitas pada himp entitas A Berhubungan dengan banyak entias pada himp entitas B, dan sebaliknya
A B
Entitas 1Entitas 2Entitas 3Entitas 4
Entitas 1Entitas 2Entitas 3Entitas 4
Contoh : Setiap dosen dapat mengajar lebih dari satu mata Kuliah dan setiap mata kuliah dapat diajar oleh lebihDari satu dosen
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
41
Contoh :
Dosen Mata KuliahMengajarN N
Nama_dos
Alamat_dos
Nama_dos
tempat
waktu
kode-_kuliah
Kode_kuliah
Nm_kuliah
SKS
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
42
Mengidentifikasi dan menetapkan seluruh himpunan entitas yang akan
terlibat
Menentukan atribut-atribut kunci dari masing-masing himpunan entitas
Mengidentifikasi dan menetapkan seluruh himpunan relasi di antara
himpunan entitas – himpunan entitas yang ada beserta foreign key (kunci
tamu)
Menentukan derajad / kardinalitas relasi untuk setiap himpunan entitas
Melengkapi himpunan entitas dan himpunan relasi dengan atribut-atribut
deskriptif
Tahapan pembuatan E-R Diagram :
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
43
ERD dengan kamus data :
Pada sebuah sistem yang kompleks, penggambaran atribut-atributdalam sebuah ERD seringkali kelihatan lebih rumit. Untuk itupendeklarasian atribut-atribut tersebut dapat menggunakan kamusdata.
Contoh :
Dosen Mata KuliahMengajarN N
Kamus Data :
Dosen = {Nama_dos, Alamat_dos}
Mengajar = {Nama_dos, KD_kuliah, Waktu, Tempat, Ruang }
Mata Kuliah = {Kd_kuliah, Nm_kuliah, SKS}
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
44
Derajad Relasi Minimum :Menunjukan hubungan (korespondensi) minimum yang boleh terjadidalam suatu relasi antar himpunan entitas. Nilai derajad relasi minimumhanya boleh 0 atau 1.
Contoh :
Mahasiswa Mata KuliahMempelajari
(0,N)
® Setiap mahasiswa dapat mempelajri banyak mata kuliah tetapi ada mahasiswa
yang belum / tidak mempelajari mata kuliah satupun.
® Setiap mata kuliah dapat dipelajari oleh banyak mahasiswa, tetapi bisa juga ada
mata kuliah yang tidak / belum diikuti oleh satupun mahasiswa
(0,N)
minimum maksimum
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
45
ERD dalam Notasi Lain :
Notasi :
Notasi Derajad Relasi Minimum - Maksimum
(0,N)
(1,N)
(1,1)
(0,1)
o
o
atau
atau
atau
atau
o
o
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
46
Contoh :
Mahasisa Mata KuliahMempelajari
o o
Kamus Data :
Mahasiswa = {NIM, Nama, Alamat}
Mempelajri = {NIM, KD_kuliah, Waktu, Tempat, Ruang }
Mata Kuliah = {Kd_kuliah, Nmkuliah, SKS}
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
47
Strong Entity (entitas kuat)
Himpunan entitas yg tidak memiliki ketergantungan dg entitas yang lain.
Weak Entity (entitas Lemah)
Himpunan entitas yg keberadaannya ketergantungan denganentitas yang lain. Himpunan entitas yg demikian tidak memp.Atribut yg berfungsi sebagai key yg benar-benar menjaminkeunikan entitas.
Varian Entitas
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
48
Orang Tua
Hobbi
Mahasiswa
memiliki
Menyenangi
NIM
Nama
alamat
Tgl_lhr
NIMNm_ortu
NM_ortu
NIM hobbi
alm_ortu
Hobbi
Kunci utamaKunci yg tidakmenyakinkan
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
49
Varian Relasi :
Relasi Tunggal (Unary Relation)Relasi yang terjadi dari antar himpunan entitas yg sama
Contoh :
Dosen Mendampingi
1
N
Nama_dos
Nama_dos
Keahlian
Nama_dos-P
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
50
Relasi Ganda (Redundant Relation)
Dosen Kuliah
Mengajar
Menguasai
1
N
N
N
Kd_kulNm_dos
tempatwaktu
Nm_dos Kd_kul
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
51
Relasi Multi Entitas (N-ary Reation)Merupakan relasi yang terdiri dari 3 himpunan entitas / lebih
Kuliah Dosen
Ruang
Pengajaran
Kd_kul
nm_kul
sks
Kd_rgwaktu
Nama_dos
Kd_rg
Nm_rg
kap
Nama_dosKd_kulContoh :
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
52
Spesialisasi :Merupakan proses dekomposisi (pengelompokkan) sebuah himpunanentitas yg melahirkan himpunan entitas baru yang dilakukan secaratop-down.
Contoh :dosen
Dosen tetap Dosen ttd tetap
Is a
Top - down
Nm_dos
alm_dos
Nm_kantor
alm_kantor
nik
pangkat
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
53
E-R Model (Model Keterhubungan Entitas)
Generalisasi :
Contoh :Mahasiswa
Mahasiswa D3 Mahasiswa S1
Is a
bottom - up
Merupakan penyatuan beberapa himpunan entitas menjadisebuah himpunan entitas baru. Atribut dari masing-masinghimpunan entitas disatukan kedalam himpunan entitas baru.
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
54
Agregasi :
Contoh :
Mahasiswa
Praktikum
Merupakan sebuah relasi yang secara kronologis mensyaratkantelah adanya relasi lain.
mempelajari Kuliah
mengikuti
N N
N
NNIM
Kd_rg
Kd_kul
nilai
Nama_prKd_rg
Kd_kul
nm_kul
NIM
Nama
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
55
E-R Model (Model Keterhubungan Entitas)
Transformasi ERD ke Basis Data Fisik (Tabel)
Aturan-aturan :
1. Setiap Himp. Entitas Ditransformasikan sebagai sebuah tabel
Contoh :
Mahasiswa
nim
Nama_mhs
alamat
Nim nama_mhs alamat
mahasiswa
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
56
2. Relasi dengan Derajad satu-ke-satu yang menghubungkan 2himp. Entitas akan transformasikan kedalam bentuk penyertaan atribut-atribut relasi ke salah satu himp. Entitas
( 0,1)
(1,1)
Dosen
Progdi
mengepalai
Kode_dos
nm_dos
Kode_dos
Kode_P
Kode_p
nm_p
Kode_dos nm_dos
Kode_p nm_p Kode_dos
Atribut yg ditambahkan
dosen
progdi
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
57
Ketentuan penyertaan atribut adalah :
Atribut-atribut relasi akan disertakan ke himp. Entitas
yg mempunyai derajad relasi minimumnya yg lebih besar
Atribut-atribut relasi akan disertakan ke himp. Entitas
yg mempunyai jumlah record yg lebih sedikit
atau
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
58
3. Relasi dengan Derajad satu-ke-banyak yg menghubungkan 2himp. Entitas akan transformasikan kedalam bentuk penyertaan atribut-atribut relasi ke himp. Entitas yg derajad relasinya banyak (many).
1
m
dosen
Kuliah
mengajar
Kode_dos
nm_dos
Kode_dos
Kode_kul
ruang
Kode_kul
nm_kul
sks
Kode_dos nm_dos
Kode_kul nm_kul sks kode_dos ruang
Atribut yg ditambahkan
dosen
kuliah
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
59
4. Relasi dengan Derajad banyak-ke-banyak yg menghubungkan dua himp. Entitas, maka atribut-atribut relasi akan dike transformasikan menjadi sebuah tabel
m
m
Mahasiswa
kuliah
krs
nim
nama
nim
Kode_kul
nilai
Kode_kul
Nm_kul
sks
Nim nama
Nim kode_Kul nilai
Kode_kul nm_kul sks
mahasiswa
krs
kuliah
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
60
5. Implementasi Himp. Entitas Lemah
memiliki
mahasiswa
orangtua
Hobbi
nim
nim
nim
namahobbi
Nm_ortu
Nm_ortu
Alm_ortu
hobbisenang
N
N
1
N
Nm_ortu alm_ortu NIM Nm_ortu nama Hobi nim
Senangmahasiswaorangtua
Key yang diambil dari entitas kuat
Hobi
hobbi
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
61
6. Implementasi Spesialisasi
dosen
Dosen tetap Dosen tidak tetap
Kd_dosnm_dos
alm_dos
Nm_kantor
Alm_kantor
nip
pangkat
Tgl_msk
Is a
Kd_dos nm_dos alm_dos Nip pangkat tgl_msk kd_dos Nm_ktr alm_ktr kd_dos
dosen Dosen tetap Dosen tidak tetap
Key yg diambil dari entitas utama
Kd_dosKd_dos
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
62
7. Implementasi Generalisasi
mahasiswa
Mahasiswa d3 Mahasiswa s1
nimnama
alamat
Is a
Nim nama alamat progdimahasiswa
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
63
7. Implementasi unary/tunggal relation
dosen mendampingi
prasyaratkuliah
n
n
Kd_kul
Nm_kul
1
n
Kd_kul
Kd_dos
Nm_dos
Kd_dos
Kd_dos nm_dos kd_dos_pen
dosen
Kd_kul nm_kul
kuliah
Kd_kul kd_kul_syarat
prasyarat
Nama atribut diganti sesuai dg fungsinya
Kd_dos_pen
Kd_kul_syarat
E-R Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Model Data Semantic
4/18/2014 64
Hampir sama seperti E-R Model, tetapi relasi antar obyek dasar dinyatakandengan kata-kata (semantik).
Contoh :
Mahasiswa
Mata Kuliah
Dosen
mengambil
Mengajar
NIM
Nama
Nama_dos
Alamat
Kode
NM_kul
SKS
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Relational Model
4/18/2014 65
• Disebut juga : Model Relasional atau Basis Data Relasional (ditemukan oleh :
E.F. Codd)
• Menunjukan suatu cara yang digunakan untuk mengelola data secara fisik
dalam memori sekunder dan bagaimana bentuk relasi dari keseluruhan data
dalam sistem yang sedang ditinjau
Kelebihan :
Dapat mengakomodasi berbagai kebutuhan pengelolaan basis data yg ada di
dunia nyata (real word)
Pencarian data dari suatu tabel atau banyak tabel dapat dilakukan dengan
cepat
Merupakan model yang paling sederhana sehingga mudah untuk dipahami
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Contoh Relational Model
4/18/2014 66
Contoh :
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Kode_pasien Nama_pasien Alamat Kota Umur
Jns_kelamin
P-0001 Yunus Rongsumbe Jl. Diponegoro No.10 Semarang 30 Pria
P-0002 Otnil Napoleon Jl. Sekayu No. 19 Demak 21 Pria
P-0003 Okto Pigome Jl. Merah Putih No.11 Purwodadi 22 Pria
P-0004 Wildanon Jl. Kembang arum No. 11 Kendal 11 Perempuan
Kode_Obat Nama_Obat Kode_Dokter Jumlah Kode_Pasien
P-0001 Ultrafu D-0001 2 P-0001
P-0002 Biogesic D-0002 3 P-0001
P-0003 Paracetamol D-0003 4 P-0002
P-0004 Mixagrip D-0001 7 P-0003
Tabel Resep
Tabel Pasien dihubungkan dengan tabel Resep melalui kode_pasien
Tabel Pasien
Istilah :
RDMS (relational Database Management System) adalahDBMS yang bermodelkan relasional
Kardinalitas adalah jumlah tupel suatu relasi (tabel)Derajad / degree / arity adalah jumlah atribut suatu
relasiDomain adalah Himpunan / batasa nilai yang berlaku bagi
suatu atributmisalnya : Domain atribut nilai adalah A, B, C, D, dan EDomain tidak sama dengan tipe data suatu atribut
Istilah relasi biasanya untuk membicarakan struktur logissedangkan istilah tabel biasanya untuk basis data fisik
Model Data Relasional
www.cerdas-pintar.blogspot.com4/18/2014 67
• Merupakan model data yang memperluasdefinisi dari entity, bukan hanya atribut–atributnya tetapi juga tindakan–tindakannya.
Binary Model
4/18/2014 68tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Model hirarkis atau biasa disebut model pohon inimenggunakan pola hubungan dengan istilah orang tua dananak. • Terdapat juga istilah simpul (bercirikan kotak atau lingkaran). • Simpul yang berada diatas yang terhubung ke simpul pada
level dibawahnya disebut orang tua. • Setiap orang tua bisa memiliki satu (hubungan 1:1) atau
beberapa anak (hubungan 1:M), tetapi setiap anak hanyamemiliki satu orang tua.
• Simpul – simpul yang dibawahi oleh simpul orang tua disebutanak.
• Adapun hubungan antara anak dan orang tua disebutcabang.
• Perbedaannya adalah, record-record diorganisasikan sebagaitree (pohon) daripada graf.
Hierarchycal Model
4/18/2014 69tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
4/18/2014 70
PSIK-2PancasilaSBDAlgoritma
ekoEmiediedo endang egi eka elis
WidaBudi
Dosen
Gambar Hierarchycal Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
Model jaringan direpresentasikan dengansekumpulan record (Pascal),dan relasi antar data yang direpresentasikan oleh record & link. • Model ini menyerupai model hirarki. • Perbedaannya terdapat pada suatu simpul anak
bisa memilki lebih dari satu orang tua. • Model ini bisa menyatakan hubungan 1:1 (satu
arang tua punya satu anak), 1:M (satu orang tuapunya banyak anak), maupun N:M (beberapa anakbisa mempunyai beberapa orangtua).
• Pada model jaringan, orang tua disebut pemilik dananak disebut anggota.
Network Model
4/18/2014 71tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
4/18/2014 72
PancasilaBasisdataAlgoritma
ekoEmiediedo endang egi
Dosen WidaDosen Budi
Contoh Network Model
tiosetyo@yahoo.com , setyoinator@gmail.com www.cerdas-pintar.blogspot.com
top related