KEBUTUHAN PERENCANAAN DATABASE

dokumen-dokumen yang mirip
KETERGANTUNGAN FUNGSIONAL

RELASIONAL 1.1 KONSEP DASA,R

SISTEM BASIS DATA 1. WAHYU PRATAMA, S.Kom., MMSI.

SISTEM BASIS DATA. Pertemuan 3. Nizar Rabbi Radliya 3 SKS Semester 2 S1 Sistem Informasi

SISTEM BASIS DATA 2. WAHYU PRATAMA, S.Kom., MMSI.

MODEL DATA RELASIONAL

SISTEM BASIS DATA II S A N T I W I D I A N T I

Relational Database & Pemodelan Data [Review]

Model Relasional Basis Data

Normalisasi. Yusuf 2010

Materi 3 BASIS DATA 3 SKS Semester 4 S1 Sistem Informasi UNIKOM 2016 Nizar Rabbi Radliya

Pertemuan 3 dan 4 : MODEL DATA RELASIONAL

Tujuan Umum Tujuan Khusus Pokok Bahasan/Materi

BAB I NORMALISASI DATABASE

bergantung pada keberadaan entitas lainnya[9]. relasi yang merekatkan dua entitas adalah bersifat

Modul Praktikum Basis Data 4 Relasi Table

PERANCANGAN DATA BASE BY LILIS PUSPITAWATI, SE.,M.SI

OVERVIEW BASIS DATA RELASIONAL. Oleh: Ir. M. Ramadhan, MT

6. Kumpulan data yang diorganisir menggunakan metode tertentu sehingga menghasilkan informasi yang berguna bagi pemakainya, pengertian dari: JAWAB:

BASIS DATA I/2011-GANJIL MODEL RELASIONAL. Oleh Team Teaching Database. 12 Oktober 2011 BASIS DATA I/2011-GANJIL 1

BAB III ANALISA DAN DESAIN SISTEM

REFLEKSI DAN PERTIMBANGAN LEBIH LANJUT

Pertemuan 5 TEHNIK NORMALISASI

DESAIN DATABASE. Pertemuan 06 3 SKS

BAB 1 PENDAHULUAN. akan membuahkan hasil yang maksimal. Di sektor transaksi jual-beli saham. keuntungan yang maksimal dan kerugian yang minimum.

BAB II LANDASAN TEORI

SISTEM BASIS DATA (Lanjutan) :

BAB V. dimengerti, mudah dipelihara, mudah memprosesnya, dan mudah untuk dikembangkan sesuai kebutuhan baru

Tabel dan Key dalam Database Tipe data dan Karakter pada Database. Author : Minarni, S.Kom.,MM

Pertemuan Sistem Informasi SI adalah suatu suatu sistem dalam suatu organisasi yang merupakan

BAB IV Normalisasi Data

S Q L STRUCTURED QUERY LANGUAGE DEFINITION MANIPULATION C O N T R O L D M L SELECT INSERT UPDATE DELETE

BAB 3 BAHASA BASIS DATA (DATABASE LANGUAGE)

MODUL PEMPROGRAMAN SQL TINGKAT DASAR 1 STANDAR KOMPETENSI: MENERAPKAN BAHASA PEMPROGRAMAN SQL TINGKAT DASAR SMK NEGERI 1 MAJALENGKA

BAB 5 ANOMALI DAN INTEGRITAS DATA PADA MODEL RELASIONAL

DASAR DASAR MICROSOFT ACCESS

BASIS DATA MODEL RELASIONAL

Model Relational. S# Nama Status Kota S1 Hanato 20 Bandung S2 Andi 10 Jakarta S3 Shy 25 Surabaya S4 Tina 20 Medan

BAB I PENDAHULUAN 1.1 LATAR BELAKANG

Model Relasional. Basis Data. Pengertian

BAB II TINJAUAN PUSTAKA. hubungannya satu dengan yang lain, yang berfungsi bersama-sama untuk

Perancangan Basis Data

Abstraksi Data (Arsitektur DBMS)

KETERAMPILAN KOMPUTER 2B** (IT :S1-SA) Pertemuan 7. Database Dbase IV AHMAD HIDAYAT

BASIS DATA (BS203) NORMALISASI. fb: NDoro Edi. Page 1

Materi 4 BASIS DATA 3 SKS Semester 4 S1 Sistem Informasi UNIKOM 2016 Nizar Rabbi Radliya

SISTEM BASIS DATA. Pertemuan 4. 3 SKS Semester 2 S1 Sistem Informasi Nizar Rabbi Radliya

MODEL DATA RELASIONAL

Saat mencari data user dapat mecarinya berdasarkan nomor kontraknya maupun. keywordnya maka user harus menekan tombol GO untuk memulai pencarian.

NORMALISASI. Basis Data. Gentisya Tri Mardiani, S.Kom., M.Kom

Desain Data Base. Proses Desain Data Base

BAB III OBJEK DAN METODE PENELITIAN. suatu penelitian, yang dijadikan objek atau fokus dalam penelitian ini adalah

DATABASE FILE PENJUALAN FILE PELANGGAN FILE PERSEDIAAN CATATAN 3: PELANGGAN 3 CATATAN 2: PELANGGAN 2 CATATAN 1: PELANGGAN 1 CATATAN 100: PELANGGAN 100

SQL Server merupakan program yang dirancang khusus untuk berkomunikasi dengan database relasional guna mendukung aplikasi dengan arsitektur

BAB 3 MODEL RELASIONAL

Pengertian Query. Query adalah perintah-perintah untuk mengakses data pada sistem basis data

Pertemuan 2 dan 3 : Tujuan Instruksional Khusus :

NORMALISASI DATA POKOK BAHASAN. Pendahuluan

INTERNET PROGRAMMING DATABASE

BAB IX LINKED LIST (SENARAI BERANTAI)

BAB II LANDASAN TEORI

LAPORAN PRAKTIKUM IV BASIS DATA (SISTEM BERKAS - LAN)

MEMAHAMI KONSEP DATABASE. Oleh : Yuhefizar, S.Kom

STRUCTURE QUERY LANGUAGE

2.1 Sistem Pendukung Keputusan

PERANCANGAN BASIS DATA

PENDAHULUAN. Alif Finandhita, S.Kom

Basis Data Relational

DATA DEFINITION LANGUAGE : CREATE, DROP, ALTER

MATA KULIAH: PENGANTAR ILMU KOMPUTER DATABASE CREATED BY: PERTEMUAN 14

BAB III LANDASAN TEORI. mencapai tujuan tertentu.menurut Mulyadi (2006:4) Sistem pada dasarnya adalah

POKOK BAHASAN: TUJUAN PEMBELAJARAN:

SISTEM BASIS DATA 3 SKS

Pengenalan Algoritma & Struktur Data. Pertemuan ke-1

KONSEP PENGELOLAAN BASIS DATA

TUGAS I. Disusun untuk memenuhi tugas mata kuliah Basis Data. oleh. Muhamad Fachrul Zaini ( ) JURUSAN TEKNIK INFORMATIKA

Model dan Aljabar Relasional. Rima Dias Ramadhani, S.Kom., M.Kom Wa:

BAB 2 LANDASAN TEORI

Dbase Pendahuluan. Field 1 Field 2 Field 3 Field 4 Field 5

BAB III MODEL DATA RELASIONAL DAN ALJABAR RELASIONAL

ANOMALI. Anomali ada 3 jenis yaitu: Anomali pengubahan Anomali penyisipan Anomali penghapusan

P9 Normalisasi. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Mercu Buana Yogyakarta

Pendahuluan. Tujuan MODUL

BAB II TINJAUAN PUSTAKA. Menurut Sutabri (2004), sistem adalah sekelompok unsur yang erat

Komponen-Komponen SQL a. Data Definition Language (DDL) : Digunakan untuk mendefinisikan data dengan menggunakan perintah : create, drop, alter.

BAB II TINJAUAN PUSTAKA. hubungannya satu dengan yang lain, yang berfungsi bersama-sama untuk

ANOMALI. Terlihat ada ketidak konsistenan. Fakta pertama menyatakan bahwa pemasok citra berlokasi di Bogor, tetapi fakta kedua menyatakan di Bandung.

PENDAHULUAN. Alif Finandhita, S.Kom

STMIK AMIKOM YOGYAKARTA

ENTITY RELATIONSHIP DIAGRAM. SiBaDa Sesi 4

Database desain juga termasuk diagram ER (Entity-hubungan model). Diagram ER adalah diagram yang membantu merancang database secara efektif dan

-DATABASE (BASIS DATA)- Nama : Novriansyah Kelas : 2.DB.10 NPM : Dosen : Leli Safitri

Q U E L. Contoh : CREATE S(SN = TEXT(5),SNAME=TEXT(20), QUEL dan QBE Hal. 1 dari 15

Konsep Normalisasi dan Anomali Tabel

Pengolahan Data Base. Teknik Informatika Universitas Jenderal Soedirman

BAB 2 LANDASAN TEORI. pengolahan data, pengolahan gambar, pengolahan angka, dan lainnya.

KETERAMPILAN KOMPUTER 2B** (IT :S1-SA) Pertemuan 1 AHMAD HIDAYAT

[Data Warehouse] [6/C2 & 6/D2]

Untung Subagyo

SEKOLAH TINGGI TEKNOLOGI INDONESIA TANJUNG PINANG

Transkripsi:

KEBUTUHAN PERENCANAAN DATABASE 2.1 TUJUAN PERENCANAAN Sebelum melihat pada masalah-masalah perencanaan khusus dan algoritma, yang terbaik adalah menentukan beberapa tujuan perencanaan. Pada kenyataannya, apa yang diinginkan hasil akhir dari proses perencanaan database relasional? Meskipun beberapa tujuan perencanaan dapat disusun, tujuan berikut yang dianggap jadi lebih penting, yaitu : 1. Memiliki kemampuan menyimpan seluruh data yang berguna dalam database. 2. Meniadakan kerangkapan data (redundant). 3. Mengusahakan banyaknya relasi di dalam database minimum. 4. Mempunyai relasi yang dinormalkan, sebagaimana untuk problema meminimumkan pembaharuan dan penghapusan. Setiap tujuan ini akan dibicarakan dengan singkat. Tujuan 1 : Kemampuan menyimpan seluruh data yang berguna dalam database. Tujuan ini jarangjelas, tetapi ini paling penting. Database dianggap dapat memenuhi semua data yang menarik untuk organisasi sehingga database hams direncanakan dalam suatu cara sehingga suatu tempat untuk sebuah data dapat 11

ditemukan dalam database. Tingkat pertama didalam proses perencanaan adalah menetapkan semua atribut yangditempatkan dalam database. Suatu saat atribut telah diidentifikasi, perencana dapat mulai untuk bingung mengenai bagaimana beberapa relasi akan diperlukan,dan atribut yang mana akan dimasukkan ke dalam relasi tenentu. Di dalam sebuah database untuk mikrokomputer, di sini ada problema tambahan yaitu apakah data yang akan disimpam harns direncanakan sebagai hasil di dalam satu database, atau mungkin dua atau beberapa database. E_S E_S Emp* Supr I supe I I I Empt* 125 Jones 125 Jones 138 Smith 138 I Smith 195 smith 195 200 Jones 200 (a) (b) Gambar 2.1. Data rangkap yang tidak rangkap Tujuan 2: Meniadakan kerangkapan data. Percabangan dari tujuan ini tidak jelas untuk perencana database pemula. Kunci untuk mengerti tujuan ini adalah menyadari bahwa ada suatu perbedaan yang nyata antara data yang rangkap dan kerangkapan data yang rangkap.sebagai contoh, lihat relasi E_S pada gambar 2.1(a). Relasi ini mempunya 2 atribut, Emp#(nomor pegawai) dan Supr(pengawas).Relasi memenuhi data yang menunjukkan pengawas yang bersangkutan dari setiap pegawai di dalam perusahaan. Nama-nama dari para pengawas dapat ditunjukkan beberapa kali dalam relasi. Dalam kenyataan, sebuah nama pengawas akan muncul lagi untuk setiap pegawai yang diawasi. Catatan, meskipun 'Jones'dan 'Smith' keduanya muncul dua kali di dalam hal E_S diberikan di dalam gambar 2.1(a), tidak ada nama-nama rangkap yang dinamakan kerangkapan. Alasan mereka bukan kerangkapan yang adalah jika satu dari nama-nama itu tak ada dari relasi, maka informasi hhang.contoh gambar 2.1(b), menunjukan suatu hal dari E_Sakan terlihat sepeni dengan nama rangkap dihapus. Dalam alasan ini, tidak ada tujuan mengetahui nama-nama pengawas pegawai #195 dan #200. 12

Emp;t Supr Spone I 125 Jones 3051 135 Smith 2222 195 Smith 2222 200 Jones 3051 (a) E_S Emp;t Supr Sphone 125 Jones 3051 135 Smith 2222 195 Smith - 200 Jones - S_P (b) Emp;t I Supr I Gambar 2.2(a) adalah contoh dari sebuah relasi yang mempunyai redundant atas data yang rangkap. Relasi E_S_P Similar dengan relasi E_S tetapi memasukkan atribut Sphone, yang mana adalah nomor telephone dari pengawas (Diasumsikan bahwa setiap pengawas hanya mempunyai sebuah nomor telephone). Dalam hal ini nomor telephone untuk Jones dan Smith muncullebih dari sekali, dan informasi yang rangkap pada nomor telephone adalah redundant. Alasan nomor-nomor yang rangkap adalah kerangkapan jika, katakan, satu dari nomor-nomor telephone Jones ditiadakan, nomor telephone Jones adalah model yang tersedia di dalam tupel yang lain dalam relasi. Gambar 2.2(b) adalah sebuah contoh bagaimana relasi E_S_P akan terlihatjika nomor-nomor telephone yangrangkap diganti dengan 'null'.catatan bahwa nomor-nomor telephone untuk Jones dan Smith tidak akan hilang,sejak nomor-nomor itu setiap muncul d( dalam satu tupel dalam relasi. Metode ini. pedomankerangkapandatayangtidakmemuaskanuntuk 2 alasan.pertama,tempat kosong dalam basisdata harns dihindarkan, sejak program tambahan dikehendaki untuk menghitung apa ani dari null yang sebenamya. Dalam hal ini,jika tupel ketiga, ( 195,Smith,_), yang dibaca dari relasi,nomor telephone Smith akan tidak diketahui. Pemakai akan mempunyai cukup pengetahuan untuk melihat tupel yang lain dalam I Supr I Sphone 125 Jones Jones 3051 138 Smith Smith 2222 196 Smith 200 Jones I Gambar 2. 2 Meniadakan (c) kerangkapan data (data redundant) 13

relasi yang dipunyai Smith sebagai nilai atribut Supr dan tidak ada nilai null untuk Sphone. Kedua, dan lebih kritis, relasi dalam gambar 2.2(b) dibentuk seperti itu masalah penghapusan yang sukar dapat terjadi. Jika pegawai dengan E# = 125 meninggalkan enterprise, dan tupel (125,Jones,3051) dihapus dari relasi untuk mengambil kenyataan ini kedalam hitungan, nomor telephone untuk Jones hhang, sejak tidak muncul dimanapun selain di dalam relasi. Gambar 2(c) terlihat sebagai jalan terbaik meniadakan kerangkapan nomornomor telephone. Disini relasi E_S_P akan berubah tempat dengan 2 relasi, satu pedoman informasi dalam nomor-nomor pegawai dan nama-nama pengawas, dan satu pedoman informasi dalam nomor-nomor telephone pengawas. Ini akan menjadi terlihat didalam pasal berikutnya yang membagi relasi-relasi sebagai suatu cara perencanaan baku, tetapi harus dilakukan dibawah keyakinan yang pasti. Catatan dalam gambar 2.2(c) bahwa pegawai #125 dapat segera dihapus dari relasi E_S tanpa kehilangan nomor-nomor telephone pegawai-pegawai pengawas yang tadi, yang disimpan dalam relasi S_P.. Tujuan 3 : Memelihara nomor dari relasi untuk suatu minimum. Tujuan ini perjanjian dengan kenyataan bahwa meskipun membagi satu relasi kedalam dua atau lebih relasi yang lebih kecil boleh menjadi yang diinginkan untuk ketiadaan masalah-masalah keyakinan, terlalu banyak relasi dalam basisdata bisa membuatnya tidak praktis untuk menggunakan suatu angka yang siap dari pemakai. Demikian, relasi-relasi nomor tidak dapat menjadi boleh tumbuh dalam suatu cara yang tidak terbatas. 'Tujuan 4 : Mempunyai relasi yang dinormalkan. Tujuan 4 perjanjian dengan kenyataan relasi-relasi pasti adalah lebih susceptible untuk masalah penghapusan dan perubahan, seperti kehilangan nomor telephone pengawas dibicarakan dalam tujuan dua yang tersebut diatas, daripada relasi yang lain. Perencana harus belajar untuk menandai ini dengan kesanggupan relasi yang berbahaya dan menormalkannya dengan membaginya dalam suatu gaya tulisan. Normalisasi adalah menguraikan satu relasi kedalam dua atau lebih relasi mengikuti suatu cara yang khusus untuk menentukan pembagian. Normalisasi akan dibicarakan dalam pasal 3. Suatu masalah dengan rencana tujuan tiga dan empat adalah yang mereka kerjakan didalam kebalikan untuk setiap yang lain. Tujuan tiga akan mempunyai kompromi untuk mempertemukan ujuan empat atau,membicarakan,tujuan empat akan mempunya kompromi unttuk mempertemukan tujuan tiga. Ini akan menjadi bagiandari keputusan rencana akhir. 14

2.2 RELASI UNIVERSAL Anggap bahwa suatu basisdata keeil akan menjadi reneana untuk seorang penasehat universitas. Penasehat mempunyai beberapa mahasiswa yang dinasehati, semua yang tinggal di kampus, dan semua yang ada dalam departemen utama yang sarna. Langkah pertama dalam cara pereneanaan adalah penentuan dari semua atribut yang penasehat inginkan untuk dimiliki dalam basisdata, dan bagaimana atribut dihubungkan ke setiap yang lain. Informasi adalah tempatdi dalam pembiearaan oleh penasehat, membuat pasti bahwa penasehat tahu apakah data akan di dalal.1basisdata, bagaimana basisdata akan dipergunakan, dan apakah informasi penasehat mengharapkan untuk memperoleh dari basisdata. Setelah beberapa pertemuan oleh penasehat, nama-nama, keadaan-keadaan pada atribut disimpan yang ditentukan menjadi: Snum-nomor mahasiswa, suatu integer yang mempunyai nilai yang unik untuk setiap mahasiswa dalam universitas. Sname-nama mahasiswa, setiap mahasiswa hanya mempunyai satu nama, tetapi ini mungkin bahwa lebiiih dari satu mahasiswa mempunya nama yang sarna. Rnum-nomor kamar asrama kampus. Setiap mahasiswa tinggal dalam kampus dan diberi sebuah kamar. Lebih dari satu mahasiswa yang mungkin diberi pada spbuah kamar tunggal. Pnum-nomor telephone mahasiswa. Setiap kamar asrama kampus mempunyai satu telephone yang dipakai oleh semua mahasiswa dalam kamar. Class-nomor kelas. Ini adalah nomor petunjuk sebuah kelas yang diambil oleh seorang mahasiswa yang sebenarnya. Sebagai eontoh adalah MTH122. Penasehat hanya akan menyimpan datadalam kelas-kelas yangmempunyai kelengkapan oleh seorang mahasiswa yang memberi. Term-waktu kuliah. Ini waktu kuliah yang mana sebuah kelas yang diberikan dilengkapi oleh mahasiswa. Ini mungkin bahwa seorang mahasswa yang diberi boleh mengambil banyak kursus yang sarna dalam waktu yang berbeda. Grade-tingkatan kelas. Tingkatan seorang mahasiswa yang diberi diterima dalam sebuah kelas yang sebenarnya dalam suatu waktu yang diberi. Sebuah eontoh data yang penasehat reneanakan sebagai yangakan disimpan dalam basisdata diperlihatkan dalam gambar 2.3. Meskipun gambar ini sebuah eontoh tabular dari data bahwa mungkin akan ada di dalam basisdata pada beberapa saat pada waktu, tabel bukan suatu relasi. 15

ADVISOR Snum Sname Rnum Pnum Class Tenn Grade 3215 Jones 120 DH 2136 MTH 122 F84 1.6 SCIl20 F84 2.4 PHY230 W85 2. 1 MTH 120 W85 2. 3 3462 SmithA 238VH 2344 MTH 122 W84 2. 3 MTH123 W85 3. 5 PSY220 W85 3. 7 3567 HowesJ 120DH 2136 SCI239 W84 3. 3 EGR171 F84 3.5 PHY141 F84 1.8 4756 AlexK 345VH 3321 MUS389 F83 4.0 Gambar 2. 3 Data yang diinginkan oleh penasehat. 3215 JonesG 120DH 2136 MTH122 F84 1.6 SCIl20 F84 2.4 PHY230 W85 2. 1 MTH 122 W85 2. 3 Gambar 2.4. Satu 'baris' dari tabel dalam gambar 3. Untuk melukiskan mengapa tabel dalam gambar 2.3 bukan sebuah relasi, satu 'baris' akan dikeluarkan dalam gambar 2.4. Dalam gambarini, nilai field-field dalam empat field Snum, Sname, Rnum dan Pnum adalah semua nilai-nilai tunggal, sementara nilai-nilai dalam field-field Class, Term dan Grade mempunyai nilai-nilai jamak. 'Baris' ini dibedakan denganjelas dari bentuk tuple yang diberikan dalam relasi-relasi sederhana yang telah dibicarakan terlebih dahulu. Perbedaan itu adalah semua field-field dalam baris tidak melakuka~ pengisian atribl1tbernilai tunggal. Untuk menentukan data dalam gambar 2.3 kedalam bentuk sebuah relasi, data hams menjadi tempat akhir juga bahwa setiap tuple mempunyai suatu hal bernilai tunggal dalam tiap-tiap elemem dari tuple. Ini dapat selalu dilakukan oleh suatu cara pemasukan sederhana, dengan hasil dalam hal itu menjadi gambar 2.5. Cara yang mungkin penambahan dari sejumlah besar data rangkap, tetapi kerangkapan akan dijadikan pemindahan yang dibelakang dalam cara rencana. 16

Tabel dalam gambar 2.5 sekarang adalah suatu hal dari sebuah relasi yang sah. Ini ditunjuk sebagai relasi universal dari basisdata menjadi direneanakan. Relasi universal mempunyai semua atribut dari tempat yang menarik kedalam satu relasi, dan dapat menyimpan semua data yang akan menjadi tempat dalam basisdata pada suatu waktu yang akan datang. Untuk basisdata yang keeil (sesuatu dengan tidak lebih dari 15-20 atribut) relasi universal akan dapat dipergunakan dengan efektif sebagai hal pemula dari reneana basisdata. 2.3 MASALAH-MASALAH DENGAN MENGGUNAKAN SE- BUAH RELASI TUNG GAL ADVISOR Snum Sname Rnum Pnum Class Tenn Grade 32]5 JonesG ]20DH 2]36 MTH] 22 F84 1.6 32]5 JonesG ]20DH 2136 SCI120 F84 2.4 3215 JonesG ]20DH 2136 PHY230 W85 2. 1 3215 JonesG ]20DH 2136 MTH 122 W85 2. 3 3462 SmithA 238VH 2344 MTH 122 W84 2. 3 3462 SmithA 238VH 2344 MTH]23 W85 3.5 3462 SmithA 238VH 2344 PHY220 W85 3. 7 3567 HowesJ ]20DH 2136 SCI239 W84 3.3 3567 HowesJ ]20DH 2136 ERG]71 F84 3.5 3567 HowesJ 120DH 2136 PHY] 41 F84 1.8 4756 AlexK 345VH 3321 MUS389 F83 4.0 Gambar 2.5. Data dari tabel dalam gambar 2.3 ditempatkan dalam sebuah relasi yang berlaku. Suatu permulaan pereneana akan digoda untuk menggunakan relasi ADVISOR dalam gambar 2.5 sebagai basisdata yang lengkap. Kelihatannya untuk menjadi sesuatu yang terus didepannya untuk melakukan. Mengapa pemutusan ADVISOR kedalam beberapa relasi yang lebih keeil, ketika dia dapat pedoman semua data akan dia sendiri? Adalah beberapa alasan mengapa relasi yang sebenarnya ini tidak harus digunakan sebagai hanya satu di dalam basisdata. Ini akan dapat ditemukan oleh penglihatan bagaimana basisdata akan dipergunakan, dan bagaimana data dalam ADVISOR akan dipengaruhi oleh operasi-operasi basisdata yang pasti. Pembiearaan pusat bawah pada tiga masalah-masalah khusus: Satu dihubungkan untuk 17

pembahaman (atau modifikasi) dari data dalam basisdata; satu meliputi penghapusan sebuah tuple dan yang lainnya meliputi penyisipan sebuah tuple baru. Masalahmasalah diluar yang dengan umumnya dihubungi untuk sebagai penyisipan, penghapusan, dan perubahan penyimpangan, dimana sebuah penyimpangan adalah suatu variasi dari nonna. Masalah penyisipan : Jika penasehat menentukan sebuah nasehat barn, satu siapa yang harus belum melengkapi sebuah kelas, sebuah tuple untuk mahasiswa akan mempunyai penempatan didalam basisdata dengan null untuk nilai atribut Class, Tenn, dan Grade. Sebagai catatan beberapa waktu, nilai null hams dihindari. Demikian, mahasiswa bam tidak dapat ditambahkan pada basisdata sampai sesudah sebuah kelas menjadi lengkap. Gambar 2.6(a) adalah sebuah contoh dari apakah ADVISOR akan terlihat seperti jika seorang mahasiswa yang tidak hams melengkapi beberapa kelas dikuatkan kedalam relasi menggunakan dbase II. Untaian karakter null memperlihatkan sebagai tempat kosong (dalam Class dan Tenn). Sementara nilai bilangan null dalam tempat Grade diterjemahkan oleh dbase II sebagai sebuah 0.0. Gambar 2.6(b) memperlihatkan sebuah kemungkinan akibat dari kemunculan 0.0 dalam tempat kosong. Disini sebuah cara penyelesaian pada Query "Daftar Snums dan Snames dari semua mahasiswa yang diizinkan pada sisa satu tingkatan mengatakan suatu 2.0" akan dilaksanakan. HomerH didaftar sebagai bagian mahasiswa, tetapi HomerH tidak dilengkapi sebuah kelas tunggal. USE ADVISOR List 0000 1 3215 JonesG 120DH 2136 MTH122 F84 1.6 00002 3215 JonesG 1200H 2136 SCI 120 F84 2.4 00003 3215 JonesG 1200H 2136 PHY230 W85 2. 1 00004 3215 JonesG 1200H 2136 MTH 122 W85 2. 3 00005 3462 SmithA 238VH 2344 MTH 122 W84 2. 3 00006 3462 SmithA 238VH 2344 MTH123 W85 3.5 00007 3462 SmithA 238VH 2344 PHY220 W85 3. 7 00008 3567 HowesJ 120DH 2136 SCI239 W84 3.3 00009 3567 HowesJ 120DH 2136 ERG171 F84 3.5 00010 3567 HowesJ 120DH 2136 PHY141 F84 1.8 00011 4756 AlexK 345VH 3321 MUS389 F83 4.0 00012 7890 HOwerH 121VH 7619 0.0 (a) 18

. display off Snum, Sname for Grade < 20 3215 JonesG 3567 HowesJ 7890 I HowerH Gambar 2.6 (b) (a) hasil penyisipan sebuah record dengan tempat kosong. (b) kesalahan rangkap Query untuk tempat kosong. Masalah Memperbarui : Ini adalah sejumlah besar kerangkapan data dalam ADVISOR. Kerangkapan data selalu tanda kemungkinan dari perubahan hanya sebagian keinginan data selama sebuah operasi pembaharuan. ADVISOR mempunyai kedua penjelasan, dan tidak terlalu jelas, kerangkapan. Penjelasan kerangkapan adalah suatu pemberian nama mahasiswa, nomor kamar dan nomor telephone akan didaftar beberapa kali. Dalam hal ADVISOR diberikan dalam gambar 2.5 nomor kamar Ms.G Jones muncul tiga kali. Jika dia dihubungi penasehatnya dan mengatakan bahwa nomor kamarnya akan dirubah, Penasehat harus membuat pasti bahwa perubahan dibuat dalam seluruh tiga tuple atau data akan menjadi tidak tetap. Suatu kerangkapan yang tidak terlalujelas adalah nomor telephone.yang sarna memperlihatkan untuk semua mahasiswa yang tinggal dalam kamar yang sarna. Dalam gambar 2.5 nomor telephone untuk nomor 120DH muncul keduanya oleh JonesG dan HowesJ. Anggap MS.G.Jonesmenceritakan penasehatnya bahwa nomor telephonenya akan dirubah ke 777, tetapi lalai untuk menceritakan penasehat bahwa dia mempunyai seorang pasangan kamar.. Jika penasehathanya merubahnomor telephonedalam tuple-tupleitu yang dipunyai nomor mahasiswa JonesG didalamnya, lalu nomor telephone yang benar untuk telephone yang benar untuk telephone itu yang dinomor ka,mar 120DH tidak akan diketahui, sejak 2 perbedaan nomor untuk telephone dalatn kamar ini akan menjadi dalam relasi. Gambar 2.7 melukiskan penyimpangan pembaharuan yang telah lalu. Dalstm gambar 2.7(a) nomor telephone JonesG dirubah ke 7777. Gambar 2.7(b) memberikan dbase IIjawaban untuk Query "Daftar nomor telephone dalam kamar 120DH". Dua nomor yang didaftar dalam jawaban untuk Query, yang mana adalah kesalahan sejak setiap kamar hanya mempunyai satu telephone dan ~atu nomor telephone. Catatan bahwa jawaban yang rangkap untuka Query dicetak dengan dbase II. Nomor telephone 2136 dan 777 setiap muncul dalam tiga tuple berbeda dalam hal relasi ADVISOR dibawah pembicaraan, dan semua nilai enam memperoleh cetakan dengan DBMS diprogram untuk menyelesaikan kerangkapan jawaban untuk Query, jika tidak adalah permohonan yang khusus. 19

Masalah penghapusan : Dalam hal ADVISOR memberikan gambar 2.5, sebuah tuple dengan Snum =4756 muncul hanya sekali dalam relasi. Tuple ini adalah untuk seorang mahasiswa yang mempunyai nama AlexK. Anggap bahwa penasehat menemukan bahwa mahasiswa ini tidak mengambil kelas MUS389 sebagaimana ditunjukkan, dan penghapusan tuple ini dari relasi. Sejak ini hanya tuple yang menggabungkan beberapa relasi informasi untuk mahasiswa ini, penghapusan ini akan meniadakan mahasiswa dari basisdata. Jika penaseha mengikuti penghapusan ini dengan suatu permohonan untuk suatu pendaftaran nama-nama semua nasehat dari ADVISOR, nama AlexK tidak akan didaftar. -list off 3215 JONESG 120DH 2136 MTH 122 F84 1.6 3215 JONESG 120DH 2136 SCIl20 F84 2.4 3215 JONESG 120DH 2136 PHY230 W85 2. 1 3215 JONESG 120DH 2136 MTH 122 W85 2.3 3462 SMITHA 234YH 2344 MTH 122 W84 2.3 3462 SMITHA 234YH 2344 MTH123 W85 3.5 3462 SMITHA 234YH 2344 PSY220 W85 3. 7 3567 HOWESJ 120DH 2136 SCI239 W84 3.3 3567 HOWESJ 120DH 2136 EGR171 F84 3.5 3567 HOWESJ 120DH 2136 PHY141 F84 1.8 4756 ALEXK 345YH 3321 MUS389 F83 4.0 7890 HOWERH 121YH 7619 0.0 - replace Pnum with 7777 for Sname ='JONESG' 00004 REPLACEMENT (S) (a) 20

. display offpnum for Rnum = '120DH' 7777 7777 7777 7777 2136 2136 Gambar 2.7 2136 (b) (a) Merubah satu nomor telephone mahasiswa (b) Kesalahan query mengikuti perubahan nomor telephone. SOAL LATIHAN 1. Pada relasi ADVISOR sesuai gambar 2.5, manakah yang merupakan primary key (kunci utama)? 2. Pada relasi ADVISOR sesuai gambar 2. 5, identifikasikan pada data tersebut yang mengalamiduplikasi& redudan.. 3. Pada relasi ADVISOR sesuai gambar 2. 5, idemifikasikan pada data tersebut yang mengalami duplikasi tetapi tidak redudan 4. Relasi PHONE dibuat untuk memberikaninformasi mengenai nama Pegawai, Nomor TeleponRumah, Nomor Telepon untuk pesawat di kantor. Diasumsikan bahwa * Nama Pegawai unik, satu rumah dengan satu telepon & mungkin mempunyai telepon dengan pesawat yang berbeda-beda. * Setiap Pegawai beberapa karyawan mempergunakan telepon secara pararel secara khusus relasi PHONE disajikan pada gambar 2. 8 21

PHONE NAMA TELEPON RUMAH PESAWAT JONESKK 345-1121 3167 JONESKK 345-1121 3168 KROFf AD 345-9898 4000 MARTZLK 348-4512 3167 MARTZLK 348-4512 3168 RALSTONTI 345-7766 4001 RALSTONTI 345-7766 4002 Gambar 2. 8 Relasi PHONE Pertanyaan: (a) Diskusikan bahwa data relasi PHONE di atas yang redudan. (b) Bagaimana relasi PHONE diatas diubah sehingga data redudan hilang. (c) Gambarkan relasi dari relasi PHONE setelah menghilangkan data yang redudan. 22