Transcript for:
Pengenalan dan Pentingnya Basis Data

Halo teman-teman selamat datang di kelas belajar basis data dimana disini kita akan bahas tuntas ya tentang basis data dan cara memodelkan basis data Oke Sebelum kita mulai kita akan kenalan dulu ya jadi Nama saya adalah Eko Kurniawan saat ini saya kerja sebagai teknik klasik di salah satu e-commerce terbesar di Indonesia Saya sendiri sudah kerja lebih dari 12 tahun dan biasanya di sela-sela kesibukan saya bekerja saya biasa menyempatkan diri berbagai konten soal programming ya di website programmer zaman now atau di youtube channel programmer sama now Oke kalau teman-teman ingin diskusi langsung dengan saya teman-teman juga bisa kontak saya lewat telegram atau jangan lupa juga follow sosial medianya programmer ya ada di Link in Anda di Facebook Instagram YouTube telegram channel tiktok Nah kalau teman-teman misalnya dari perusahaannya butuh konsultasi ya teman-teman juga bisa email ke email pribadi saya oke agendanya apa sih jadi agendanya di sini kita akan bahas Tuntas tentang basis data ya dari mulai kita akan kenalan dengan basis data itu apa Nanti kita bahas tentang sistem basis data basis data relasional model data model data relasional kita juga nanti akan belajar tentang normalisasi data dan normalisasi data dan juga akan bahas tentang aplikasi sistem basis data jadi anggotanya lumayan banyak ya untuk materi basis data ini oke nggak usah berlama-lama kita akan langsung masuk ke materi Sekarang kita akan bahas tentang basis data ya basis data atau mungkin teman-teman lebih kenal dengan istilah database ya Jadi ini sebenarnya hal yang sama jadi database itu Bahasa Indonesianya adalah basis data itu bisa diibaratkan seperti lemari arsip Sebenarnya ya Jadi ada lemari arsip nah seandainya kita bertugas mengelolanya tentu kita akan merapikan data arsip di lemari tersebut gitu ya dari mungkin teman-teman kalau misalnya diminta untuk mengelola data arsipnya gitu ya di lemari arsip tersebut mungkin kita akan mencoba memberi tanda gitu ya di arsip-arsipnya atau bahkan mungkin mengelompokkan mengelompokkan arsipnya sesuai dengan jenis arsipnya gitu ya dan masih banyak yang lainnya nah pertanyaannya tujuannya apa sih gitu ya kita melakukan pengelompokan gitu ya memberi tanda dan lain-lain gitu ya ya tujuannya sederhana sebenarnya agar Ketika nanti kita ingin mencari data arsipnya kita bisa dengan mudah mencarinya gitu ya Kenapa karena kita sudah mengatur tata letak arsip tersebut di lemari gitu ya jadi dengan kita memanage ya penyimpanan arsipnya harapannya adalah suatu saat kita butuh gitu ya kita akan dengan mudah mendapatkan data arsipnya apalagi kalau lemari arsipnya sudah lumayan banyak ya data arsipnya Oke jadi kalau diibaratkan seperti ini kalau ini adalah lemari arsip gitu ya mungkin kita akan mengelompokkan Oke untuk rak pertama itu isinya adalah arsip-arsip data pegawai misalnya dan lemari kedua itu ya laci kedua Misalnya ini isinya adalah data-data arsip pelanggan misalnya seperti itu lalu laci ketiga Misalnya ini datanya adalah data-data penjualan misalnya dan seterusnya jadi Biasanya kita akan mengelompokkan ya Jadi kelompok-kelompoknya biasanya Kita bedakan lalu mungkin ada rentetan waktunya dikelompokkan gitu ya Ada bulan pertama disimpan di kumpulan sini bulan kedua di kumpulan sini dan seterusnya harapannya apa ya harapannya Ketika nanti kita butuh datanya yaitu kita bisa ambil dengan mudah oke itu adalah analoginya ya jadi basis data itu seperti lemari arsip Sekarang kita balik lagi Jadi apa itu basis data jadi basis data itu terdiri dari dua kata yang pertama basis dan juga data basis bisa diartikan tempat atau gudang atau tempat menyimpan gitu ya sedangkan data data itu adalah representasi fakta dari dunia nyata banyak orang yang bingung tentang data-data itu apa gitu data itu ya data gitu ya nah data itu adalah sebenarnya representasi fakta dari dunia nyata ini mewakili suatu objek Seperti contohnya manusia contohnya kan kayak karyawan gitu ya pelajar mahasiswa guru dan lain-lain Nah itu kan sebenarnya sebuah fakta gitu ya data karyawan pelajar mahasiswa guru dan lain-lain atau mungkin seperti barang gitu ya atau hewan atau bahkan bisa aja peristiwa maksudnya peristiwa Contohnya apa ya seperti misalnya fakta data penjualan misalnya seperti itu gitu ya itu kan sebenarnya peristiwa gitu ya penjualan nah jadi itu juga termasuk data ya dan masih banyak yang lainnya nah data biasanya disimpan dalam bentuk angka huruf simbol teks bahkan mungkin gambar atau mungkin video gitu ya jadi hal-hal seperti contohnya kalau kita ada data penjualan gitu ya kan pasti isinya ya berupa angka gitu ya huruf dan lain-lain atau kita mungkin misalnya berupa data galeri gitu ya isinya adalah gambar atau misalnya data film gitu ya isinya adalah film jadi seperti itu Nah basis data biasanya disimpan di dalam media penyimpanan berbasis disk gitu ya ya kan kita sekarang bahasnya bukan basis data yang manual ya yang seperti arsip kita basis datanya adalah di komputer Jadi biasanya basis data itu medianya disimpan di dalam disk contohnya mungkin hardisk atau flashdisk gitu ya atau zaman dulu mungkin ada vlogy disk gitu ya atau masih di bakar di dalam media CD misalnya seperti itu kalau sekarang mungkin sudah kebanyakan menggunakan hardisk atau juga flashdisk tapi ingat Tidak semua yang disimpan di disk ya atau misalnya di hardisk dan versi dan lain-lain itu bisa dibilang basis data Kenapa Karena tujuan utamanya dalam Basis data adalah pengaturan pemilihan pengelompokan dan juga pengorganisasian data yang baik ya Jadi kalau misalnya kita ya istilahnya acak-acakan gitu ya menyimpannya yaitu nggak bisa dibilang basis data gitu ya basis data tuh ya Mirip kita harus mengaturnya dengan baik gitu ya dengan tujuan adalah biar Ketika nanti kita butuh datanya itu kita bisa dapat dengan cepat gitu ya Oke kalau diibaratkan di dalam ini ya diagram mungkin seperti ini gitu ya jadi ini di sekitar misalnya ya entah itu hardisk atau misalnya flashdisk dan lain-lain gitu ya Nah biasanya mungkin kita akan bikin seperti Oh ini adalah folder pegawai isinya adalah data pegawai misalnya seperti itu oh ini adalah folder pelanggan nah ini adalah isinya data-data pelanggan misalnya dan data-data penjualan pembelian dan lain-lain jadi Biasanya kita organisasi kan dengan baik ya diletakkan dengan baik juga Oke selanjutnya kita juga harus tahu tentang operasi basis data di dalam disk basis data itu bisa dibuat atau juga dihapus atau juga diubah gitu ya jadi yang namanya basis data itu ya Selain kita simpan ya Otomatis kan bisa diubah gitu ya bahkan mungkin dihapus dan lain-lain nah Biasanya kita akan buat basis data dalam bentuk file ya berbeda tergantung jenis datanya contohnya Ini adalah file-file pegawai ini adalah file-file pelanggan ini adalah file-file penjualan dan lain-lain dari dalam basis data operasi basis data dikenal dengan operasi istilahnya adalah crude crud ini adalah singkatan dari create create update dan juga delete Jadi kalau teman-teman mendengar istilah crude itu nggak usah bingung ya ini adalah singkatan sebenarnya dari create update delete Oke create ini untuk membuat data baru jadi kalau teman-teman membuat data baru gitu ya di dalam basis data itu kita bilang adalah create kalau kita read ya itu artinya ya inilah artinya untuk membaca atau mencari data jadi istilahnya read untuk update itu artinya kita mengubah data yang sudah ada di basis data kita kalau yang terakhir adalah delete itu ya sudah jelas ya ini adalah untuk menghapus data oke sekarang tujuannya apa sih kita harus membuat basis data gitu Ya kenapa nggak kita simpan seadanya aja gitu ya di dalam hardisk kita misalnya yang pertama adalah speed speed itu maksudnya adalah kecepatan dalam mengambil atau mencari data bayangkan kalau kita tidak menyimpan gitu ya data kita secara rapi ya dalam basis data istilahnya itu kita simpan di mana aja gitu ya kita menyimpannya maka akan sulit untuk mencarinya kita mungkin harus buka satu persatu foldernya dan lain-lain gitu ya Sehingga otomatis mencari data itu akan menjadi hal yang lebih sulit gitu ya harapannya adalah dengan kita membuat basis data ya harapannya adalah cepat gitu ya nanti akan dalam pengambilan atau pencarian datanya Nah Selain itu Space ya atau efisiensi dalam ruang penyimpanan kalau kita Tata Letakkan dengan baik gitu ya file-file basis data kita mungkin ketika ada data yang duplikat misalnya ada data yang sama misalnya teman-teman menyimpan foto ternyata oh fotonya sudah ada gitu ya sudah pernah ada ya mungkin kita cukup akan menyimpan satu aja bayangkan kalau tidak diorganisir dengan baik kita tidak bisa tahu ya Mana data yang duplikat atau tidak bisa aja ternyata data-datanya sebenarnya banyak yang sama gitu ya Nah dengan basis data ini kita bisa mengefisiensikan ruang penyimpanannya ya biar lebih hemat karena kita bisa tidak menyimpan data duplikat nah Selain itu adalah akurasi datanya otomatis akurat karena kita organizer dengan baik gitu ya ketika ada penambahan data pengaplikasian data kita tahu tata letaknya di mana Jadi harapannya adalah datanya akan selalu akurat ya data yang terbaru nah Selain itu adalah availability atau ketersediaan data jadi dengan kita mengorganisir kita bisa tahu data mana yang misalnya Oh belum lengkap atau sudah lengkap dan lain-lain gitu ya jadi harapannya adalah datanya akan tersedia dengan baik Ya Termasuk yang komplitness ya kelengkapan datanya jadi kita dengan mudah bisa melihat kelengkapan datanya Nah biasanya di dalam base data itu ada elemen yang namanya security atau keamanan data gitu ya jadi ini memastikan data yang kita simpan itu dalam keadaan aman gitu ya Lalu ada serebility atau kemudahan berbagi data jadi dengan basis data kita bakal lebih mudah gitu ya kalau mau berbagi data dengan pihak lain karena kita sudah organisir data kita dengan baik jadi ini tujuan-tujuan kenapa kita butuh belajar tentang basis data oke sekarang pertanyaannya Contohnya apa sih penerapan basis data sebenarnya di semua bagian ketika kita lihat di dunia nyata itu kebanyakan sudah implementasi basis data Walaupun mungkin masih ada yang melakukan manual seperti yang di awal Ya seperti lemari arsip seperti itu contohnya misalnya kalau teman-teman lihat di bank itu dalam mengelola data sangat nasabah gitu ya tabungan Transaksi dan lain-lain itu semuanya sudah menggunakan basis data ya jarang sekarang yang mungkin sudah masih menggunakan manual ya apalagi Bang gitu ya bang Mungkin sekarang udah hampir semuanya menggunakan basis data elektronik yang pastinya ya Nah lalu contohnya Rumah Sakit ya dalam mengolah data pasien history rawat jalan gitu ya atau rawat inap dokter dan lain-lain bayangkan kalau tidak ada basis datanya tiap kita datang ke rumah sakit kita harus daftar lagi gitu ya karena tidak ada basis datanya Tapi biasanya kalau di rumah sakit sudah ada data pasiennya Jadi kalau teman-teman datang ke rumah sakit besoknya datang lagi kita bisa lihat history rawat kita gitu ya jadi semuanya yang sudah terdata dengan baik menggunakan basis data atau contohnya di sekolah gitu ya dalam mengolah data guru pelajar mata pelajaran dan lain-lain itu semuanya ada basis datanya jadi kita bisa lihat daftar pelajarannya gurunya siapa aja mata pelajarannya kapan waktunya dan lain-lain itu dengan mudah lalu contohnya yang sekarang lagi populer misalnya toko online itu juga dalam mengolah data seperti pelanggan penjual barang pembelian pengiriman gitu ya dan masih banyak hal yang lainnya itu sudah disimpan dalam basis data gitu ya jadi pengelolaan datanya itu lebih gampang buktinya kalau teman-teman buka toko online teman-teman bisa lebih gampang gitu ya Mencari data barang gitu ya mencari per kategori gitu ya dan semuanya itu sangat mudah itu karena memang sudah ditata dengan baik di dalam basis datanya jadi ini pengenalan tentang basis data sekarang kita bahas tentang sistem basis data basis data atau database perlu ada yang melakukan pengolahan datanya gitu ya kalau misalnya kita simpan di dalam folder secara manual mungkin itu pengelolanya adalah kita gitu ya jadi manual nah tapi sistem basis data yang kita bahas sekarang itu pastinya adalah ada aplikasi yang melakukan pengolahan datanya jadi semuanya dilakukan atau diolah secara otomatis ya oleh si aplikasinya jadi kita nanti hanya perlu memerintahkan sih aplikasinya nah pengelola basis data Itu adalah sebuah program atau aplikasi ya atau istilahnya itu adalah software atau juga perangkat lunak nah gabungan aplikasi pengolah basis data gitu ya kita sebut namanya adalah sistem basis data atau lebih populer dinamakan database management system Jadi kalau basis data itu adalah datanya gitu ya kalau misalnya database management system itu adalah aplikasi atau sistem yang mengelola si database Oke jadi kurang lebih seperti ini sebenarnya ya jadi saat kita membuat basis data gitu ya sebenarnya ada sistem basis data yang mengelolanya ada banyak sekali ya aplikasi sistem basis data contoh yang paling sederhana misalnya yang teman-teman mungkin sudah familiar ya contohnya adalah Microsoft Excel gitu ya itu adalah salah satu aplikasi pengelola basis data misalnya gitu ya Microsoft Excel mengelola data ya dalam bentuk tabel ya Di mana ketika kita simpan basis datanya dia akan disimpan dalam sebuah file Nah jadi file-file Excel itu kita bilang namanya adalah basis data sedangkan gitu ya aplikasi excelnya kita bilang adalah sistem basis data Oke kita bahas tentang komponen atau sistem basis data ya jadi komponen-komponen apa aja yang ada di sistem basis data nah yang pertama pasti ada yang namanya hardware atau perangkat keras seperti contohnya komputer laptop server dan lain-lain gitu Ya karena ya kalau tidak ada perangkat keras ya kita tidak mungkin gitu ya bisa menjalankan aplikasi sistem basis datanya Nah Selain itu ada juga sistem operasinya contohnya misalnya kalau teman-teman menggunakan Windows atau Mac OS atau Linux dan lain-lain Kenapa karena aplikasinya pasti perlu jalan di sistem operasi nah lalu kita perlu aplikasi basis datanya ya atau database management system contohnya kalau misalnya di dalam ini ya kalau misalnya kita sebagai yang ingin menjadi misalnya programmer itu mungkin basis datanya sistemnya Seperti contohnya my sequel postql SQL server dan lain-lain atau kalau misalnya targetnya adalah bukan programmer misalnya kayak pengguna biasa gitu ya and user Nah itu mungkin seperti Microsoft Excel gitu ya Microsoft Access gitu ya atau Google Docs dan lain-lain Nah selanjutnya di dalam komponen sistem basis data Itu sudah pasti ada usernya user itu adalah penggunanya pengguna basis datanya contohnya misalnya ya programmer gitu ya atau database administrator atau mungkin and usernya dan lain-lain nah tapi biasanya ketika kita membuat sistem basis data atau menggunakan sistem basis data itu biasanya kita bisa gunakan aplikasi lain untuk menggunakan atau mengelola database melalui sistem basis data contohnya kalau kita sebagai programmer Biasanya kita akan membuat aplikasi ya yang menggunakan basis data contohnya aplikasi web desktop dan lain-lain Nah inilah yang membedakan dengan aplikasi basis data yang kebiasaan banyak digunakan oleh pengguna biasa ya seperti Microsoft Excel dan lain-lain nah perbedaannya adalah sistem bazata yang akan kita gunakan biasanya ya sebagai programmer itu sebagai data yang bisa berkomunikasi tidak hanya dengan user tapi juga dengan aplikasi lain contohnya makanya sistem yang banyak digunakan contohnya ada aplikasi contohnya my sequel SQL server Oracle dan lain-lain nanti kita bahas di bagian akhir Oke jadi nanti itu sistem basis data yang akan kita gunakan gitu ya dia akan digunakan mengolah database ya jadi basis datanya akan dikelola oleh sistem basis data nah biasanya sistem basis data itu gitu ya aplikasinya itu sebenarnya bukan dalam bentuk aplikasi user interface seperti Microsoft Excel biasanya ya kalau yang programmer gunakan nah biasanya sistem basis datanya itu berbasis biasanya perintah ya atau aplikasinya itu berbasis server jadi nanti perlu diperintahkan untuk mengelola basis datanya Nah biasanya perintahnya itu datang dari contohnya and user ya contohnya mungkin database administrator atau programmer gitu ya Misalnya programmer atau juga aplikasi yang lainnya contohnya dari web gitu ya jadi dari web nanti datanya akan bisa diambil oleh si aplikasi web atau programmer atau and user yang lainnya nah Biasanya kan kalau misalnya aplikasi seperti Microsoft Excel Biasanya kita and user langsung menggunakan Microsoft Excel gitu ya Nah kalau misalnya sistem basis data seperti yang kebanyakan programmer gunakan itu biasanya selain user bisa gunakan tapi aplikasi lain juga bisa gunakan nah di dalam sistem basis data itu biasanya ada bahasa basis data gitu ya atau bahasa yang digunakan untuk berinteraksi dengan sistem basis datanya sistem basis data merupakan perantara antara basis data dan juga penggunanya baik itu penggunanya itu adalah orang ataupun aplikasi lain seperti contohnya web nah biasanya untuk mengelola basis data Kita akan menggunakan bahasa basis data sesuai dengan sistem basis data yang kita gunakan biasanya ya Jadi tergantung nanti sistem basis data yang kita gunakan secara garis besar dalam bahasa basis data tersebut biasanya ada dua jenis perintah perintah yang pertama adalah DDL atau singkatan dari data definition language dan yang kedua adalah dml ya atau data manipulation language nah pertanyaannya apa nih DDL itu apa dml itu apa Yuk kita bahas kita bahas dulu dengan DDL ya atau data definition language jadi DDL itu merupakan perintah-perintah dalam bahasa basis data untuk membuat struktur bentuk dari basis data yang akan kita buat misalnya contohnya kita mau membuat perintah untuk membuat contohnya atau mengubah atau bahkan menghapus basis data atau data arsipnya atau databasenya gitu ya Nah mirip kalau teman-teman misalnya kalau di sistem operasi Windows Anggap saja seperti membuat foldernya Nah kalau di dalam sistem basis data kita perlu perintahkan gitu ya sistemnya untuk membuat contohnya database atau basis datanya Lalu setelah itu kita akan perintahkan Juga misalnya untuk membuat filenya atau dalam basis data itu namanya misalnya tabelnya gitu ya nanti tabelnya ada berapa kolom tipe data tiap kolomnya apa aja Apakah ini number Apakah ini teks misalnya dan lain-lain nah perintah untuk membuat mengubah menghapus tabel dan juga ini ya itu digunakan juga dalam DDL ya Jadi ini tempat untuk nanti menyimpan datanya Nah jadi kita sebelum nanti menyimpan data kita harus membuat dulu tabelnya gitu ya jadi seakan-akan kita siapkan dulu tempatnya baru kita nanti simpan datanya Nah Selain itu dalam BDL kita juga perlu menentukan kamus data dari tiap tabel yang kita buat seperti nama-nama kolomnya nanti apa aja di tabelnya dan tipe data di kolomnya itu nanti apa aja jadi ketika teman-teman misalnya bikin Oke saya mau bikin tabel pegawai Nah kita harus Tentukan nanti kolomnya apa aja contohnya ada kode pegawai tipenya misalnya angka Lalu ada nama pegawai misalnya tipenya adalah teks gitu ya lalu tanggal lahir pegawai tipenya adalah tanggal misalnya seperti itu nah jadi itu semuanya harus kita buat gitu ya dan tentukan itu namanya adalah kamus datanya Nah selanjutnya ada data manipulation language Jadi biasanya DDL itu akan kita gunakan perintah-perintahnya di awal ketika kita membangun struktur basis datanya Nah setelah struktur basis datanya selesai dibuat Biasanya kita akan menggunakan dml atau data manipulation language Nah dml itu merupakan perintah-perintah dalam bahasa basis data Untuk memanipulasi data setelah kita buat struktur basis datanya menggunakan tdl misalnya ketika teman-teman mau menambah atau mengubah atau menghapus atau bahkan mencari data dalam tabel Nah itu kita menggunakan bahasanya adalah data manipulation language jadi tahapannya itu harusnya kita akan membuat struktur dulu menggunakan DDL setelah itu baru kita olah datanya menggunakan dml Oke jadi nanti ketika kita menjalankan aplikasi sistem basis data ya Di mana dia yang bertugas untuk mengelola basis data filenya nah yang kita gunakan ya entah itu kita sebagai programmer atau misalnya database administrator atau mungkin kita membuat aplikasi dalam bentuk web misalnya yang kita gunakan adalah kita hanya mengirim perintah-perintah dalam bentuk bahasa basis data perintahnya ya dml atau juga DDL gitu ya jadi semuanya perintahnya kita kirimkan ke sistem basis data nanti yang mengatur semua ini basis datanya dalam bentuk filenya itu dilakukan oleh si sistem basis data Jadi ini sistem basis data Oke teman-teman jadi di kelas ini kita tidak akan bahas detail tentang sistem basis data ya karena itu prakteknya harus sesuai dengan aplikasi nanti yang kita pilih ya dalam sistem basis datanya Nah saya akan rekomendasikan beberapa nanti di bagian akhir gitu ya jadi teman-teman Silahkan nanti lihat di bagian akhir rekomendasi beberapa sistem basis data yang teman-teman bisa pelajari jadi di materi ini kita hanya akan bahas tentang basis data dan juga bagaimana cara membuat basis data yang baik ya Nah kita bahas dulu tentang model data Oke model data merupakan kumpulan konseptual untuk menggambarkan Data hubungan data dan juga batasan atau aturan datanya jadi saat nanti teman-teman membuat basis data kita harus memodelkan datanya dulu harapannya apa harapannya adalah agar basis data kita bagus ya dan juga baik Nah model data dibuat dengan tujuan agar kita bisa tahu makna dari data dan juga relasi antar datanya Nah karena kita ketika kita membuat basis data itu biasanya kadang-kadang sering sekali ya terjadi yang namanya relasi data contohnya misalnya teman-teman bikin basis data penjualan nanti kan ada pelanggan misalnya Datanya ada penjualan gitu ya Ada barang itu kan biasanya berelasi itu ya Misalnya penjualan itu kan pasti dibeli oleh misalnya pelanggan Dan biasanya dalam penjualan ada jenis barang-barang gitu ya yang dibeli oleh pelanggan jadi ada relasi antara pelanggan Dan juga penjualan dan juga barang yang dibelinya nah terdapat banyak cara untuk memodelkan data dan yang paling populer itu menggunakan yang namanya IRD atau singkatan dari entity relationship diagram nah di kelas ini kita akan bahas ya cara memodelkan datanya menggunakan IRD atau entity relationship diagram Oke seperti yang dibahas di awal tentang data jadi data itu adalah fakta dunia nyata atau real world ya Jadi ini fakta kalau data itu sebenarnya dia adalah fakta nah fakta dunia nyata di sini bukan berarti data harus dalam bentuk sesuatu yang berwujud gitu ya bisa juga sesuatu yang tidak berwujud gitu ya contohnya mungkin seperti penjualan penjualan itu kan sebenarnya seperti kegiatan gitu ya jadi hal yang tidak berwujud kalau pelanggan kita sudah tahu Iya biasanya dia berwujud gitu ya dalam bentuk manusia tapi penjualan itu tidak berwujud seperti itu jadi fakta itu gitu ya bukan harus sesuatu yang berwujud bisa aja sesuatu yang tidak berwujud Nah setelah itu fakta dunia nyata dalam basis data juga biasanya cakupannya lebih sempit gitu ya mengikuti ruang lingkup yang sedang ditinjau Jadi maksudnya ketika kita nanti membuat aplikasi misalnya contohnya aplikasinya itu nanti untuk ruang lingkupnya adalah bank gitu ya Nah Biasanya kalau misalnya manusia gitu ya kita modelkan datanya mungkin kalau dalam ruang lingkup bank itu sebagai nasabah nah tapi berbeda kalau nanti kita bikin aplikasi Rumah Sakit manusia mungkin kita modelkan bukan lagi dalam bentuk nasabah melainkan adalah pasien walaupun secara bentuk sebenarnya sama gitu ya Dia adalah manusia tapi secara data mungkin nanti yang disimpan berbeda nasabah mungkin kita akan menyimpan seperti namanya gitu ya nomor KTP saldonya berapa gitu ya Nah kalau pasien kita nggak butuh misalnya saldo dan lain-lain gitu ya Nah kita cuma butuh Misalnya namanya misalnya gitu ya nomor KTP alamatnya gitu ya riwayat misalnya sakitnya apa aja dan lain-lain kalau dalam ruang lingkup bank Kita kan nggak perlu gitu ya Dia pernah sakit apa aja kita nggak butuh gitu ya Nah artinya basis data biasanya cakupannya lebih sempit gitu ya tidak semuanya kita simpan tapi lebih sempit sesuai dengan ruang lingkup yang akan kita buat jadi kalau kita buat dalam bentuk misalnya aplikasi bank ya ruang lingkupnya cuma Bank aja kalau rumah sakit ya ruang lingkupnya adalah rumah sakit saja Oke kita bahas tentang entity relationship model model data dalam basis data kebanyakan dibuat dalam bentuk entity relationship model gitu ya jadi entitas model entitas yang berelasi nah dalam model Ir atau entity relationship data dunia nyata driver perhatikan dalam komponen-komponen ya terdapat beberapa komponen dalam model liar yang pertama adalah entity yang kedua adalah atribut dan yang ketiga adalah relationship jadi ini adalah entitas atribut dan juga relasi kita akan coba bahas yang pertama adalah entity Apa itu entity entity merupakan individu yang mewakili data atau fakta yang nyata ya dan bisa dibedakan dari sesuatu yang lainnya saat menentukan sebuah entity kita perlu lihat ruang lingkup yang sedang kita kerjakan contohnya ya contohnya misalnya orang gitu ya kalau kita lihat data dalam bentuk orang Mungkin kita bisa anggap sebagai satu entity gitu ya tapi kalau kita lihat dalam ruang lingkup yang berbeda contohnya misalnya Rumah Sakit kita tidak bisa buat mungkin dalam satu entity orang tersebut Kenapa Karena orang itu mungkin ada banyak jenisnya contohnya misalnya kalau di dalam ruang lingkup rumah sakit orang itu mungkin ada pasien ada dokter mungkin ya Atau mungkin ada pegawai gitu ya nah jadi kita tidak bisa bilang oh kalau ini orang Berarti data orang gitu ya nanti kita simpan dalam data orang nggak bisa kita harus benar-benar lihat dalam ruang lingkup yang sedang kita buat kalau kita buat dalam ruang lingkup mungkin misalnya bank mungkin orang itu bentuknya datanya atau entity-nya itu bentuknya Nggak cuma orang gitu Ya bisa aja mungkin nasabah gitu ya atau pegawai gitu ya atau customer service dan lain-lain jadi bentuknya bisa berbeda-beda gitu ya jadi untuk menentukan data entity gitu Ya kita harus lihat ruang lingkupnya ingat juga ya entity tidak hanya sesuatu yang berwujud gitu ya bisa juga yang tidak berwujud contohnya kalau misalnya di dalam ruang lingkup Rumah Sakit bisa aja misalnya NTT itu contohnya misalnya ininya gitu ya penyakit misalnya seperti itu gitu ya atau dalam ruang lingkup bank misalnya kayak rekening seperti itu itu juga kita bilang namanya adalah entity Oke selanjutnya adalah atribut setiap entity itu pasti memiliki yang namanya atribut atribut ini adalah yang mendeskripsikan karakteristik dari enzim tersebut nah penentuan atribut dalam entity biasanya berdasarkan fakta yang ada dan yang memang dibutuhkan dalam ruang lingkupnya saja jadi tidak semua atribut itu kita simpan gitu ya biasanya tergantung ruang lingkup yang mau kita buat basis datanya contohnya misalnya kalau kita bikin basis data Rumah Sakit misalnya lalu kita tentukan bahwa entity-nya adalah pasien contohnya ya kita bisa menambahkan atribut Seperti contohnya nomor pasien gitu ya nama pasien alamat pasien Dan lain-lain intinya adalah yang memang dibutuhkan dalam ruang lingkup Rumah Sakit kita tidak butuh contohnya misalnya saldo pasien berapa gitu ya Misalnya setelah itu misalnya adik kandungnya siapa misalnya dan lain-lain Kenapa karena itu bukan ruang lingkup dari rumah sakit tapi sebenarnya itu Datanya ada gitu ya tapi kita tidak butuh jadi yang kita simpan memang harus sesuai dengan ruang lingkupnya nah dan fakta yang tidak masuk dalam ruang lingkup mungkin tidak perlu kita jadikan atribut gitu ya contohnya misalnya kayak hobi pasien juga kita mungkin nggak perlu gitu ya kalau dalam ruang lingkup Rumah Sakit harta misalnya total harta Pasien itu juga tidak perlu kecuali misalnya kita bikin aplikasi misalnya aplikasi pajak gitu ya Ya mungkin harta pasien perlu gitu ya tapi kalau rumah sakit ya tidak perlu Nah di dalam atribut biasanya terdapat atribut kunci atribut kunci itu yang digunakan sebagai kunci representasi dari entity tersebut contohnya misalnya nomor pasien atau kalau dalam kependudukan misalnya nomor KTP misalnya intinya apa intinya adalah atribut kunci itu adalah atribut yang bisa merepresentasikan data si entity-nya jadi dengan cukup satu atribut itu kita sudah tahu kalau ini data entity a misalnya seperti itu ya contohnya Mungkin nomor pasien kalau di sistem rumah sakit jadi ini adalah atribut Oke selanjutnya itu yang terakhir adalah relationship relationship merupakan hubungan antar entity atau entitas jadi ini relasi antar entitas nah detail tentang relationship nanti kita akan bahas ya di materi yang namanya model data relationship Nah sekarang kita Fokusnya ke model data sederhana Nah contoh misalnya kalau relationship itu contohnya ruang lingkupnya Rumah Sakit misalnya ya jadi hubungan antara dokter dan juga pasien misalnya merawat gitu ya jadi dokter merawat pasien Nah itu dibilang adalah relationship atau relasi seperti itu gitu ya atau misalnya pasien membeli obat gitu ya Nah membeli itu Itu adalah sebuah relasi jadi ada entitas obat ada entitas pasien pasien membeli obat gitu ya Nah itu kita bilang adalah relasi jadi hubungan-hubungan seperti itu itu namanya adalah relasi contohnya misalnya kalau dalam penjualan misalnya kan tadi ya kita di awal pernah bahas tentang ada entitas misalnya barang ada entitas misalnya pelanggan pelanggan membeli barang berarti membeli itu Itu adalah sebuah relasi jadi yang data penjualan itu sebenarnya adalah relasi ya antara pelanggan dengan barang jadi itu adalah relationship oke Nah jadi kita sudah tahu ya Ir model ya atau entity relationship model Nah sekarang pertanyaannya kalau misalnya kita buat Ir itu apakah bentuknya cuma tulisan atau seperti apa gitu ya Nah Sebenarnya ada yang namanya entity relationship diagram jadi setelah nanti kita menentukan entity gitu ya jadi saat kita membuat sistem Rumah Sakit kita harus Tentukan ntt-nya apa aja Lalu setelah itu atributnya apa Jadi tiap ntt-nya lalu relationshipnya apa aja Nah selanjutnya setelah kita Tentukan semuanya kita akan buat biasanya dalam bentuk diagram Kenapa belum bentuk diagram agar mudah ya untuk dimengerti oleh semua pihak jadi IRD atau entity relations diagram itu sangatlah sederhana Sebenarnya ya Jadi teman-teman nanti ketika buat pun harusnya sederhana kita bisa representasikan tiap NTT atribut relationship dan juga hubungannya atau istilahnya ada link dengan gambar seperti yang nanti kita lihat di selanjutnya Oke jadi ini jadi untuk nanti kita misalnya kalau sudah menentukan NTT kita akan buat ntt-nya dalam bentuk kotak seperti ini ya nah jadi ini nanti kita sebutkan misalnya Oh nanti ada kotak atau entity pasien ada kotak atau entity dokter obat dan lain-lain lalu untuk atribut Biasanya kita akan gunakan oval seperti ini gitu ya lalu untuk relationship kita akan gunakan tanda seperti ini ya Nah lalu yang link itu seperti ini ya atau hubungan ya jadi entity misalnya punya atribut jadi tinggal entity bikin link seperti ini nah jadi ini simbol-simbol atau diagram-diagramnya gitu ya Jadi sebenarnya nanti akan sangat mudah Oke nextnya kita akan coba buat gitu ya praktek ya membuat TRD Ya seperti apa Oke biar lebih lancar ya kita akan coba studi kasus tahapan pembuatan yard atau entity relationship diagram Oke kita akan buat contoh kasus ya ruang lingkupnya adalah toko online jadi kita akan coba membuat misalnya ruang lingkupnya adalah toko online Oke pertama kita perlu tentukan dulu entity-nya apa aja Nah sebenarnya untuk menentukan NTT nanti tergantung aplikasi atau misalnya ruang lingkup yang mau kita buat gitu ya toko online pun mungkin Tiap orang gitu ya beda-beda toko online yang bentuknya seperti apa gitu ya jadi nanti ruang lingkupnya menyesuaikan Nah kita akan buat yang sederhana dulu ya jadi Hal pertama yang perlu kita tentukan dalam membuat TRD itu adalah menentukan entity yang akan terlibat ya contohnya di dalam kasus toko online tersebut nah misal ini misal saja gitu ya kenyataannya mungkin harusnya lebih kompleks ya Nah misal di dalam toko online kita akan menentukan tiga entity yang terlibat misalnya yang pertama adalah pembeli yang kedua adalah penjual dan yang ketiga adalah barang nah perlu diingat ya di dalam toko online yang nyata Sebenarnya masih banyak entity yang terlibat nah tapi kita sekarang perkecil ya sekopnya itu cuma 3 yaitu adalah pembeli penjual dan juga barang Nah berarti setelah kita tentukan di sini ya Ada pembeli penjual barang Nah selanjutnya kita akan buat diagramnya Nah untuk diagramnya kurang lebih akan seperti ini jadi sederhana ya Jadi kita sudah buat 3 NTT yang pertama adalah pembeli yang kedua adalah penjual dan yang ketiga adalah barang jadi kita sudah menentukan entity-nya setelah kita sudah menentukan entity-nya kita lanjut dengan menentukan atribut q ya jadi bukan cuma atribut tapi ini atribut key atribut kuncinya yang bisa merepresentasikan data cntt-nya Oke jadi setiap entity nanti wajib memiliki yang namanya atribut key Maka selanjutnya kita perlu menentukan atribut Q nya dari tiap entity jadi ini adalah atribut yang bisa merepresentasikan data dari si entitasnya kita misalkan aja gitu ya di dalam entity pelanggan misalnya atribut giginya adalah email misalnya ya jadi email sih pelanggannya jadi dengan kita menggunakan email pelanggan kita bisa tahu pelanggan ini siapa misalnya ya Nah pembeli Juga misalnya sama Oh ini salah ya Harusnya bukan pembeli tapi penjual ya di sini penjual pembeli harusnya dan penjual gitu ya nanti kita tapi ini atribut key-nya adalah email ya jadi dua-duanya email Oke Nah selanjutnya adalah yang ketiga adalah barang barang itu atribut key-nya apa misalnya di sini adalah SKU ya jadi di tiap barang kalau teman-teman ingin tahu itu biasanya ada SKU Ya seperti nomor barangnya gitu ya Nah kita akan bilang nanti atribut key-nya adalah SKU karena dari SKU itu kita bisa tahu barangnya ini barang apa ya nah jadi kita perlu Tentukan atribut key-nya Nah setelah kita tentukan atribut key-nya Nah selanjutnya kita baru tambahkan atributnya ke dalam SI diagramnya nah kurang lebih nanti hasilnya akan seperti ini jadi untuk pembeli Kita tentukan atribut key-nya adalah email Jadi dia akan punya email seperti ini ya biasanya atribut gigi itu ada garis bawahnya ya contohnya seperti ini lalu untuk penjual juga dia email lalu untuk barang itu adalah SKU jadi kita sudah tentukan atribut key dari 3 entitas ini Nah selanjutnya setelah kita tentukan atribut key-nya kita lanjut dengan menentukan atribut lainnya ya jadi setelah menentukan atribut key selanjutnya kita bisa lanjutkan dengan menentukan atribut dari tiap NTT yang masuk ke ruang lingkup yang akan kita buat ingat ya harus yang masuk ke ruang lingkup yang akan kita buat jadi kalau tidak masuk ruang lingkup kita tidak perlu tambahkan ya kita akan coba nih contohnya misalnya ya di dalam pembeli misalnya kita mau cukup menambahkan nama dan juga alamat misalnya ya dan untuk penjual misalnya cukup namanya saja Nah untuk barang kita cukup nama dan juga harganya misalnya seperti itu jadi hal-hal lain yang berhubungan dengan pembeli misalnya gitu ya saldo pembeli misalnya hobi pembeli dan lainnya itu kita tidak perlu masukkan misalnya ya karena kita tidak butuh data tersebut di dalam ruang lingkup toko online kita termasuk penjual gitu ya penjualnya misalnya Dari negara mana gitu atau Alamatnya di mana gitu ya misalnya ya atau hobinya apa misalnya kita tidak butuh karena kita contohnya ruang lingkupnya Hanya seperti ini nah jadi setelah kita tentukan atribut key-nya Kita tentukan atribut-atribut yang lainnya Nah selanjutnya Apa selanjutnya setelah kita tadi buat jadi kita sudah selesai ya membuat diagram model datanya selanjutnya kita perlu menentukan relationship antar entity-nya nah ini kita akan bahas di materi sendiri ya setelah teman-teman nanti belajar tentang model data relationship tapi sekarang karena kita belum ya Jadi kita stop di sini dulu nanti kita bahas di materi-materi selanjutnya untuk relationshipnya Sekarang kita akan coba bahas implementasi dari model datanya implementasi model data merupakan tahapan untuk membuat basis data secara fisiknya ya Secara aslinya ya Yang nanti ditempatkan di dalam disk dengan bantuan sistem basis data jadi setelah kita membuat selesai membuat TRD Kita bisa mulai membuat implementasi dari basis datanya gitu ya jadi ketika teman-teman nanti selesai membuat entity-nya NTT relationship diagramnya selanjutnya dari diagram yard tersebut otomatis kita akan implementasikan di sistem basis data ya jadi implementasi secara nyatanya di sistem basis datanya Nah ini adalah tahapannya ya setelah tadi sebelumnya kita membuat model datanya Oke kita akan bahas implementasi secara umum jadi secara umum entity yang kita buat dalam mie Ardi itu nanti akan menjadi tabel ya sebuah tabel di dalam basis data dan atribut nanti yang kita buat di dalam ERD ya di dalam ntt-nya itu akan menjadi kolom di tabel di dalam sistem basis datanya jadi yang tadi kita tentukan ntt-entity-nya gitu ya dari mulai pembeli penjual dan juga barang itu nanti akan menjadi tabel artinya akan ada tabel pembeli penjual dan juga ada tabel barang dan setiap atribut yang kita tentukan tadi itu akan menjadi kolom-kolom di tabelnya Oke jadi kurang lebih untuk implementasi entity pelanggan misalnya gitu ya Jadi sebelumnya kan kita punya entity pelanggaran pembeli ya lalu di sini ada email ada nama dan juga ada alamat nah ini Ketika nanti implementasi nyatanya di dalam basis data itu akan jadi satu buah tabel contohnya tabel pembeli lalu dari tiap atribut di sini itu akan menjadi kolom contohnya ada kolom email Kolom nama dan juga kolom alamat nah begitu pula untuk yang entity penjual nah di NTT penjual itu di sini kita ada dua atribut ya Ada atribut email dan juga ada atribut nama artinya Apa artinya implementasi nyatanya nanti kita akan buatkan dalam bentuk tabel penjual dan dia ada kolom email dan juga ada Kolom nama Nah selanjutnya implementasi entity barang di sini kita punya entity barang dia ada 3 atribut SKU nama dan juga harga nanti juga sama akan dibuat dalam bentuk tabel barang ya lalu dia ada kolom SKU ada Kolom nama dan juga ada kolom harga Jadi sebenarnya cukup sederhana ya Jadi tiap NTT itu akan menjadi tabel dan tiap patribut itu akan menjadi kolom Nah selanjutnya di dalam sistem basis data setiap kolom di tabel yang kita buat itu biasanya perlu ditentukan tipe datanya Nah penentuan tipe data biasanya mengikuti tipe data yang tersedia di sistem basis data yang kita gunakan nah secara umum ada beberapa tipe data yang umum biasa digunakan dalam sistem basis data misalnya gitu ya kita lihat di sini contohnya Ini adalah hal yang umum ya Jadi nanti ketika teman-teman memilih salah satu aplikasi sistem basis data kemungkinan bisa berbeda tipe datanya Nah yang pertama adalah teks contohnya nah ini biasanya ketika teman-teman gunakan untuk kolom yang berisi data karakter contohnya misalnya sebelumnya kayak nama alamat dan sejenisnya atau misalnya number ini untuk kolom yang berisikan data angka misalnya contohnya misalnya harga stock dan lain-lain atau ada juga yang namanya Death time dan juga time Stamp ini adalah tipe data tanggal waktu dan juga gabungan keduanya ya atau time Stamp ini adalah kolom yang berisikan data tanggal waktu dan juga gabungan tanggal waktu contohnya misalnya tanggal lahir waktu pendaftaran dan lain-lain ada juga tipe data yang namanya Bulian Bulian itu adalah kolom yang biasanya berisikan datanya benar atau salah contohnya Apakah dia sudah menikah atau belum seperti itu ya jadi jawabannya hanya true atau false ya benar atau salah dan Sebenarnya masih banyak tipe data lainnya Nah untuk detail tipe data tidak akan dibahassi materi ini kenapa karena sudah sangat spesifik ke aplikasi sistem basis data yang kita gunakan nanti di akhir materi ini saya rekomendasikan beberapa materi yang perlu teman-teman pelajari ya Jadi untuk detail tipe data kamus data dan lain-lain itu tidak akan dibahas di sini tapi lebih dibahas di implementasi dari sistem basis datanya Nah jadi di sini teman-teman sekarang sudah mengerti ya untuk memodelkan atau implementasi dari model datanya jadi cukup sederhana seperti ini ya jadi dari NTT akan menjadi tabel dari atribut dia akan menjadi kolom-kolom untuk tipe datanya di sini kita tidak Tentukan ya Kenapa karena nanti implementasinya mungkin akan berbeda-beda dari tiap sistem basis data yang kita gunakan tapi secara umum itu tipe datanya adalah seperti ini yang tadi sudah kita bahas sekarang kita bahas tentang model data relasional ya Jadi ini adalah lanjutan dari model data sebelumnya seperti yang di materi sebelumnya dibahas bahwa dalam model Ir atau entity relationship selain ada entity dan juga atribut terdapat juga komponen yang namanya relationship nah relationship itu menunjukkan hubungan antara entity dengan entity yang lainnya nah misal hubungan antara penjual dan juga barang gitu ya atau relationship diantara keduanya misalnya mengandung arti bahwa penjual misalnya sedang berjualan atau menjual barang atau misalnya penjual Sorry pembeli dengan barang itu mungkin dari pembeli melakukan pembelian barang seperti itu jadi relasi-relasi seperti itu kita bilang namanya adalah relationship nah ketika kita bahas relationship itu kita perlu tahu yang namanya cardinalitas atau derajat relasi kardinalitas relasi itu menunjukkan tentang jumlah entity yang dapat berelasi dengan entity lainnya contoh misalnya pada kasus toko online NTT penjual bisa berelasi dengan satu entity barang atau pastinya lebih kan kan kita nggak mungkin ya penjual itu bisa hanya menjual satu barang biasanya lebih gitu ya nah artinya di sini kita perlu tahu derajat relasinya jadi satu penjual bisanya misalnya bisa menjual lebih dari satu barang termasuk misalnya pembeli pembeli artinya kan bisa juga menjual lebih dari satu barang Sorry membeli Ya maksudnya pembeli kan bisa saja membeli lebih dari satu barang jadi hal-hal tersebut kita bilang namanya adalah kardinalitas atau derajat relasi oke Ada banyak sekali ya derajat relasi kita akan bahas satu persatu dari mulai yang pertama itu adalah one to one satu ke satu jadi ini adalah derajat relasi satu ke satuan itu artinya hubungan antara entity a misalnya gitu Ya hanya bisa berhubungan dengan entity B dengan maksimal hanya satu entity saja jadi tidak bisa tuh melakukan relasi lebih dari satu data jadi satu data di NTT a cuma bisa terhubung ke satu data di nttb seperti itu Nah begitu pula sebaliknya nttb pun hanya bisa berelasi dengan satu data di ntt-nya pada kasus seperti ini ini otomatis relasinya namanya adalah one to one ya jadi derajat relasinya namanya adalah bantuan atau satu ke-11 b Oke jadi kurang lebih bakal seperti ini jadi kalau entity a ini gitu ya data yang pertamanya misalnya berelasi dengan entity yang di B ini itu cuma boleh punya satu ya boleh nggak nggak punya relasi boleh saja Sebenarnya ya tapi intinya Kalaupun dia punya relasi Contohnya seperti yang ini Ini cuma boleh ke-1 gitu ya Jadi tidak boleh ke lebih dari satu jadi ini rasanya cuma satu saja seperti ini nah ini namanya adalah one to one dari sini pun sama ke sininya pun cuma boleh satu jadi bolak-balik itu harus satu saja jadi ini adalah derajat relasi One 2 selanjutnya ada derajat relasi yang namanya one to many one to many artinya hubungan antara entity a misalnya gitu ya berhubungan dengan banyak entity B artinya satu data di NTT A itu boleh berelasi ke banyak entity b-nya tetapi tidak sebaliknya entity B itu berarti hanya bisa berelasi dengan satu entity a gitu ya jadi makanya namanya adalah one to many jadi satu entity a ke banyak entity B tapi kebalikannya nttp cuma bisa ke satu entity a seperti itu jadi satu kebanyakan contohnya misalnya kita lihat seperti ini diagramnya jadi di sini ini entity a-nya itu relasinya ke b contohnya one to many gitu ya jadi entity A itu boleh punya relasi 2 contohnya ke entity 1 di NTT B dan nt2 di nttp gitu ya Nah seperti ini nah tapi kalau teman-teman lihat dari arah sebaliknya dari nttb ini ke sini cuma boleh satu ini cuma boleh satu ya relasinya Ini juga satu ini juga satu ini juga satu ini juga satu tetapi kalau kita lihat dari arah si A itu dua contohnya yang di T4 Ya itu dia punya dua relasi Nah jadi 1 juga dia punya dua relasi artinya ini adalah one to many jadi dari a ke b itu adalah one to many satu ke banyak Oke selanjutnya ada juga relasi yang namanya many Tuan ini sebenarnya kebalikan dari one to many gitu ya jadi main ituan Artinya hubungan antara NTT a misalnya hanya bisa berhubungan dengan satu entity B tetapi tidak sebaliknya entity B bisa berelasi ke banyak ntta kalau tonton perhatikan ini sebanyak kebalikan dari entity one to many ya jadi kebalikan dari entity one to many kalau sudut pandangnya dibalik gitu ya Nah itu sebenarnya adalah many Tuan Jadi diagramnya kurang lebih seperti ini jadi dari a ke b itu main ituan Kenapa karena dari a gitu ya Ada banyak entity a gitu ya tapi cuma bisa connect ke satu atau berelasi ke-1 data di nttp contohnya ini maka ini keluarnya cuma satu ini juga cuma satu ini cuma satu gitu ya Ini cuma satu ini cuma satu tapi kalau dari arah kebalikannya ya adalah one to many karena ini bisa satu atau bisa dua gitu ya ini juga bisa dua jadi kalau kita lihat lagi dari yang awal ini yang one to many dari a ke b itu adalah one to many tapi kalau kita perhatikan dari B ke A itu sebenarnya adalah many Tuan makanya biasanya ini saling berhubungannya antara one to many dan juga many two one jadi setiap ada relasi one to many pasti kembalikannya adalah many tuan oke yang terakhir adalah derajat relasi many to many ya atau banyak ke banyak many to many artinya hubungan antara entity a misalnya bisa berhubungan dengan banyak entity B Ya begitu juga sebaliknya entity B bisa berelasi ke banyak ntta jadi ini bolak-balik pun tetap main itu many gitu ya Oke ini contohnya misalnya kalau kita lihat dari sudut pandang a gitu ya A itu lihat bisa relasinya kedua gitu ya contohnya Ini 2 yang ini satu ini satu ini juga dua kalau kita lihat dari nttb itu juga dia bisa dua ini satu ini juga 2 ini 2 ini 1 artinya ini adalah many to many jadi ini model data relasional Nah kalau teman-teman masih bingung nggak masalah ya nanti kita akan coba di studi kasusnya ya yang kita lanjutkan di toko online sebelumnya jadi kita akan Tentukan relasinya nanti kita tentukan juga derajat relasinya akan seperti apa antar entity-nya Sekarang kita akan lanjutkan tahapan membuat TRD nya ya kita akan lanjutkan khusus toko online yang sebelumnya ya jadi misalnya kita akan membuat ruang lingkupnya adalah toko online pada materi sebelumnya kita sudah membuat entity dan juga atributnya Nah selanjutnya Sekarang kita akan coba buat relationshipnya ya untuk ruang lingkup toko online ini Oke pertama kita harus tentukan dulu relationship yang mau kita gunakan ya Atau mau kita buat ya dalam ruang lingkup toko onlinenya Nah setelah kita selesai membuat entity dan juga atributnya selanjutnya kita perlu Tentukan relationship antara entity-nya atau relasi antar entity-nya nah sama seperti sebelumnya menentukan relationship juga kita harus sesuai dengan ruang lingkup kita gitu ya jadi tidak harus menambahkan semua relasinya ya yang fokus ke pada ruang lingkup yang akan kita buat saja nah misalnya pada kasus ruang lingkup toko online yang kita buat misalnya ya kita akan membuat relationship dari pembeli ke barang ya dengan relasi namanya adalah membeli lalu juga relationship dari penjual ke barang dengan relasi namanya adalah menjual jadi kita buat 2 relasi membeli dan juga menjual Oke jadi kurang lebih nanti relasinya akan seperti ini jadi dari pembeli gitu ya nanti dia berelasi ke barang nama relasinya adalah membeli di sini ya Nah sedangkan penjual dan dia punya relasi juga ke barang nama relasinya adalah menjual Nah jadi sederhana ya jadi dari sini Kita sudah lihat ya antara entity atau entitas pembeli barang dan juga penjual itu memang saling berhubungan dari pembeli itu membeli barang dan dari penjual itu adalah menjual barang Oke selanjutnya setelah kita tentukan relasinya antara entity-nya kita akan Tentukan atribut yang namanya forgen key ya Apa itu program key Nah kita akan bahas di sini saat kita membuat entity kita akan menentukan atribut q ya atau dibilang itu sebenarnya adalah namanya adalah Primary Key jadi ketika kita lihat di sini kita kan sebelumnya menentukan bahwa email itu adalah atribut key dari pembeli SKU juga sama gitu ya atribut key dari barang termasuk yang email di sini ini atribut Q untuk penjual nah atribut key ini kita bilang namanya adalah Primary Key Sebenarnya ya jadi atribut key atau primary itu sebenarnya sama saja Oke di dalam relationship Kita juga bisa menambahkan atribut dan biasanya kita juga perlu menentukan atribut for Regency adalah atribut key di NTT yang menjadi atau digunakan sebagai data LookUp Jadi sebenarnya saat kita membuat relasi Nah kita tidak perlu menyimpan seluruh data di dalam relasinya kita cukup Tentukan saja Apa itu foregen Key dari relasi atau entitas yang berelasi tersebut nah Biasanya kalau ada relasi Kan Biasanya kita kan relasi ke 2 entity gitu ya Nah Biasanya kita akan tentukan dua varian key satu primary dari NTT pertama satu lagi Prime memiliki dari entity keduanya Jadi ini nanti digunakan untuk melakukan LookUp ya atau melihat data ke entity yang berelasinya nah pada kasus misalnya membeli relasi membeli misalnya kita perlu tahu siapa yang membelinya caranya adalah dengan menambahkan email pembeli Ya karena memang kan representasi dari atribut kimia adalah email Jadi kita tentukan ini sebagai forgetnya yang pertama adalah email pembeli lalu selanjutnya adalah barang apa yang dibeli ya Jadi kita akan tambahkan juga foregin key-nya yaitu adalah atribut key dari NTT barang yaitu adalah SKU barang Nah selanjutnya pada kasus relasi menjual kita perlu tahu juga Siapa yang menjual barangnya ya nah jadi kita akan Tentukan di sana for regency-nya itu adalah email penjualnya nah sedangkan kita juga perlu tahu barang apa yang dijual jadi kita akan Tentukan SKU barang sebagai varian untuk di relasinya Oke jadi kurang lebih nanti akan seperti ini jadi antara pembeli dan juga barang itu kan dia punya relasi ya relasinya dalam membeli Nah di sini Kita tentukan atributnya ya atau sebagai forgency-nya adalah email dan juga SKU dimana email ini adalah email pembelinya sedangkan SKU adalah barang yang dibelinya nah termasuk dalam sini ya relationship untuk menjual jadi di sini kita tambahkan email dan juga SKU Email adalah siapa penjualnya ya dan SKU adalah barang apa yang dijualnya jadi setelah kita Tentukan relasi kita tentukan juga atribut Regen key di relasinya Oke selanjutnya setelah kita tentukan Nah kita perlu Tentukan juga derajat relasinya atau kardinalitasnya jadi Selanjutnya kita perlu Tentukan derajat relasi atau kardinalitas untuk relationship yang sudah kita buat nah misalnya pada kasus pembeli kita bisa Tentukan relasi misalnya many to many penentuan Apakah relasinya main itu many atau one to many itu tergantung dari ruang lingkup yang akan kita gunakan ya Nah pada kasus ini misalnya saya akan Tentukan ini sebagai relasi many to many Kenapa karena satu pembeli itu bisa membeli banyak barang dan juga satu barang itu bisa dibeli oleh banyak pembeli nah pada kasus seperti ini saya ingin berarti relasinya adalah main itu mana satu pembeli bisa membeli banyak barang satu barang pun bisa dibeli berkali-kali oleh banyak orang ya atau banyak pelanggan jadi kasus ini adalah berarti banyak ke banyak kalau teman-teman Tentukan satu ke banyak misalnya berarti satu pembeli bisa beli banyak barang tapi satu barang cuma bisa dibeli oleh satu pembeli saja Misalnya seperti itu gitu ya Misalnya memang stok barangnya cuma ada satu semuanya nah gitu ya kalau kasus seperti itu mungkin jadinya satu kebanyak tapi kasus saya tidak seperti itu Saya maunya ini adalah many to many nah pada kasus penjual kita bisa Tentukan relasinya misalnya one to many atau juga kebalikannya adalah many Tuan Nah kenapa misalnya karena misalnya satu barang itu hanya bisa dijual oleh satu penjual Jadi kalau misalnya saya menjual barang a berarti itu barang punya saya misalnya seperti itu ya kalau saya penjualnya nah tapi satu penjual itu bisa menjual lebih dari satu barang seperti itu gitu ya nah gimana kalau ada dua penjual menjual barang yang sama Nah nanti kode SKU nya akan berbeda misalnya seperti itu jadi misalnya ada penjual toko a misalnya dia menjual produk misalnya Apple MacBook Pro gitu ya Nah nanti sku-nya adalah 1 misalnya nah tiba-tiba ada penjual toko B dia juga menjual barang yang sama Apple MacBook Pro juga nah kita akan nanti Tentukan SKU nya berbeda nah Oleh karena itu artinya satu barang cuma boleh dijual oleh satu orang gitu ya Nah pada kasus seperti itu berarti relasi antara barang dan juga penjual itu adalah one to many atau many one oke setelah kita tentukan derajat relasinya berarti hasilnya kurang lebih akan seperti ini jadi dari pembeli itu n ke n ya n itu berarti banyak ya nah jadi NPN artinya pembeli bisa membeli banyak barang dan banyak barang juga bisa dibeli oleh banyak pembeli Nah setelah itu Nah selanjutnya untuk barang ke penjual itu adalah n ke-1 artinya banyak barang itu dijual oleh satu penjual ya Dan satu penjual bisa menjual banyak barang tapi barang itu cuma boleh dijual oleh satu penjual Nah jadi seperti ini relasinya ya atau derajat relasinya atau kardinalitasnya jadi setelah kita tentukan relasinya dan juga derajat relasinya oke yang terakhir adalah melengkapi atribut tambahan ini kalau memang dibutuhkan ya Jadi kalau tidak dibutuhkan selesai sampai yang tadi tapi kalau masih perlu ada atribut tambahan maka kita akan lanjut dengan menambah atribut tambahannya Jadi bukan hanya pada entity yang bisa memiliki atribut gitu ya relationship pun itu bisa memiliki atribut kalau memang perlu Nah sebelumnya kita sudah menambah atribut yang bersifat forei ya Jadi ini adalah atribut untuk melakukan LookUp ke atribut ke yang ada di relasinya Nah sekarang kita bisa tambahkan atribut yang sifatnya deskriptif ya jadi atribut tambahan kalau kita mau contohnya misalnya pada atribut relasi membeli kita mungkin bisa tambahkan atribut yang namanya jumlah atau istilahnya quantity jumlah barang yang dibelinya misalnya seperti itu jadi ketika saya beli contohnya buah gitu ya buah apel gitu ya nah saya kan bisa beli lebih dari satu misalnya seperti itu jadi Artinya kita perlu tentukan jumlahnya kira-kira gitu ya Nah pada relasi menjual misalnya kita tidak mau menambahkan atribut deskriptif lainnya jadi cukup hanya dengan menggunakan forgency saja nah pada kasus seperti ini berarti kita hanya cukup menambahkan atribut jumlah ya pada relasi membeli Jadi kurang lebih nanti hasilnya akan seperti ini jadi pembeli gitu ya dia membeli barang nah di mana Di Sini di dalam relasi membeli itu selain ada email dan juga SKU email pembelinya ya untuk LookUp nanti data pembelinya dan SKU untuk LookUp data barangnya ada juga jumlah ya total quantity barang yang dibelinya Nah jadi ini adalah atribut tambahannya Nah kalau dijual ya kebetulan di sini misalnya Saya tidak mau menambahkan atribut tambahan Nah jadi akhirnya kita sudah selesai ya membuat implementasi erd-nya atau entity relationship diagramnya sekarang kita bahas implementasi model data relasional ya sebelumnya kan kita sudah coba implementasi model data yang sederhana ya yang hanya entity dan juga atribut nah gimana dalam bentuk tabelnya Nah sekarang kita bahas tentang implementasi model data relasional nah sebelum kita lanjut kita akan coba tambahkan entity yang relasinya wantuan ya di kasus toko online kita karena sebelumnya kita belum ada relasi Wan Tuan nah Biar lebih lengkap kita akan coba tambahkan relasi Wan Tuan misalnya di kasus toko online yang kita buat kita akan menambahkan satu entity yang namanya dompet atau Wallet misalnya nah di mana pembeli itu cuma boleh satu atau memiliki satu dompet atau satu walet ya Dan satu dompet itu hanya dimiliki oleh satu pembeli nah ini dompet kita akan tambahkan atribut yang pertama ke emailnya ya dan juga yang kedua adalah atribut saldo Nah nanti kurang lebih relasinya Ya jadi nanti pembeli itu memiliki dompet nah kurang lebih akan seperti ini jadi dari pembeli entity pembeli ya dia seperti biasa ada email Nama dan alamat itu memiliki dompet ya di dompet Ini ada email dan juga ada saldo dan ini relasinya adalah satu kesatu nah di dalam relasi memiliki ini kita akan tambahkan email pembelinya ya dan juga email dompetnya Nah jadi ini relasinya adalah satu ke satu Nah sekarang pertanyaannya adalah bagaimana implementasi relasi satu kesatu ini gitu ya kalau dibentuk dalam bentuk tabel kita sudah tahu kalau pembeli dalam bentuk tabel ya Berarti ada tabel pembeli dompet juga dalam bentuk tabel adalah ada dompet sore ada tabel dompet gitu ya Nah sekarang pertanyaannya relasi ini itu bentuknya apa kalau kita nanti implementasikan dalam bentuk tabel Oke kita akan bahas pada kasus implementasi relasi Wan tuan atau satu kesatu gitu ya terdapat dua cara sebenarnya nah pada kasus setiap entity dipastikan menggunakan atribut key dengan nilai yang sama ya maka kita bisa gunakan atribut Q di tiap entity sebagai acuan untuk saling berelasinya contoh misalnya Oke kalau di pembeli itu emailnya adalah a maka di dompet emailnya harus a juga nah kalau kasus seperti itu berarti kita tidak perlu membuat apa-apa lagi gitu ya cukup Nanti kalau kita mau lihat data dompetnya cukup nanti kita lihat dari pembeli misalnya kalau emailnya a Ya udah kita cari di tabel dompet dengan email a juga nah itu artinya relasinya adalah digabungkan ya menggunakan primary atau misalnya atribut key yang sama nah tapi misalnya pada kasus di tiap entity bisa memiliki atribut Q yang berbeda maka kita perlu membuat atribut yang namanya forgen key di salah satu entity yang lebih lemah biasanya lebih lama itu artinya dia tidak bisa ada kalau entity kuatnya itu belum ada pada kasus ini misalnya entity dompet entity dompet itu lebih lemah daripada entity pembeli ya karena dompet tidak bisa tidak bisa tiba-tiba ada gitu ya jadi dompet itu harus ada pembelinya dulu baru ada dompetnya Nah kalau kasusnya misalnya ada entity dompet yang lebih lemah artinya nanti kita akan tambahkan satu atribut tambahan di dalam NTT dompet itu namanya adalah email pembelinya ya Nah Biasanya kalau misalnya relasi one itu atribut frekuensinya itu harus unik atau tidak boleh ada data yang sama Oke kita akan lihat contoh yang implementasinya Jadi kalau implementasinya yang pertama adalah atribut kimia selalu nilainya sama gitu ya maka di sini implementasinya cukup 2 tabel jadi pembeli itu tabel pembeli ada email Nama dan alamat kalau untuk dompet itu ada tabel dompet isinya adalah email dan saldonya nah pada kasus ini Ini email ya antara pembeli dan juga dompet itu wajib sama Jadi kalau di sini emailnya adalah A atau misalnya eko@gmail.com misalnya maka di sini juga dompetnya harus eco@gmail.com jadi pada kasus yang seperti ini atau pada kasus yang kedua kalau misalnya ternyata di sini bisa beda nilainya contohnya di sini misalnya bukan email ya atau kode dompet misalnya artinya kan berbeda ya kalau email di sini contohnya Eko misalnya kode dompetnya bisa 123 misalnya nah pada kasus seperti ini atribut key-nya bisa berbeda nilainya Nah maka kita perlu tambahkan satu kolom tambahan namanya adalah email pembeli jadi email pembeli yang ada di relasi memiliki ini ini kita simpan ke dalam tabel dompet jadi nanti kita bisa tahu ya oh emailnya misalnya eko@gmail.com dompetnya di mana nih kita cukup cari di tabel dompet yang punya email pembelinya adalah eco@gmail.com nah pada kasus one itu pastikan email pembeli di sini itu harus unik artinya tidak boleh ada beberapa baris di sini gitu ya data di tabel dengan email pembeli yang sama Nah jadi ini implementasi bantuan ya dari diagramnya Ardi yang kita buat ke tabel jadi nanti di tabel basis datanya bentuknya kurang lebih seperti ini Oke selanjutnya kita akan bahas implementasi one to many atau juga many Tuan gitu ya pada kasus relasi one to many ya atau kebalikannya implementasinya tergantung nanti relasinya nah jikalau pada kasus salesnya terdapat atribut deskriptif gitu ya maka diperlukan tabel baru ya sebagai implementasi dari relationshipnya nah tapi pada kasus relasinya tidak memiliki atribut deskriptif maka tidak perlu tabel baru kita hanya butuh menambahkan atribut forget di NTT yang sifatnya adalah many nah pada kasus kita gitu ya implementasi dari penjual dan juga barang itu kan want to many dan juga many T1 gitu ya Nah kasusnya di sini di relasinya tidak ada atribut tambahan ya artinya hanya di sana adalah atribut forgingki aja jadi pada kasus seperti ini kita tidak perlu menambahkan tabel untuk relasinya jadi cukup buat 2 tabel di ntt-nya tapi di salah satu entity yang sifatnya many itu kita perlu tambahkan satu varian Q dari relasi entitas yang sebelahnya Jadi kurang lebih bakal seperti ini jadi di barang itu kan dia n ya banyak ya Nah ini satu ya jadi penjual menjual barang nah ini adalah n ya Sedangkan ini satu nah kasusnya karena menjual ini tidak ada relasi sudah tidak ada atribut tambahan cuma ada Genki ya SKU barang dan juga email penjual pada kasus seperti ini berarti ini tidak perlu menjadi sebuah tabel jadi yang perlu menjadi tabel hanya cukup barang dan juga penjual nah lantas Bagaimana tahu relasi menjualnya Nah kita akan implementasikan ya dengan menambahkan kolom email penjual di barangnya jadi tabel penjualnya cuma ada email dan juga Nama misalnya tabel barangnya itu di sini ada tambahan satu kolom baru namanya adalah email penjual jadi nanti kalau saya punya barang contohnya a lalu di sini barangnya B email penjualnya bisa sama misalnya di sini Eco di sini juga Eco artinya Apa artinya satu penjual ya dengan email Eco itu bisa menjual lebih dari satu barang nah seperti ini nah sebenarnya ini hampir mirip dengan implementasi Wan Tuan ya ketika teman-teman perhatikan di bantuan ini juga cukup menambahkan for Regency atribut ya di sini nah Cuma bedanya kalau one email di sini harus unik ya Jadi tidak boleh ada yang sama Nah kalau di one to many atau main ituan Nah di sini itu boleh duplikat artinya baris ke-1 emailnya Eko baris kedua di sini emailnya Eko itu juga boleh nah ini implementasi one to many Oke selanjutnya yang terakhir adalah implementasi many to many pada implementasi relasi many to many maka diimplementasikan dalam bentuk tabel relasi jadi harus diimplementasikan dalam bentuk tabel relasi baik itu dia memiliki atribut tambahan atau tidak memiliki atribut tambahan kalau relasinya adalah many to many maka dia harus menjadi sebuah tabel baru Nah di mana Nanti di dalam tabel relasi tersebut terdapat semua atribut for Regency dari semua entity yang berelasi Oke contohnya akan seperti ini ya jadi pembeli itu kan membeli banyak barang ya termasuk satu barang pun bisa dibeli oleh banyak pembeli seperti itu Nah pada kasus seperti ini pembeli akan menjadi sebuah tabel jadi nanti tabel pembeli itu ada email nama dan juga alamatnya gitu ya lalu juga ada tabel barang ya untuk implementasi entitas barang jadi di sini ada tabel barang gitu ya Nah ini SKU ini nama harga dan ini ada email penjual bawaan dari relasi one to many ke penjual ya Nah selanjutnya untuk membeli itu nanti karena dia relationnya adalah banyak kebanyak dia akan terbentuk satu tabel baru ya di dalam basis datanya yaitu tabel membeli atau mungkin enaknya nama tabelnya adalah tabel pembelian ya Nah seperti itu Nah di sini ini kita wajib menambahkan atribut key-nya itu adalah forgengki dari relasinya yaitu adalah email dan juga SKU jadi di sini adalah email dan juga selanjutnya di sini adalah Jumlah jadi kita masukkan di sini jumlahnya jadi contohnya kalau di sini ada pembeli misalnya Eko gitu ya lalu barangnya adalah sku-nya A dan B Nah di sini kan bisa aja emailnya adalah Eko SKU nya adalah a jumlahnya 1 lalu emailnya Eko lagi sku-nya adalah b gitu ya Nah jumlahnya di sini 1 seperti itu Nah artinya dari pembeli itu bisa banyak membeli SKU termasuk SKU juga bisa banyak dibeli oleh pembeli seperti itu Jadi bisa Aja emailnya di sini Budi sku-nya A jadi skua itu bisa dibeli oleh Eko dan juga oleh Budi seperti itu Jadi ini implementasi tabel dari menu Nah kalau sampai sini teman-teman nanti masih bingung ya bagaimana rem rementasinya tidak usah khawatir nanti kita akan ada contoh yang implementasi dalam bentuk data tabel aslinya gitu Ya nah tapi intinya sekarang kita sudah tahu bagaimana implementasi model data ya yang relasional dari bantuan one to many ya atau main ituan dan juga main itu many sekarang kita bahas tentang model data lainnya nah sebenarnya sampai materi model data relasional kita sudah bisa mulai membuat basis data yang baik nah tapi pada kasus-kasus tertentu itu kadang ada jenis model data lainnya nah di materi ini kita akan coba bahas beberapa model data lainnya yang memang sering digunakan ya Nah yang pertama ada nanti week entity atau entitas lemah ada juga sub entity atau entitas turunan ada juga yunari relationship atau relasi tunggal ada juga multi entity relationship atau relasi multi entitas dan yang terakhir adalah random relationship atau relasi ganda Nah kita akan bahas satu persatu dan juga kita kasihkan contoh kasusnya ya di ruang lingkup toko online yang akan kita buat oke yang pertama adalah week entity atau entitas lemah ini sebenarnya adalah entitas biasa tapi sifatnya lemah artinya dia tidak bisa berdiri sendiri jadi kalau tidak ada entitas kuatnya dia tidak bisa berdiri sendiri ya atau istilahnya itu kalau tidak ada data di entitas kuatnya maka entitas nama ini tidak bisa memiliki data nah weight entity biasanya berelasi dengan entity utama atau entity kuatnya Nah contoh misalnya pada kasus sebelumnya dompet bisa dibilang adalah weekend atau entitas lemah Kenapa karena tidak bisa berdiri sendiri tanpa adanya pembeli jadi tanpa adanya pembeli dompet tidak akan ada seperti itu atau kita bisa pisahkan misalnya contohnya misalnya gitu ya kita mau pisahkan alamat sebagian entitas baru Nah kita bisa juga buat alamat sebagai entitas lemah artinya ya entitas lemah ini atau entitas alamat ini cuma bisa ada kalau misalnya ada data pembelinya Oke kurang lebih nanti akan seperti ini misalnya ya anggap aja kita mau pisahkan alamat itu sebagai sebuah entitas di mana misalnya satu pembeli bisa memiliki lebih dari satu alamat misalnya gitu ya jadi ada alamat rumah misalnya alamat kantor dan lain-lain nah pada kasus misalnya biasanya entitas sama gitu ya maka biasanya akan dia dibuatnya kotaknya dua kali ya seperti ini biasanya gitu ya Nah ini menandakan bahwa ini adalah entitas lemah artinya entitas lemah ini tidak bisa berdiri gitu ya tanpa adanya entitas utama atau entitas kuatnya contohnya adalah di sini pembeli jadi di sini contohnya pembeli memiliki dompet gitu ya jadi dompet kita bilang ini adalah entitas lemah nah lalu contohnya pembeli juga memiliki banyak alamat misalnya ya Nah kita bilang kalau alamat ini adalah entitas lemah di alamat misalnya ada kode Alamatnya ada jalannya di mana ada kotanya di mana ada provinsinya di mana atau kalau mau tambahkan informasi yang lain seperti negara atau kode pos Silahkan gitu ya Nah seperti biasa di dalam relasi di sini ini kita sebutkan for Regency dari kedua belah pihak ya dua entity-nya di sini email pembeli dan di sini adalah kode alamat ini adalah email dompet dan ini adalah email pembelinya Nah jadi seperti ini adalah quick entity nah implementasinya sebenarnya sederhana ya kalau ini wantuan tinggal teman-teman nanti implementasi Wan Tuan gitu ya tabelnya kalau ini one to many berarti tinggal implementasi one to many nanti kita akan coba ya dibahas di materi selanjutnya tentang implementasi dari model data weekend Oke selanjutnya adalah Ada sub entity saat kita membuat entity bisa terjadi adanya beberapa entity yang lebih detail biasanya ya atau istilahnya itu sub entity ini biasanya yang memiliki kesamaan atribut tapi terdapat juga perbedaannya Nah contoh pada kasus misalnya entity barang kemungkinan akan ada banyak jenis barang contohnya misalnya gitu ya Nah jenis barang tersebut mungkin data atributnya sama tapi juga beberapa ada yang berbeda seperti itu contohnya misalnya kita nanti akan tambahkan 2 jenis barang baru ya yang pertama adalah barang laptop yang kedua adalah barang pakaian secara entity Mungkin Ada kesamaan antara barang laptop dan juga barang pakaian SKU nya ada gitu ya nama barangnya ada harganya juga ada jadi tersebut kita bisa bilang entity barang nah tapi pada kasus yang lebih spesifik entity barang dan juga entity pakaian gitu ya Sorry barang laptop dan juga barang pakaian ada atribut-atribut yang berbeda ya contohnya kan di laptop mungkin ada speknya ya kayak CPUnya Berapa ram-nya Berapa hardisk-nya Berapa dan lain-lain sedangkan di pakaian itu tidak ada hal seperti itu dipakainya mungkin adanya adalah ukurannya atau warna pakaiannya seperti itu Nah untuk menggambarkan sub entity Nah kita akan menggunakan diagram Isa ya isa itu sebenarnya adalah sebuah apa gitu ya nanti kita akan lihat di gambarnya Oke kita akan lihat di sini nah ketika kita buat relasi sub entity Maka hasilnya akan seperti ini jadi di sini misalnya ada entity barang gitu ya Nah di sini ada SKU nama dan juga harga jadi semua atribut yang sama di semua jenis sub entity-nya itu kita simpan di NTT utama di sini ya yaitu adalah barang lalu kita bikin relasi di sini menggunakan Isa ya jadi segitiga terbalik seperti ini ya Jadi bukan lagi relasi seperti biasanya jadi di sini adalah Isa ya atau is a barang itu adalah barang laptop misalnya atau juga barang pakaian dimana di dalam barang laptop itu mungkin ada 1000 tambahan seperti CPU nya berapa ram-nya berapa dan juga disknya berapa Nah sedangkan di barang pakaian Nah di sini mungkin ada atribut tambahan seperti ukuran dan juga warna Nah jadi sedangkan atribut yang umumnya yang ada di semua entity entah itu barang laptop atau juga barang pakaian itu disimpannya di NTT barang yaitu adalah SKU nama dan juga harga jadi ini adalah sub entity gitu ya atau kalau teman-teman sebelumnya belajar tentang bahasa pemrograman berorientasi objek ini lebih ke mirip seperti pewarisan Oke selanjutnya ada yang namanya unery relationship unary relationship itu adalah relasi yang terjadi pada entitas dengan entitas dirinya sendiri nah memang ada ya seperti ini ada aja sebenarnya ya Nah hal ini sering terjadi sebenarnya contohnya misalnya pada kasus toko online misalnya kita akan menambahkan fitur yang namanya referral atau member get member atau pelanggan get pelanggan gitu ya Artinya kan harus artinya relasinya pelanggan bisa mendapatkan pelanggan lainnya artinya kan relasinya ke pelanggan pelanggan juga nah ini namanya adalah yunary relationship ya Dan kita misalnya akan membolehkan pembeli merekomendasikan pembeli lain dengan mendapatkan bonus berupa saldo tertentu misalnya gitu ya Artinya di sini intinya adalah kita perlu bikin relasi referal ya atau member get member dengan pembeli dan juga pembeli nah pada kasus seperti ini berarti kita harus membuat yunary relationship ya dari pembeli ke pembeli lagi jadi relasi dengan entitas yang sama ya itu juga diperbolehkan dalam model data Oke kasusnya jadi bakal seperti ini jadi beli misalnya dia bisa mereferensi Sorry mereferensikan gitu ya atau merever Alkan gitu ya itu banyak pembeli lainnya seperti itu jadi di sini ya Cukup kita masukkan email contohnya ya Nah di sini nama dan juga email seperti yang sebelumnya Nah jadi ini adalah relasinya contohnya one to many misalnya jadi satu pembeli bisa mereferensiasikan gitu ya itu lebih dari satu pembeli lainnya selanjutnya ada multi entity relationship relasi multi entitas ya merupakan relasi yang terjadi terhadap lebih dari 2 entitas sebelumnya kita cuma bahas 2 entitas relasinya bisa aja pada kasus ternyata ada 3 atau bahkan lebih entitas ya yang terhubung di dalam satu relasi yang sama Itu namanya adalah multi entity relationship nah pada kasus sebelumnya contohnya pembeli memiliki relasi membeli barang misalnya ya Dan ini artinya relasinya antara pembeli dan juga barang yaitu membeli nah misalnya kita akan tambahkan relasi atau entity bank ya jadi entity bank kita tambahkan ya dengan relasi pembeli membeli barang menggunakan bank apa misalnya gitu ya jadi pembayarannya menggunakan bank apa Nah pada kasus seperti ini berarti membeli itu itu berelasi antara pembeli barang dan juga bank yang dipilih untuk pembayarannya Oke berarti nanti hasilnya akan seperti ini gitu ya jadi di sini ada pembeli dia membeli ya barang dan dia juga menggunakan bank apa Nah pada kasus seperti ini berarti di sini contohnya di bank ada kode banknya dan juga ada nama banknya misalnya berarti di relasi membeli itu 3 itu harus kita sebutkan di sini email pembelinya SKU barangnya dan juga kode banknya lalu kalau ada atribut tambahan seperti sebelumnya ini adalah jumlah barang yang dibelinya Nah jadi seperti ini ini contoh multi entity relationship jadi pada nanti dunia nyata itu bakal sering sekali ya kita akan membuat multi entity relationship ya pada relasi-relasi yang kompleks yang terakhir itu adalah redundan relationship relasi antar entitas lebih boleh lebih dari satu ya Nah jikalau ada dua entitas memiliki relasi lebih dari satu antara tersebut artinya ini adalah relasi ganda ya atau redundan relationship nah Sebelumnya kan kita punya relasi contohnya ya dari pembeli ke barang yaitu adalah membeli bisa saja dari relasi lainnya ya Selain membeli misalnya kita tambahkan relasi pembeli boleh menyukai barang seperti itu kalau misalnya di fitur toko online mungkin ada fitur wishlist misalnya seperti itu ya Nah itu artinya kan pembeli dengan barang juga jadi relasinya pembeli itu ke barang ada dua yang pertama adalah menyukai atau wishlist gitu ya yang kedua adalah membeli artinya ada dua relasi ya jadi artinya tidak hanya membeli tapi juga ada relasi menyukai pada kasus seperti ini ini berarti adalah redundan relationship Jadi kurang lebih nanti diagramnya akan seperti ini jadi dari pembeli itu tidak hanya membeli barang gitu ya tapi juga pembeli menyukai barang seperti ini nah contohnya di sini kasusnya pembeli juga relasinya adalah banyak ke banyak dengan barang jadi satu pembeli bisa menyukai banyak barang satu barang juga bisa disukai oleh banyak pembeli jadi ini relasinya banyak ke banyak jadi sekarang kita bisa lihat ini adalah relasi yang redundant ya lebih dari satu atau ganda jadi pembeli itu punya dua relasi ke barang Nah di sini contohnya ada email dan SKU contohnya di sini tidak ada atribut tambahan seperti di membeli yaitu adalah Jumlah jadi ini adalah redundan relationship Nah sekarang teman-teman sudah tahu ya jenis-jenis Model data lainnya ya Tapi rata-rata sih semuanya berhubungan dengan relationship tapi intinya model datanya bentuknya tidak seperti biasanya Oke next materi kita akan coba bahas bagaimana implementasi dari model data lainnya seperti ini gitu ya ketika kita implementasikan menjadi tabel itu hasilnya akan seperti apa sekarang kita bahas implementasi model data lainnya Nah sekarang kita akan coba lihat Bagaimana cara implementasi perubahan model data yang sudah kita lakukan di materi sebelumnya ya jadi antara seperti weekend sub entity unary relationship multi entity relationship dan juga redundan relationship Oke pertama kita akan bahas tentang weekend Oke pada kasus quick entity gitu ya contohnya yang relasi pembeli dan juga dompet Ini kan berarti dari pembeli dia akan jadi satu tabel tabel pembeli dompet juga jadi satu tabel ya nah misalnya pada kasus Emailnya sama sebenarnya kita cukup antara email dan juga saldo tapi kalau di sini misalnya atribut key-nya bisa berbeda dengan yang di tabel pembeli ya di tabel dompet maka kita perlu tambahkan email pembeli di sini dan ini sifatnya harus unik Nah selanjutnya weekend dari pembeli dan juga alamat-alamat itu kan weekend Ya walaupun dia weekend dia tetap di sini memiliki tabel Jadi ini nanti implementasinya adalah dalam tabel alamat contohnya Nah di sini atribut key-nya adalah kode ya kalau di sini ada jalan di sini ada kota ya kalau di sini ada provinsi Nah selanjutnya karena dia relasinya adalah satu kebanyakan artinya satu pembeli bisa memiliki banyak alamat maka di sini kita perlu tambahkan 1 buah kolom sebagai foregan key dari atribut si entity utamanya yaitu di sini contohnya adalah email jadi di sini kita tambahkan kolom email pembeli jadi nanti alamat a misalnya emailnya Eko alamat B emailnya Eko artinya di sini Eco punya lebih dari satu alamat Nah jadi ini implementasi untuk weekend Jadi sebenarnya sederhana ya Jadi ini seperti relasi satu kebanyak ya implementasinya Dan ini satu ke satu next implementasi yang sub entity ya Jadi ini adalah sub entity ya Nah ini juga sama gitu ya Jadi kalau tonton perhatikan barang itu tetap ya dia punya implementasi tabelnya ada satu tabel barang ini ada SKU ini adalah nama dan juga harga dan Ini email penjualnya ya ini relasi dengan penjualnya Nah sekarang pertanyaannya gimana implementasi sub entity-nya yaitu barang laptop dan juga barang pakaian Nah untuk implementasinya itu juga ini akan menjadi satu tabel contohnya di sini tabel barang laptop dan di sini akan menjadi satu tabel yaitu adalah tabel barang pakaian ya Misalnya di sini Nah di sini Yang perlu kita lakukan adalah di sini kan kalau teman-teman perhatikan tidak ada atribut key-nya ya Kenapa karena atribut key-nya itu diambil dari yang utama di sini jadi di sini barang ada atribut giginya adalah SKU jadi di sini ada SKU termasuk yang di tabel barang pakaian ini juga ada SKU jadi di tabel barang itu Ada SKU dan ini nanti akan relasinya adalah satu ke satu gitu ya jadi SKU di sini A gitu ya Nah di sini juga harus sku-nya a harus sama gitu ya Nah di sini sku-nya B Nah di sini juga sku-nya B seperti itu ya Nah selanjutnya seperti biasa di tabel barang pakaian contohnya ya berarti tinggal tambahkan kolom ukuran dan juga warna jadi di sini ada ukuran dan juga warna jadi tabel barang pakaian ini ini hanya menyimpan data-data barang yang jenisnya adalah barang pakaian jadi barang-barang yang jenisnya barang laptop itu tidak ada sku-nya di sini nah tapi yang di tabel barang itu dia menyimpan semua jenis barang entah itu barangnya berupa pakaian atau barangnya berupa laptop kenapa Karena di sini isinya adalah atribut yang sama ya yang dimiliki antara barang laptop dan juga barang pakaian Nah kalau di tabel barang laptop berarti di sini cuma ada yang pertama adalah atribut key ya yang dari tabel barang di sini Nah selanjutnya adalah atribut atribut yang hanya ada di dalam entitas barang laptop ini yaitu adalah CPU RAM dan juga disk jadi di sini implementasi sampai titik itu seperti ini jadi tidak ribet Sebenarnya ya jadi lumayan sederhana Nah selanjutnya kita bahas tentang yunary relationship Nah untuk implementasi unary relationship ini sebenarnya sangat sederhana ya jadi karena kita tahu relasi pembeli mereferensikan ke pembeli lain itu satu kebanyak di sini gitu ya implementasi satu kebanyak itu kan cukup kita tambahkan foregin key Nah ya Jadi kita cukup tambahkan di tabel pembeli itu satu buah ya varian Q ke tabel pembeli itu sendiri yaitu adalah email referalnya contohnya di sini Eco gitu ya emailnya adalah Eko atau namanya Eko dia di representasikan oleh Budi misalnya nah Lalu ada di sini Joko dia di referensikan oleh Budi juga artinya Apa artinya Budi Itu mereferensikan itu lebih dari satu pembeli lainnya jadi untuk implementasi dalam bentuk tabelnya itu cukup seperti ini jadi kita tambahkan satu buah kolom sebagai forget juga ke tabel pembeli ya untuk data lainnya yaitu adalah email referalnya selanjutnya kita bahas multi entity relationship Nah jadi contoh yang sebelumnya ya dari pembeli membeli barang tapi dia juga bisa menggunakan Bank seperti ini nah pada kasus seperti ini ya berarti implementasinya adalah pembeli jadi satu tabel ya tabel pembeli nah barang juga jadi satu tabel tabel barang ya Nah bank juga jadi satu tabel yaitu tabel bank ya karena ini adalah entity entity NTT Nah selanjutnya untuk membeli ya karena sekarang ada tambahan relasinya dengan barang Sorry dengan bank ya Otomatis yang sebelumnya cuma di tabel membeli itu cuma ada email dan SKU ya Berarti sekarang ada pada Genki baru yaitu adalah kode barang nah jadi setiap nanti di sini Oke saya berelasi lagi dengan entitas lain misalnya cukup kita tambahkan kolom baru ya di sini yang sebagai vergen key-nya Nah jadi Sebenarnya cukup sederhana ya untuk relasi multi entity seperti ini nah yang terakhir adalah redundan relationship Nah untuk LED dan retensip kurang lebih akan seperti ini Nah kita perhatikan juga ya dia itu relasinya derajatnya Apa karena kebetulan di sini adalah dari pembeli membelinya adalah banyak dan juga pembeli menyukainya dalam banyak maka otomatis membeli dan juga menyukai perlu ada tabel tambahan ya sebagai implementasi dari relationshipnya jadi pembeli sama seperti yang sebelumnya tabel pembeli barang juga sama implementasinya dalam bentuk tabel barang nama membeli Nah kalau di diagram ini kan cuma ada relasinya pembeli dan barang ya tidak ada bank ya jadi di sini tabel membelinya cukup email dan SKU dan juga jumlah Sedangkan untuk menyukainya karena dia tidak ada Tribun tambahan Jadi cukup tabel menyukainya gitu ya itu isinya cuma email yaitu email pembeli dan juga SKU yaitu barang yang disukainya ya contohnya emailnya adalah Eko sku-nya a emailnya Eko sku-nya adalah B artinya pembeli Eko itu menyukai 2 barang SKU nah atau misalnya emailnya Eko ininya a gitu ya sku-nya lalu di sini emailnya Budi sku-nya adalah a juga artinya Apa artinya satu SKU satu barang skua gitu ya disukai oleh lebih dari satu pembeli Nah jadi seperti ini implementasi dari dalam bentuk tabel untuk redundant relations sekarang kita bahas tentang model diagram lainnya saat model data kita tidak terlalu kompleks Ya seperti yang sebelumnya sudah kita bahas itu akan sangat mudah untuk membuat diagram seperti yang sebelumnya sudah kita buat nah tapi pada kenyataannya biasanya makin ke sini model data itu akan semakin kompleks dan juga bakal banyak sekali entity yang terlibat termasuk relasinya nah pada kasus seperti itu maka akan sulit untuk membuat diagram yang sudah kita pelajari sebelumnya nah sebenarnya implementasi entity relationship diagram tidak hanya terbatas yang sudah kita praktekkan saja Sebenarnya ada juga cara penggambaran lain ya tapi intinya sebenarnya adalah gambarnya tetap mudah dimengerti Nah contoh lain ya dia adalah dengan membuat entity seperti tabel biasanya Jadi dibandingkan kita bentuk misalnya dalam kotak lalu tiap ributnya dalam gambar lainnya gitu ya oval misalnya nah biasanya ada juga beberapa gaya ya gaya untuk membuat diagramnya itu biasanya hanya dalam bentuk kotak dan isinya ada atribut-atributnya Jadi mirip seperti tabel biasanya gitu ya jadi lebih mudah atau kalau teman-teman sebelumnya pernah belajar yang namanya UML ya unified modeling language itu di dalam sana terdapat yang namanya diagram class diagram Nah kadang-kadang ada juga yang membuat entity-nya itu dalam bentuk seperti kelas diagram nah ini adalah contohnya Nah jadi ini adalah contoh misalnya entity dan juga atribut Jadi biasanya di sini ada entity contohnya barang atau di sini ada contohnya SKU titik dua tipe datanya misalnya teks gitu ya lalu ini adalah PK ini artinya adalah primary atau atribut utama lalu ada tambahan misalnya di sini nama atributnya ada juga harga nama itu tipenya teks contohnya harga tipenya adalah number Nah dengan kita buat diagram seperti ini ini lebih sederhana ya jadi Nanti kalaupun banyak gitu ya itu lebih mudah untuk membuatnya dibanding kita buat seperti yang di awal gitu ya ada kotak Lalu ada link menuju oval atributnya Nah itu agak sedikit lebih sulit menggambarnya ya Nah kalau ini ini lebih mudah contohnya untuk diagram relationship juga bisa lebih mudah contohnya di sini untuk relasi Zero atau kosong misalnya ya kita bisa gunakan simbol seperti ini gitu ya atau misalnya kalau exactly one gitu ya Harus satu gitu ya minimal Biasanya seperti ini kalau Zero or many gitu ya jadi seperti ini kalau one or many seperti ini jadi kalau misalnya nanti relasinya one to many ya tinggal one nya tinggal pilih yang mana gitu ya Yang ini atau yang ini dan Mininya Yang mana Yang ini atau yang ini jadi contohnya misalnya kalau relasinya adalah seperti ini teman-teman bisa lihat ya kalau ini adalah banyak gitu ya banyak ke-1 tapi banyak minimal satu kalau ini ya Dan ini juga satu dan wajib satu nah kalau ini banyak tapi kalau di sini ada tanda bulat artinya dia banyak tapi boleh tidak ada gitu ya Dan ini satu berarti banyak ke-1 tapi ini satupun boleh tidak ada juga nah kalau ini satu kebanyak ya satunya minimal ada satu dan ini banyaknya boleh tidak ada atau lebih dari satu nah kalau ini satu kesatu gitu ya tapi yang ini wajib satu dan di sini boleh aja tidak memiliki relasi seperti ini kalau satu kesatu benar-benar Harus satu kesatu maka garisnya akan seperti ini nah ini saya ambil gitu ya diagram ini dari salah satu aplikasi namanya adalah plan UML jadi dengan menggunakan premiuml teman-teman juga bisa membuat diagram entity relationship diagram tapi memang lebih sederhana dan nanti lebih gampang ya untuk dikembangkan Ketika diagramnya semakin Kompleks dibandingkan di awal-awal kita belajar entity relationship diagram nah ini adalah beberapa contoh yang bisa teman-teman gunakan untuk membuat TRD yang pertama adalah draw io nah ini draw io teman-teman bisa gunakan untuk membuat diagram secara manual gitu ya jadi Drag and drop jadi kalau teman-teman buka draw io misalnya gitu ya Nah kita bisa lihat di sini Nah ini contoh-contoh gitu ya teman-teman bisa buat di sini contohnya teman-teman bikin kotak gitu ya untuk membuat diagramnya ini teman-teman bikin untuk membuat atributnya gitu ya Dan ini untuk membuat relasinya seperti itu cuma ini kalau teman-teman memang lebih suka ya manual ya menggunakan Drag and drop Nah kalau saya itu lebih rekomendasikan teman-teman membuatnya menggunakan kode ya Kenapa karena lebih gampang kita tidak perlu lagi melakukan Drag and drop diagramnya akan di generate Nah itu menggunakan salah satu webnya adalah plant yml ya plan UML itu bisa kita gunakan untuk membuat diagram IRD secara otomatis menggunakan kode teksnya nah kebetulan bisa lihat di plan UML di sini nah ini adalah websitenya teman-teman bisa cari yang namanya entity relationship diagram seperti ini ya Ini adalah entity relationship diagram teman-teman bisa buka menunya nah ini adalah contohnya Nah jadi ini contoh kode yang bisa teman-teman ketikan misalnya seperti ini nanti hasilnya akan menjadi seperti ini ya Nah ini contohnya misalnya teman-teman mengetikkan kode seperti ini entity contohnya entity 1 lalu di sini ada atributnya ya di sini ada atributnya dan atributnya nanti hasilnya jadi seperti ini nah dan contoh ini relasi ada relasinya contohnya ya teman-teman buat entity-nya lalu entity yang kedua entity yang ketiga entity yang keempat lalu teman-teman bikin relasi contohnya entity ke 0 entity 0 gitu ya ini satu ke banyak ya dengan entity 2 jadi ini satu ke banyak sini ya Dan ini contohnya entity 1 ada satu ke banyak juga tapi satunya bisa kosong dan ini banyaknya juga bisa kosong ya dengan entity 3 hasilnya jadi seperti ini relasinya nah jadi tidak perlu menggambar ini ya relasinya lagi di sini jadi langsung pakai garis seperti ini Jadi ini udah tahu kalau ini adalah relasinya Nah jadi ini lebih sederhana dan teman-teman cuma bikin kode seperti ini nanti hasilnya akan menjadi gambar diagram seperti ini nah contohnya dari toko online yang sebelumnya sudah kita buat kurang lebih hasilnya akan menjadi diagramnya seperti ini jadi dari pembeli contohnya itu bisa menyukai barang ya lalu di sini dari pembeli dia bisa memiliki banyak alamat misalnya lalu dari pembeli dia bisa memiliki satu dompet misalnya lalu dari pembeli dia membeli karena membeli itu ada atribut tambahannya gitu ya makanya di sini dibuat dalam bentuk entity baru gitu ya kalau yang dari sini contohnya membeli menyuka Sorry pembeli menyukai barang dia tidak dibentuk satu entity baru di sini Kenapa ya karena kita tahu ya kalau di sini memang relasinya banyak kebanyak tapi tidak memiliki atribut tambahan nah tapi kalau di sini pembeli contohnya dia membeli barang karena di sini ada atribut tambahan yaitu adalah Jumlah jadi kita akan buatkan satu entity baru di sini jadi di sini pembeli membeli barang gitu ya dan ini adalah hasilnya banyak kebanyak gitu ya dan juga ke banknya itu banyak juga seperti itu lalu dari penjual misalnya dia menjual banyak barang relasinya satu kebanyak dan dari barang contohnya Ini satu ke satu ya Dan ini satu kesatu dan ini adalah barang laptop dan barang pakaian seperti itu nah bagaimana cara membuat diagram ini teman-teman enggak usah khawatir ini teman-teman bisa lihat kodenya di sini saya sudah sisipkan teman-teman bisa buka di sini ini adalah kodenya jadi kodenya sebenarnya sederhana ya saya perbesar dulu Nah jadi kita gunakan entity contohnya pembeli ada emailnya tipenya teks ini adalah primary atau atribut key ini ada bank ini ada penjual ini ada dompet Ini ada alamat misalnya gitu ya lalu saya tambahkan FK ya atau forgen key Ya seperti ini contohnya di sini alamat ada email pembeli lalu di sini ada barang ada barang Laptop ada barang pakaian ada membeli gitu ya atau di sini tinggal kita sebutkan relasinya contohnya pembeli satu ke satu dengan dompet tapi misalnya di sini boleh tidak punya dompet nah lalu di sini kita tambahkan not kalau dia memiliki jadi pembeli memiliki dompet nah ini juga contohnya pembeli satu ke banyak tapi bisa aja dia tidak punya alamat misalnya ya tapi dia satu kebanyak nah di sini artinya pembeli memiliki alamat Nah di sini contohnya pembeli relasinya dia banyak ya dengan membeli ke misalnya barang Ya nah tapi barangnya di sini relasinya satu banyak ya Kenapa karena wajib memiliki Sorry membeli satu barang termasuk bank ini wajib juga memilih banknya nah tapi kan kalau pembeli dia tidak wajib membeli gitu ya Nah bisa aja dia cuma daftar di toko online kita tapi belum pernah membeli kalau di sini contohnya membeli menyukai barang ya dan di sini barang contohnya di sini dengan barang laptop adalah Isa ya dan juga barang dengan barang pakaian dia juga bisa ya atau nah lalu penjual dengan barang dia menjual nah ini kodenya teman-teman bisa copy semuanya ya ini kita akan copy nah lalu teman-teman silakan buka di ini website plan umlnya saya akan Buka di sini Nanti teman-teman tinggal pindahkan kodenya di sini ya saya akan paste kodenya di sini lalu saya klik submit Nah lihat hasilnya udah jadi bentuk diagram seperti ini nah jadi lebih gampang ya untuk membuat model diagramnya jadi ini adalah cara lain untuk membuat model diagramnya jadi tidak hanya seperti yang di awal kita buat di awal itu memang cocok buat belajar ya Dan kalau model basis datanya itu tidak terlalu compact tapi kalau misalnya sudah Kompleks rata-rata sih kebanyakan programmer di dunia nyata gitu ya itu kebanyakan membuat detail dari diagramnya akan menggunakan diagram seperti ini sekarang kita bahas tentang normalisasi data normalisasi data adalah proses atau tahapan dalam membuat basis data yang tujuannya adalah menghilangkan data redonansi ganda atau data yang tidak konsisten nah aturan dalam normalisasi data adalah membagi tabel besar menjadi tabel yang lebih kecil dan juga menghubungkan menggunakan relasi nah biasanya kasus ketika kita menggunakan normalisasi data itu kasusnya agak sedikit berbeda Kalau dengan kita membuat basis data dari awal ketika kita buat basis datanya dari awal sekali gitu ya Jadi pertama kali kita membuat paiz data rata-rata biasanya kita akan menggunakan tahapan yang di awal sudah kita lakukan dari menentukan entity-nya setelah itu menentukan atributnya lalu menentukan relasinya nah tapi kadang-kadang ada kasus di mana kita sudah mendapat contohnya data di awal gitu ya ini bentuk datanya misalnya nah bentuk data tersebut biasanya di awal istilahnya itu adalah tidak normal gitu ya jadi normalis ya Jadi tidak normal di awalnya nah tugas kita adalah dari data yang tidak normal tersebut kita perlu bentuk ya datanya menjadi data yang lebih normal ya atau lebih baik ya itu dengan cara menggunakan normalisasi data Oke jadi kita bahas tentang bentuk normal basis data jadi pencetus relasional model namanya adalah Edgar cold ya itu mengajukan teori normalisasi data dengan mengenalkan praktek bentuk normal ke-1 ya lalu dilanjut dengan bentuk normal kedua dan dilanjut lagi dengan bentuk normal ke-3 Jadi kalau teman-teman pengen tahu ya tentang Edgar code Ya itu teman-teman bisa baca di Wikipedia di sini nah sampai saat ini bentuk normal basis data sampai bentuk normal ke-6 Sebenarnya ya tapi sebenarnya kebanyakan pada prakteknya ketika kita sudah implementasi sampai bentuk normal ketiga itu harusnya sudah cukup baik jadi di materi ini kita akan bahas sampai bentuk normal ketiga ya untuk normalisasi datanya Oke biar lebih kebayang ya kita akan Coba lakukan contoh studi kasus normalisasi data biasanya mengacu pada hasil akhir dari sebuah ruang lingkup ya jadi berbeda dengan yang awal kita lakukan kalau di awal gitu ya kita bahasnya memang dari istilahnya itu from scratch ya dari awal banget kita bikin basis data jadi dari datanya memang belum ada jadi kita buat model dulu dalam bentuk entity atribut dan relasinya nah biasanya normalisasi data itu datang ketika sudah terjadi atau sudah ada hasil akhirnya jadi Sudah ada tabel atau model data dalam bentuk hasil akhir nah pertanyaannya sekarang bagaimana cara kita memberi down gitu ya atau mengelola atau mengubah dari hasil akhir tersebut menjadi basis data yang baik dan juga normal normalisasi data biasanya datang dari kebutuhan akhir yang sudah selesai jadi Sudah ada misalnya hasil akhirnya dan kita mau membuat basis data dari hasil leher tersebut Nah jadi lalu kita perlu membuat model data dari kebutuhan akhir tersebut misalnya kita akan coba membuat sebuah model data dari kebutuhan laporan order atau pembelian atau penjualan dari sebuah toko online misalnya kita punya laporan seperti ini Jadi ini Saya punya sebuah laporan ini saya ambil dari salah satu toko online ya jadi dalam laporan ini ini adalah laporan pembelian ya atau pembelanjaan dari pembeli ya atau pelanggan Nah di sini kita bisa lihat ya Jadi ini adalah laporan order ya atau penjualan Nah di sini ada nomor ordernya perhatikan Nah di sini ada deterbitkan atas nama penjualnya lalu di sini adalah nama penjualnya kalau di sini untuk ya pembelinya siapa ini adalah nama pembelinya Kalau ini ada tanggal pembeliannya contohnya di sini ya ini adalah alamat pengirimannya jadi ini adalah alamat pengirimannya jadi dari nama nanti yang menerimanya nomor teleponnya dan juga alamat dan lain-lain lalu di sini ada informasi barang atau produk yang dibelinya di sini ada nama barangnya contohnya Ini ada beratnya berapa ya jadi semuanya ke bawahnya sama dan nama barangnya dan juga beratnya lalu di sini adalah jumlah barang yang dibelinya contohnya di sini ada dua satu satu satu lalu di sini ada harga satuannya gitu ya ya contohnya Ini segini harga satunya isinya ada harga totalnya yaitu harga satuan dikali jumlahnya lalu di sini ada istilahnya itu adalah summary ya jadi di sini Total harganya 5 barang dari yang di atas dijumlahkan sekian Kalau ini ada total ongkos kirim dari totalnya ada berapa beratnya gitu ya di totalkan dari ini semuanya ini beratnya misalnya nah ini contohnya ongkos kirimnya adalah 60.000 jadi total belanjanya ditambahkan ya ini dan Ini hasilnya sekian lalu misalnya ada biaya jasa aplikasinya contohnya jadi total tagihannya kalau kita totalkan semuanya jadi sekian lalu di sini ada metode pembayarannya contohnya menggunakan debit online lalu di sini ada informasi kurirnya ya pengirimannya menggunakan contohnya sicepat gokil Nah di sini ini adalah laporan akhirnya nah normalisasi berarti adalah dari hasil akhir ini kita akan bentuk dalam bentuk nanti model datanya basis datanya itu harusnya Seperti apa Nah jadi pada kasus seperti ini maka yang kita lakukan adalah melakukan normalisasi data berbeda dengan di awal ya Kalau di awal kita buat toko online dari awal gitu ya jadi kita tentukannya langsung dari ntt-nya lalu atribut dan juga relasinya nah kasus yang sekarang itu berbeda data Akhirnya sudah ada kita harus buat entity-nya atau juga model datanya dari hasil akhir yang sudah ada ini Oke kurang lebih misalnya bentuk tabel yang tidak normalnya dari laporan yang tadi kita lihat di sini itu bentuk tabelnya akan seperti ini Nah kita akan lihat di sini teman-teman bisa Klik di sini ini adalah contohnya hasil Ya hasil tabel akhirnya Contohnya seperti ini ini kita akan perbesar dulu saya akan coba perbesar di sini [Musik] biar jelas nah seperti ini Oke jadi di sini kotoran perhatikan berarti ya di sini ada ordernya contohnya Ini nomor ordernya ini adalah penjualnya ini adalah pembelinya ya ini adalah tanggal pembeliannya ini adalah alamat namanya nama dari alamatnya ini adalah alamat dari jalannya kita alamat provinsinya alamat kotanya ini adalah alamat negaranya Kode Posnya ini produk pertama kode produk pertama yang dibeli contohnya Ini namanya ini ada produk pertama beratnya jadi kalau kita perhatikan di sini gitu ya nah ini ya produk ini yang ini yang beratnya di sini gitu ya kalau di sini ada produk kedua produk ketiga dan produk keempat Oke kita lihat lagi di sini Jadi ini produk pertama produk pertama jumlahnya produk pertama harganya produk pertama totalnya produk kedua ya kodenya pada kedua ini produk ketiga dan ini produk keempat lalu di sini ada yang tadi ya Total harganya total ongkosnya total beratnya total belanja biaya jasanya Total tagihan metode pembayaran dan terakhir adalah kurirnya nah ini adalah tabel yang tidak normal ya karena di sini contohnya ada produk ke-1 kedua ketiga keempat nah gimana kalau saya belinya lebih dari 4 gitu ya atau gimana saya Kalau belinya cuma satu contohnya di data yang kedua ini ada Eco contohnya gitu ya Eco itu berarti di sini cuma beli kalau kita lihat dua produk ya jadi cuma sampai produk kedua produk ketiganya kosong atau yang di bawah ini pelanggan yang sama ya Joko Moro di sini misalnya nah ini membeli ke penjual yang sama gitu ya penjualnya Galeri Indonesia dan di sini barangnya kalau kita perhatikan produk satu kodenya produk yang sama ya p001 Dan ini cuma satu barang artinya di sini kosong semua nih Nah ini adalah tabel yang sangat tidak normal gitu ya tapi ini adalah tabel yang terbentuk dari laporan yang tadi kita buat di sini ya Nah seperti ini Nah sekarang tugas kita adalah Gimana caranya dari hasil ini ya Dari tabel yang tidak normal ini kita akan buat basis data ya dengan menjadikan tabel-tabelnya nanti yang lebih normal sebelum kita lanjut ya tentang normalisasi data kita akan bahas dulu sekilas tentang jenis-jenis atribut Jadi sebelum kita bahas ya lanjutkan lagi normalisasi data ada yang perlu kita ketahui tentang jenis-jenis atribut Contohnya seperti ada atribut key ada simple atribut ya dan juga composed atribut ada juga single value atribut dan juga multi value atribut ada juga mandatory atribut ya Ada derivat atribut kita akan bahas satu persatu atribut key mungkin teman-teman sudah tahu ya Q adalah nilai yang bisa digunakan sebagai identitas baris pada tabel yang sifatnya unik gitu ya biasanya itu unit itu artinya tidak duplikat nah biasanya atribut key dibilang juga dengan namanya adalah primediki nah atribut key itu milik entitas lain yang disimpan sebagai atribut identitas lainnya yaitu kita sebut namanya adalah mungkin ini teman-teman sudah familiar ya karena di awal kita sudah sering bahas tentang atribut key ini Oke selanjutnya ada simple atribut dan juga composed atribut nah simple atribut adalah atribut yang tidak bisa diuraikan lagi sedangkan composed atribut adalah atribut yang bisa diuraikan nah pada kasus tabel kita semua kolom sudah simple atribut ya Kenapa karena tidak bisa diuraikan lagi nah seandainya misalnya kita ada kolom yang namanya contohnya kolom alamat yang berisikan kombinasi dari jalan kota provinsi negara dan juga kode pos maka mungkin itu bisa dibilang adalah komposer atribut artinya atribut tersebut bisa diuraikan lagi nah tapi karena kasus kita kalau ketahuan perhatikan ini sudah diuraikan ya jadi kotoran perhatikan di sini alamatnya sudah ada nama alamatnya sudah ada jalan alamatnya provinsi ini sudah berbeda kolomnya artinya ini sudah tidak bisa diuraikan lagi ya Kalau mungkin di sini ada alamat gitu ya tapi isinya ada jalan provinsi kota negara gitu ya kode pos itu bisa kita bilang komposer atribut karena bisa diuraikan lagi menjadi beberapa kolom Nah selanjutnya Ada single value dan juga male multi value atribut nah single value atribut adalah atribut yang memiliki satu nilai sedangkan multi value atribut adalah atribut yang memiliki lebih dari satu nilai nah pada kasus tabel kita kita sudah membuat semua kolom menjadi single value atribut ya Nah seandainya misalnya kita gabungkan semua produk di dalam satu kolom maka bisa jadi itu adalah multi value atribut Jadi kalau ada satu kolom yang nilainya bisa lebih dari satu itu kita bilang namanya multi value atribut nah pada kasus di sini tabelnya Kita sudah pecah nih antara produk satu gitu ya produk 2 produk 3 itu kolomnya sudah kita pisah-pisahkan nah seandainya kita tidak lakukan seperti itu artinya di sini cuma produk kode untuk kita sebutkan p001,p002 p003 misalnya artinya itu adalah multi value atribut jadi satu atribut itu di dalamnya bisa anda lebih dari satu nilai nah tapi kalau di kasus ini saya sudah pecahkan ya Jadi nanti teman-teman juga tergantung dapat kasusnya Seperti apa bisa aja teman-teman dapat kasusnya berarti yang multi value gitu ya Nah di sini saya sudah pecahkan Oke selanjutnya ada yang namanya mandatory atribut mandaturi atribut adalah atribut yang wajib diisi dan tidak boleh kosong atau kalau dalam basis data data kosong itu artinya adalah data null pada kasus kita contohnya produk 2 3 dan juga 4 adalah kolom yang tidak mandatori artinya tidak wajib gitu ya Kenapa karena dia bisa kosong Jadi pada kasus ini contohnya produk satu itu dibilangnya mandatory karena kan setiap kita membeli ya itu wajib ada satu barang yang dibeli nah tapi kalau tonton perhatikan produk dua contohnya gitu ya dan juga produk 3 dan juga produk 4 gitu ya itu dia tidak mandatory artinya tidak wajib gitu ya jadi bisa kosong Nah jadi kasus kalau kolomnya itu tidak wajib gitu ya maka kita bilang dia tidak mendatori Dan kalau kasusnya kolomnya wajib ada isinya ya barisnya maka itu nilainya adalah dibilang mandatory atribut nah yang terakhir adalah dari fat atribut dari fat atribut itu atau istilahnya adalah atribut turunan itu adalah atribut yang nilainya diperoleh dari hasil pengolahan atribut lainnya nah pada kasus kita ini contohnya banyak sekali dari file atribut ya atribut turunan contohnya misalnya produk total Total belanja total berat itu adalah atribut-atribut turunan Kenapa atribut turunan karena sebenarnya nilainya itu dihitung dari hasil pengolahan data kolom lainnya ya atau atribut lainnya contohnya teman-teman pernah lihat di sini di tiap barang gitu ya di tiap barang contohnya kita ada jumlah barang ini kan atribut ini ya atribut yang biasa gitu ya Ada produk harga di sini ada produk total kita sudah tahu produk total itu adalah atribut turunan Kenapa karena produk total itu sebenarnya hasil perkalian antara 2 * harganya nah ini juga sama 1 dikali harganya ini juga sama 2 * harganya ya Nah ini berarti yang harga ini ini adalah atribut turunan jadi termasuk yang produk 2 harga turunan juga termasuk yang di belakangnya Ya seperti total harga ini juga turunan karena penjumlahan dari semua produk harga lalu di sini contohnya ada ongkos kirim gitu ya Nah ini juga sama berat ya total berat juga sama total belanja juga sama Tribun turunan gitu ya Total tagihan juga atribut turunan jadi di sini ada banyak sekali atribut turunan jadi atribut-atribut yang atau kolom-kolom yang memang hasil penjumlahan misalnya perkalian dan lain-lain intinya adalah perhitungan dari kolom-kolom yang lain itu kita bilang namanya adalah derived atribut atau atribut turunan sekarang kita bahas tentang atribut key Sebelumnya kan kita sudah bahas atribut q ya Nah kita sekarang bahas lebih lengkap tentang atribut key atribut key itu adalah nilai yang bisa digunakan sebagai identitas baris pada tabel yang sifatnya unik ya ya ini mungkin teman-teman sudah tahu Ya dari tadi Nah Sebenarnya ada tiga jenis atribut key yang pertama adalah super key yang kedua adalah kandidat key dan yang ketiga adalah primary kita bahas satu persatu yang pertama adalah super key super key adalah merupakan satu atau lebih atribut yang dapat membedakan setiap baris data secara unik Nah jadi kalau misalnya kombinasi beberapa kolom tersebut ya itu pasti unik gitu ya maka kita bilang itu adalah super kick nah misalnya kalau kita punya tabel produk misalnya yang bisa menjadi super Q contohnya misalnya ada kombinasi misalnya kode produk nama produk berat produk harga produk dan kode penjual Nah kalau semuanya ini pasti unik gitu ya tidak mungkin sama maka kita bilang ini adalah super ke y nah di dalam satu tabel itu bisa jadi banyak superkinya kenapa Karena kan kombinasi data menjadi unit itu kan bisa aja banyak gitu ya contohnya misalnya ada juga misal saja gitu ya nama produk dan kode penjual ini kita bilang super key tapi kalau kasus seperti ini ini harus dijamin kalau penjual tidak akan menjual barang dengan nama yang sama karena di sini nama produk dan juga kode penjualannya kita bilang ini adalah super key nah lalu misalnya kode produk dan juga kode penjual itu super key gitu ya karena kan kode produk mungkin cuma ada satu ya kode penjual mungkin bisa dia gitu ya tapi produknya nggak mungkin sama ya jadi kode produknya pasti berbeda nah atau misalnya kode produk aja kalau produk-produknya dijamin unik gitu ya ya berarti itu juga kita bilang adalah super key intinya apa intinya adalah semua Kombinasi yang bisa membuat tabel itu kolom-kolomnya adalah unik itu kita bilang adalah seperti Nah selanjutnya ada yang namanya kandidat key kandidat Q merupakan kumpulan atribut minimal ya jadi teman-teman lihat tekankan dalam kata minimal yang dapat membedakan setiap baris data dalam sebuah tabel secara unik contoh misalnya kalau pada kandidat key tabel produk misalnya yang pertama yang paling minimal berarti contohnya kode produk kode produk itu paling minimal misalnya ya jadi satu satu aja itu uniknya nah jadi sebenarnya kandidat itu adalah super key juga gitu ya tapi super key di sini cari yang paling minimal yaitu contohnya adalah kode produk nah atau misal saja ini misal ya nama produk misalnya itu harus unik misalnya nah ini bisa juga jadi sebagai kandidat key ya kalau memang nama produknya itu selalu unik tapi kalau kasus seperti ini kita harus jamin ya kalau nama produk tidak boleh dibuat lebih dari satu kali atau yang paling mudah mungkin kalau teman-teman kebayang itu di tabel pelanggan misalnya ya atau pembeli misalnya tabel pelanggan bisa aja yang kandidatnya adalah email kalau emailnya unik atau juga nomor handphone kalau nomor handphonenya unik Jadi dua Itu bisa dibilang sebagai kandidat yang terakhir adalah Primary Key Nah setelah kita tahu kombinasi unik itu ada di super king-nya lalu kita perkecil lagi menjadi kandidat Kenya ya lalu biasanya setelah menentukan kandidat key nya mana saja salah satu kombinasi kandidat key-nya itu akan ditentukan sebagai primary memiliki adalah Q utama sebagai representasi baris secara uniknya nah contohnya misalnya Oke dari tabel produk di sini setelah kita dapat kandidat key-nya contohnya adalah kode produk dan juga nama produk yang lebih natural misalnya yang menjadi primary mungkin kode produk jadi nextnya penentuan primary dari kandidat key adalah kode produk misalnya seperti itu ya jadi primary biasanya dipilih pada kandidat yang paling cocok dan yang paling bisa dijamin keunikannya contohnya misalnya pada kasus tabel produk misalnya kode produk misalnya kalau kasus yang lain misalnya kayak tabel pelanggan misalnya ada email dan juga nomor handphone nah dari dua-duanya kita bisa jamin ya kalau misalnya email itu pasti unik dan juga nomor handphone pasti unik nah pertanyaannya sekarang dari 2 kandidat key ini Mana yang mau kita pilih sebagai primary karena Prime memiliki Biasanya cuma satu ya Nah Biasanya kita akan pilih yang memang paling cocok contohnya misalnya Oke kalau kita aplikasinya toko online misalnya pasti deh tiap pembeli pasti punya email gitu ya tapi nomor HP belum tentu punya misalnya nah pada saat seperti itu berarti ya kita jadikan email sebagai pria memilikinya atau misalnya Oke aplikasi kita bentuknya adalah aplikasi mobile misalnya kalau mobile pasti pembeli misalnya punya nomor HP gitu ya Nah pada kasus seperti ini kita bisa Tentukan kalau nomor handphone adalah sebagai primary dari tabel pelanggan kita jadi ini teman-teman perlu ngerti ya tentang atribut key agar teman-teman tahu bagaimana cara menentukan primery jadi dari yang pertama kita buat atau tentukan dulu sepertinya lanjut dengan kandidat key-nya dan terakhir baru pilih menjadi primer Ricky sekarang kita bahas tentang bentuk normal basis data ke-1 Oke sebuah model basis data itu dikatakan normal ya dalam bentuk basis data ke-1 Kalau mengikuti aturan berikut yang pertama tidak tiap kolom itu tidak boleh menyimpan data lebih dari satu artinya tidak boleh ada multi value ini ya atribut Jadi kalau ada atribut yang isinya dia multi value itu dibilangnya berarti bukan normal basis data ke-1 Nah selanjutnya tidak ada kolom yang duplikat ya Jadi kalau misalnya ada kolom yang duplikat misalnya gitu ya maka kita bilang itu tidak normal tidak normal ke base data ke-1 ya contohnya di tabel yang tidak normal kita itu banyak banget kolom yang duplikat contohnya ada produk satu produk dua produk tiga itu sebenarnya kolom yang duplikat Nah selanjutnya tidak ada baris yang duplikat Jadi kalau ada dua isi baris yang isi nilainya sama semua itu dibilang adalah basis data yang tidak normal ya tidak normal ke-1 lalu tidak ada atribut turunan seperti itu Jadi ini semua spesifikasi ya kalau teman-teman mau bentuk tabelnya yaitu normal basis data ke-1 nah sayangnya dari semua Aturan ini banyak sekali yang kita langgar di tabel yang tidak normal tadi Artinya kita perlu melakukan revisi ya agar tabel yang tidak normal sebelumnya kita jadikan bentuk normal ke-1 nah dalam produk nama contohnya produk harga produk jumlah produk berat dan juga produk total itu adalah duplikat ya duplikat kolom ya duplikat kolom sebanyak 4 kali karena ada produk satu produk 2 produk 324 dan seterusnya Nah selanjutnya banyak juga atribut turunan ya dari keturunan contohnya ada produk Total total harga total berat total belanja itu semuanya adalah atribut turunan nah kalau mau basis data kita itu normal dalam bentuk ke-1 maka semua hal ini harus kita hapus jadi nanti kita akan coba ya hapus ya untuk produk yang 23 dan 4 gitu ya kita akan jadikan satu aja selanjutnya yang produk-produk Sorry atribut atribut yang turunan itu juga kita akan hapus Nah hasilnya teman-teman bisa lihat di sini ya di bagian di sini di Google docsnya di bagian bawah teman-teman bisa lihat first normal form ya atau satu NF ya first normal form hasilnya kurang lebih nanti akan menjadi seperti ini Nah di sini Sebenarnya yang dilakukan adalah Nah kita ubah ya jadi produk-produknya kotoran perhatikan kode produknya di sini cuma satu nama Produknya cuma satu berat Produknya cuma satu jumlahnya cuma satu harganya cuma satu nah jadi nanti di sini kalau misalnya yang sebelumnya kan Joko gitu ya kalau dia membeli lebih dari satu barang berarti di sini keluarnya 4 kali ya jadi Joko Joko lalu di sini Eko Eko karena dia beli dua barang lalu di sini Joko lagi membeli satu barang nah jadi nanti kita hapus nih kolom-kolom yang duplikatnya dijadikan satu kolom saja dan tinggal kita tambahkan datanya ke bawah nah selanjutnya di dalam bentuk yang tidak normal sebelumnya itu kan banyak Atri keturunan ya Seperti contohnya total harga misalnya ya habis itu lain-lain di sini ya banyak banget ya total harga total berat gitu ya Total tagihan total belanja nah ini semuanya kita hapus karena ini sebenarnya tidak butuh ya karena kita bisa Hitung dari penjumlahan yang lainnya jadi dalam bentuk normal pertama semua atribut tadi atau semua kolom tadi itu kita hapus Kalau tonton perhatikan di sini cuma ada nama produk berat produk jumlah produk harga satuan produknya lalu total ongkos kirimnya lalu biaya jasanya yang lain-lain tadi seperti total dan lain-lain itu kita hapus karena kita bisa Hitung dari penjumlahan semuanya di sini jadi yang kita Sisakan cuma kolom-kolom yang tidak duplikat ya dan selanjutnya barisan juga tidak duplikat perhatikan tidak ada baris yang duplikat contohnya walaupun di sini galeri olahraga berolahraga tapi secara baris di sini ya tidak duplikat ya Jadi kalau isi kolomnya yang duplikat nggak masalah tapi kalau barisnya yang duplikat itu berarti bermasalah Nah kalau kita perhatikan di sini kolom barisnya tidak duplikat ya karena kan walaupun di sini joko-joko gitu ya Nah tapi dia produk yang dibelinya ini beda-beda gitu ya Nah seperti itu Nah jadi kolom duplikat Ya maksudnya nama kolom yang duplikat kita hapus Sudah baris duplikat pastikan tidak ada sudah benar lalu yang atribut turunannya sudah dihapus juga nah sekarang tabel yang sudah kita buat itu sudah normal basis data dalam bentuk ke-1 nah tapi untuk membuat basis data yang baik itu tidak cukup sampai berhenti di basis data normal ke-1 kita akan lanjut ke normal kedua dan juga normal ke-3 sekarang kita bahas bentuk normal basis data kedua Oke setelah kita selesai membuat bentuk basis data yang normal ke-1 ya selanjutnya kita akan lanjut ke bentuk normal beserta kedua nah ini adalah aturan-aturan yang perlu kita ikuti ya agar kita itu mengikuti normal beserta kedua yang pertama harus sudah dalam bentuk normal basis data ke-1 jadi harus mengikuti tahapan beserta ke-1 dulu nah kita kan sudah ya Jadi sekarang kita bisa lanjut ke aturan selanjutnya yang pertama Buat tabel terpisah untuk nilai-nilai yang keluar berulang kali pada beberapa baris jadi nanti kita perhatikan kalau ada sekiranya kombinasi kolom yang berulang gitu ya di tiap baris itu berarti kita harus pisahkan Nah setelah kita pisahkan kita harus tambahkan primary dari tabel yang kita pisahkan tersebut Nah kalau teman-teman nanti bingung menentukan primary-nya di mana gitu ya atau kolom apa teman-teman bisa lakukan seperti yang di awal kita bahas ya Jadi kita tentukan dulu super Q nya apa kombinasi uniknya selanjutnya teman-teman pilih kompos kandidasinya dan setelah itu baru Tentukan primary Nah selanjutnya teman-teman hubungkan menggunakan forgon key jadi setelah dapat primary yang teman-teman tentukan teman-teman simpan di tabel relasinya gitu ya sebagai paragonkinya Nah sekarang kita akan coba lihat ya Nah kita akan Coba revisi lagi bentuk normal keduanya ya Dari tabel yang sebelumnya sudah kita buat menjadi bentuk normal ke-1 nah yang pertama kotoran perhatikan kolom-kolom produk itu terdapat yang berulang ya kita lihat di sini jadi di dalam bentuk normal ke-1 di sini kalau teman-teman perhatikan kode produk ini ada yang berulang contohnya produk kan ini ya sampai di sini ya Nah ini contohnya p001 Ini p001 gitu ya Seandainya di sini nanti banyak pembelian mungkin ada juga p002 di sini ada p02 lagi gitu ya Ada p003 lagi dan seterusnya artinya ini berulang terus nih nah karena ini berulang terus ini sepertinya akan kita keluarkan menjadi satu tabel ya untuk produk ini Nah nanti di sini ketika dikeluarkan teman-teman perlu pilih ya kira-kira primary-nya mana caranya gimana Ya cara-caranya teman-teman tentukan dulu sepertinya kira-kira kombinasi uniknya berdasarkan apa aja contohnya mungkin kode produk sama nama produk kode produk sama berat produk dan lain-lain Nah setelah itu kita tentukan kandidat key-nya yang paling kecil ya kemungkinannya contohnya disana kode produk dan kalau ada yang lain misalnya nama produk kalau memang nama produknya bisa dijamin unik Nah setelah terakhir baru penentuan Prime milikinya nah misalnya setelah kita pikir-pikir kayaknya yang cocok jadi proyek memiliki adalah kode produknya jadi nanti kita akan Tentukan kode produknya sebagai primernya Nah selanjutnya kotoran perhatikan kolom order ya order penjual pembeli itu berulang kalau teman-teman perhatikan kita akan coba lihat ya jadi contohnya di sini ordernya itu kan 12345 galerinya olahraga pembelinya jokomoro tanggalnya sama gitu ya alamatnya sama ya kalau nonton perhatikan ini berulang nih sama terus nih ya ini sama terus nih sampai sini nih Nah bahkan sampai ujungnya pun sama terus harusnya ya Nah total ongkosnya ini sama gitu ya ini sama karena ini semua sama gitu ya kita akan keluarkan menjadi tabel baru misal saja tabelnya namanya adalah tabel order Nah setelah itu seperti biasa teman-teman tentukan dulu kira-kira dari sini semua yang sama ini kira-kira sepertinya apa ya lalu dilanjut dengan kandidatnya kira-kira apa Dan Terakhir Tentukan dengan Prime milikinya Nah dari sini sih sebenarnya kita lumayan gampang ya untuk menentukan Prime milikinya contohnya di sini adalah nomor ordernya ya kita bisa tentukan nama ordernya sebagai primary-nya jadi nanti tabelnya adalah tabel Order jadi kalau kita perhatikan di sini ini sama gitu ya kalau kita pisahkan ini dalam satu tabel order Mungkin cukup jadi satu record aja ini juga sama ya kalau memperhatikan ini juga sama Jadi totalnya sebenarnya Cuma 3 order gitu ya artinya bentuk normal keduanya kurang lebih akan seperti ini Jadi ini data order kita simpan di tabel order di sini semuanya karena sama semua gitu ya sampai ke kurir ya metode pembayaran dan lain-lain dan ini adalah produknya dari semua tadi produk kita keluarkan Simpan ke tabel produk dan semua yang duplikat itu tinggal kita hapus saja dan ini kita tentukan misalnya sebagai kode produknya yaitu ininya ya primary-nya Dan ini order sebagai primary-nya juga Nah selanjutnya berarti tabel yang tadinya panjang di sini kalau kita keluarkan menjadi beberapa tabel itu tinggal tersisanya cuma jumlah produknya Nah berarti kita perlu Tentukan di sini paragonkinya jadi untuk kode produk kita masukkan di sini ya sebagai power Genki dan juga order ya yang di sini jadi yang ini kita simpan di sini sebagai forgetnya jadi tabel yang tadi lumayan panjang ini ya yang ini yang tadinya panjang banget setelah kita pecah jadi cuma sisa ini aja ya tabelnya lalu kita pecah jadi menjadi dua tabel lagi yang ini adalah order dan ini adalah produknya Nah jadi sekarang tabel kita gitu ya sudah dalam bentuk normal kedua jadi sudah tidak ada lagi data-data yang duplikat ya lihat baris-baris kolom yang duplikat kombinasinya termasuk yang produk order dan juga ini yang penjualan detailnya ya atau order detailnya jadi dari order ini misalnya order ini dia membeli produknya ini gitu ya dan jumlah produknya adalah ini Nah jadi kita sekarang sudah selesai dalam bentuk normal ke-2 nah tapi tidak hanya sampai di sini ya kita akan lakukan sampai bentuk normal ke-3 Oke sekarang kita akan membahas bentuk normal beserta ketiga nah sebelum kita bahas tentang bentuk normal ketiga kita harus tahu tentang ketergantungan fungsional di dalam tabel jika terdapat atribut B misalnya memiliki ketergantungan fungsionallitas terhadap a gitu ya maka kita bisa bilang seperti ini ya a gitu ya jadi seperti ini Jadi intinya adalah B Ketergantungan dengan a seperti ini jadi tandanya akan seperti ini nah biasanya A itu adalah atribut key gitu ya dan b adalah atribut yang bukan q-nya jadi kalau kita bilang Oke ada kolom ABC atau misalnya Sorry BCD gitu ya dia tergantung dengan a gitu ya maka kita bilang BCD itu Ketergantungan dengan a nah dalam bentuk normal ketiga kita harus benar-benar meneliti tabel yang sudah kita buat dalam bentuk normal kedua apakah atribut-atribut yang bukan Q itu benar-benar tergantung dengan atribut key-nya seperti itu oke kita bahas tentang bentuk normal beserta kedua berarti ini adalah aturannya nah aturannya adalah yang pertama Ya pasti teman-teman harus sesuai dengan basis data normal kedua dulu ya Nah selanjutnya kita akan Coba lakukan pindahkan kolom-kolom yang tidak tergantung ke Q nya menjadi tabel yang lainnya Nah kenapa Hal ini dikarenakan jikalau terjadi perubahan pada kolom tersebut ditakutkan perlu melakukan perubahan di baris atau di banyak baris jadi ketika teman-teman lihat ada beberapa kolom misalnya yang tidak tergantung dengan si primary pada kasus contohnya di kita itu sebenarnya kalau tonton perhatikan walaupun datanya sudah tidak ada duplikat gitu ya tiap barisnya Tapi beberapa kolom sebenarnya tidak tergantung ke si primary-nya ya yang paling menonjol gitu ya itu di dalam SI tabel order banyak banget di dalam tabel order itu banyak kolom yang tidak tergantung sama primary Oke kita akan Coba revisi untuk kasus kita ya menjadi bentuk normal ketiga kotoran perhatikan ada banyak kolom yang tidak tergantung dengan key-nya contohnya misalnya penjual atau juga pembeli atau bahkan Alamat pengiriman nah penjual kotoran gitu ya dia tidak tergantung dengan ini ya kalau kita lihat di sini Nah di sini ada penjual gitu ya penjual itu sebenarnya tidak bergantung kode produk gitu ya Kenapa karena kalau tonton perhatikan kode produknya kan berbeda penjualnya pun tetap sama artinya ini tidak bergantung ke kode produk ini seperti ini Nah kalau kita tetap paksa simpan dalam bentuk tabelnya seperti ini sekarang pertanyaannya Bagaimana kalau suatu saat galeri olahraga itu berubah namanya menjadi Galeri Indonesia misalnya yang terjadi adalah kita harus mengupdate banyak banget di sini ya baris Nah jadi ini bisa tidak konsisten Nah kenapa hal ini terjadi karena kita tahu kalau kolom penjual ini sebenarnya tidak tergantung dengan kode produk nah ketika ada kolom yang tidak tergantung dengan kode produk yang dilawan adalah kita harus pisahkan menjadi tabel terpisah jadi kasus ini penjual itu kita nanti pisahkan menjadi tabel terpisah Nah selanjutnya ada juga contohnya pembeli ya di sini ada pembeli Lalu ada alamat pengiriman kalau tonton perhatikan pembeli dan juga Alamat pengiriman itu tidak tergantung dengan order Nah jadi kalau misalnya kita tetap paksakan seperti ini kalau kolom-kolom tersebut terjadi perubahan maka kita harus ubah di semua baris ordernya contohnya di sini misalnya kita perhatikan ordernya ini pembelinya adalah Joko Moro ordernya ini berbeda ya pembelian tetap Joko Moro Ketika suatu saat Joko Moro mengubah nama dia misalnya ya di dalam sistem kita menjadi misalnya Joko Abadi Moro maka yang terjadi adalah kita harus cek semua pembeli yang namanya Joko Moro habis itu kita ubah semua datanya Kalau sampai tidak salah terjadi perubahan data contohnya saya mengubah data ini tapi saya lupa mengubah data ini gitu ya maka tidak konsisten jadi ya jadi kadang-kadang ordernya jokomoro kok tiba-tiba berubah gitu ya Jadi Joko Abadi more nah artinya Apa artinya pembeli ini sebenarnya dia tidak tergantung dengan si Prime memiliki order ini Nah kalau tanggal Mungkin dia tergantung ya karena dia adalah tanggal pembeliannya nah contohnya alamat juga sama alamat ini tidak tergantung dengan si ordernya Nah alamat-alamat semuanya ini tidak tergantung dengan si ordernya Nah kalau yang ke belakangnya nah ini tergantung ordernya ya karena total berat Ya mungkin sudah tergantung ordernya biaya jasa juga mungkin tergantung ordernya ya Nah atau metode pembayaran dan juga kurir juga sudah tergantung dengan ordernya artinya dari sini kita bisa kebayang ya akan ada tabel penjual nanti untuk menyimpan data penjual tabel pembeli ya dan juga tabel alamat nah seperti itu Nah nanti kurang lebih bentuk ketiganya Ya normal ketiganya kurang lebih kita bisa lihat di tab yang normal form ini ya bentuk ketiga Nah jadi nanti kurang lebih akan seperti ini jadi kita tahu di sini Misalnya ini tidak ada perubahan ya nah ordernya itu nanti kita pecah karena ordernya itu adalah dikirim ke alamat jadi kita akan simpan di sini adalah kode alamat nah Sebelumnya kan tidak ada ya tidak ada kode alamat sebenarnya teman-teman bisa Tentukan di sini kira-kira primernya apa tapi kalau dari sini mungkin ada yang agak sulit ya penentuannya contohnya kalau primernya menggunakan nama nama orang yang ditujukan nggak mungkin ya karena kan nama Budi Nugraha bisa aja banyak gitu ya Nah Jalan Raya juga sama gitu Ya bisa aja banyak provinsi apalagi kota apalagi negara apalagi gitu ya Nah kode pos bisa aja Tapi kan beberapa pengguna kan bisa aja Kode Posnya sama gitu ya Nah maka dari itu mungkin ada baiknya kita tambahkan satu kolom baru namanya adalah kode alamat Nah jadi di kasus ini saya akan buat di sini tabelnya di sini adalah alamat ya Nah Di mana alamat di sini Nanti dia ada kode alamat dan juga ada kode pembeli pembeli ini adalah milik alamat ini milik pembeli siapa jadi di sini Saya punya tabel pembeli ya isinya kode pembelinya dan juga nama pembelinya lalu di sini ada kode penjual dan juga penjualnya ini adalah tabel penjual Nah selanjutnya berarti yang data produk itu cukup yang penjualnya di sini saya tinggal ganti menjadi forgetnya adalah kode penjual jadi nanti dari sini kalau saya mau mengubah gitu ya Tadinya Galeri Indonesia menjadi galeri Sori galeri olahraga menjadi Galeri Indonesia kita Saya cukup ubah di tabel sini Jadi otomatis di sini nanti tidak ada perubahan apapun nah ketika kita lihat LookUp dari kode penjual oke go gitu ya kita lihat di sini Oh namanya sudah berubah menjadi Galeri Indonesia Nah selain itu juga akan penjual memang tidak tergantung dengan kode produknya jadi ini menjadi dua tabel ya untuk yang produk Kalau yang ini menjadi banyak nih contohnya nih order gitu ya jadi untuk memecah menjadi bentuk thermal 3 itu sebenarnya tergantung kita ya seberapa teliti kita gitu ya Jadi tergantung ruang lingkup juga contohnya di sini alamat saya akan pecah jadi nanti di sini tinggal Sebutkan kode alamat gitu ya termasuk contohnya metode pembayaran akan saya pecah karena mungkin kedepannya akan terjadi atau bertambah jenis metode pembayaran baru termasuk urine-nya Mungkin saya akan pecah lagi jadi tabel lagi gitu ya karena mungkin kurir kan bisa berubah juga nama kurirnya atau nama logistiknya atau bertambah kurir atau logistik yang baru jadi di sini kita akan buat yang alamat ya alamat itu berarti berelasi dengan pembeli Nah di sini Saya tidak perlu menambahkan kode pembeli ya Kenapa karena dari kode alamat itu di alamat di sini Saya tidak dapat kode pembelinya siapa Nah selanjutnya di sini ada tabel metode pembayaran dan juga ada tabel kurir Nah sekarang harusnya ini ya tabel kita sudah dalam bentuk normal ketiga jadi dari yang awalnya bentuknya tidak normal satu tabel lalu kita pecah menjadi ini bentuk normal pertama bentuk normal kedua menjadi 3 tabel dan akhirnya dibentuk thermal ketiga karena kita tahu ya kita harus keluarkan kolom-kolom yang tidak Ketergantungan dengan gitu ya Maka hasilnya menjadi lumayan banyak tabelnya ya Jadi ada tabel order detailnya tabel ordernya tabel produknya tabel penjual tabel pembeli tabel alamat tabel metode pembayaran dan terakhir adalah tabel kurir atau logistiknya Nah jadi sekarang kita sudah berhasil dalam bentuk Ya normal ketiga nah kurang lebih yardnya menjadi seperti ini kalau teman-teman pengen lihat silahkan lihat di sini ya diagram yardnya di sini kodenya ada di sini silahkan nanti teman-teman paste di plan UML di sini kurang lebih diagram yardnya seperti ini jadi di sini order kita gitu ya di sini ada detail ordernya ini ada produk ini ada penjual ya lalu dari sini ada metode pembayaran ada kurir ya lalu di sini ada alamat Ya dikirim ke alamat mana dan di sini ada pembelinya rahasia teman-teman bisa lihat detailnya dari pembeli dia bisa punya banyak alamat contohnya ya dari order juga dia dari order bisa dikirim ke banyak alamat ya lalu di sini dari order juga dia bisa punya seri 1 metode pembayaran bisa dimiliki oleh banyak order satu kurir juga bisa digunakan untuk Banyak order nah termasuk di sini ya satu order bisa punya banyak order detail dan satu order detail gitu ya itu relasinya ke produk juga Sama ya Nah lalu di sini ada penjualnya jadi ini kurang lebih relasi diagram yang kita buat ya hasil dari normalisasi database sekarang kita bahas tentang denormalisasi data normalisasi data itu digunakan untuk membuat model basis data yang baik normalisasi data sebenarnya adalah hanyalah petunjuk saja ya dalam keadaan tertentu kadang kita bisa melanggar aturan dari normalisasi datanya Nah pelanggaran normalisasi data itu kita bilang namanya adalah D normalisasi data Alasannya kenapa sih kita melakukan denormalisasi data itu adalah untuk mendapatkan performa yang lebih baik ya biasanya agar proses membaca datanya lebih cepat gitu ya akhirnya menjadi performanya lebih baik nah dan dalam ini sering sekali dilakukan di dunia nyata Jadi kalau nanti teman-teman di dunia kerja misalnya itu pasti kita sering sekali melakukan denormalisasi data jadi di awal mungkin kita akan selalu bikin bentuk datanya selalu normal tapi pada kasus-kasus tertentu kadang-kadang Kita harus melakukan dan normalisasi data agar mempercepat performa dari basis data kita Nah ada banyak sekali cara untuk melakukan deternalisasi data tapi inti dari normalisasi data itu adalah meningkatkan performa kecepatan untuk mendapatkan data jadi tujuan utamanya itu adalah meningkatkan performa kecepatan Oke kita akan bahas dari yang pertama yang biasa sering dilakukan ya ketika kita melakukan determinalisasi data yang pertama adalah derivat atribut nah sebelumnya pada saat kita melakukan normalisasi data kita menghapus atribut turunan ya jadi kayak total harga gitu ya Total tagihan total belanja itu kita hapus semua karena kita ingin membentuk database yang normal nah tapi pada keadaan tertentu kadang-kadang itu kita butuhkan ya Kenapa untuk mempercepat prosesnya nah Jika ternyata hal ini memperlambat proses pencarian data maka artinya kita harus mengolah data total belanjanya gitu ya Nah total beratnya Total harganya maka kita bisa melakukan yang namanya normalisasi data dengan menambahkan derivat atribut Contohnya seperti ini tabel kita sebelumnya itu sudah normal ya Jadi tidak ada total belanja dan lain-lain sekarang pertanyaannya misalnya oke Saya mau mencari data dimana total belanjanya di atas 1 juta Nah itu akan sangat menyulitkan kenapa karena kita harus mengkalkulasi dulu gitu ya dari tabel-tabel yang sudah kita buat dalam bentuk normal nah pada kasus seperti ini otomatis kan mempersulit kita untuk mencari data ya Nah pada kasus seperti ini tidak apa-apa kita melanggar aturan normalisasi data Jadi kita akan tambahkan dari file atribut atau atribut turunan tujuannya Apa baik lagi ya tujuannya itu harus untuk mempercepat proses pencarian datanya jadi pertama kita akan coba tambahkan atribut turunan Nah teman-teman bisa lihat ya di sini dan normalisasi data kita akan tambahkan atribut turunan saya Tandai warnanya dengan warna kuning ya ini adalah atribut turunan jadi produk total gitu ya jadi ini adalah kita di kali ini hasilnya ini ini di kali ini hasilnya ini lalu total harga gitu ya dari jumlah ordernya order Detailnya ada apa aja dijumlahkan hasilnya seperti ini total berat ya dari total barang di sini semuanya yang dibeli dijumlahkan total beratnya di sini lalu bakal belanjanya ya tinggal ditambahkan dan total tagihannya di sini ya ditambahkan dengan biaya jasa dan juga ongkos kirim Nah artinya Apa artinya yang kuning ini ini sebenarnya atribut turunan karena kita hitung gitu ya dari hasil penjumlahan yang lainnya nah tapi perlu diingat ya saat kita menambahkan atribut turunan seperti ini bisa jadi datanya tidak konsisten contohnya teman-teman mengubah di sini jumlah produknya menjadi satu misalnya di sini maka produk total harus diubah lagi datanya gitu ya Nah total harga juga otomatis berubah total berat juga otomatis berubah total belanja berubah total tagihan bakal berubah aja Google ya bahkan mungkin total ongkos juga bakal bisa berubah Nah jadi ini boleh gitu ya kita langgar dengan menambahkan atribut turunan tapi kita harus tahu konsekuensinya Jadi kita harus hitung ulang ketika ada perubahan data gitu ya untuk memastikan datanya tetap konsisten kalau sampai kita salah kalau otomatis akan rusak datanya jadi menambahkan Atri keturunan boleh untuk mempercepat proses pencariannya contohnya kalau kita sudah tambahkan ini kita kan lebih gampang ya contohnya Saya mau nyari order yang total tagihannya di atas 500.000 maka bisa saya menggunakan kolom Total tagihan Kalau tidak ada kolom Total tagihan maka kita akan bingung gitu ya hitungan dari mana kita harus jumlahkan total produknya di sini dikali jumlah harganya di sini gitu ya kalau dikalikan di habis itu dijumlahkan jadi lumayan sulit ya dan otomatis akan memperlambat kita mencari datanya jadi dia normalisasi data pertama kita bisa lakukan dengan menambahkan atribut turunan Oke selanjutnya adalah atribut tambahan jadi di awal gitu ya kita bilang kalau misalnya mau bikin basis data yang bagus itu ya harus tanpa menggunakan atribut-atribut tambahan yang berlebihan ya kalau tidak masuk ke dalam ruang lingkup Ya udah kita tidak perlu tambahkan nah seperti yang dibahas di normalisasi data atribut yang tidak memiliki ketergantungan fungsionalitas itu seharusnya dipisahkan dengan tabel sendiri jadi contohnya kan sebelumnya kita sudah kita pisahkan ya kayak pembeli Gitu ya Alamat dan lain-lain gitu kita pisahkan nah tapi kadang-kadang menambahkan atribut tambahan bisa mempercepat proses pencariannya contoh misalnya kita ingin mencari semua order untuk pembeli dengan nama Joko maka kita harus mencari dulu ke tabel alamat baru dari sana kita baru bisa mendapatkan ini ya dari kode alamat kita dapatkan kode pembelinya dari sana baru kita bisa ambil Nah itu lumayan menyulitkan ya contohnya di Eh sini gitu ya Saya misalnya mau nyari order yang dibeli oleh Joko misalnya nah kita nggak bisa nyari di sini Kenapa karena tidak ada informasi di sini Joko ya yang ada adalah kode alamat jadi kita harus cari satu persatu kode alamatnya gitu ya kode alamat mana Di Sini yang milik Joko Oh kode alamatnya adalah di sini adalah BN gitu ya jadi di sini baru kita dapat Oke BN itu tentang milik Joko Artinya kita harus lihat dulu ke tabel alamat lihat milik siapa baru kita bisa tahu order ini milik siapa Nah pada kasus seperti ini agak menyulitkan kalau kita mau mencari data ya nah jadi kita bisa tambahkan kalau kita mau emang mempercepat pencarian data di sini berarti kita bisa tambahkan kode pembeli ya nah jadi seperti itu Nah begitu juga misalnya ketika kita ingin mencari semua order ke penjual misalnya Galeri Indonesia maka kita harus mencari dulu ke tabel produk lalu kita harus dari relasi ke tabel detail order dan baru mencari lagi ke relasi ke tabel ordernya gitu ya Nah sebenarnya penambahan kode pembeli dan kode penjual di tabel order bisa mempercepat proses pencariannya Nah jadi contohnya Saya pengen tahu order mana sih yang beli ke pembeli Sorry penjualnya misalnya Galeri Indonesia Nah di sini tidak ada informasinya gitu ya di sini tidak ada kode penjual yang ada adalah kita harus cari dulu ke tabel order detail barang mana gitu ya barangnya kita cek dulu Oh ini barangnya ada di sini gitu ya di tabel barang kita cek lagi penjualnya mana galeri Indonesia oh ini ada Oh barang ini punya gelar Indonesia mari kita cari di sini barang ini Oke dibeli sama order ini Oke berarti order ini itu milik atau belinya dari galeri Indonesia Nah ini bakal berbelit-belit banget gitu ya jadi dari untuk mencari order yang dijual oleh Indonesia itu akan sangat menyulitkan nah pada kasus seperti ini mungkin ada baiknya ya untuk mempercepat kita bisa tambahkan di tabel order itu adalah kode penjual dan juga kode pembelinya jadi hasilnya itu kurang lebih akan seperti ini gitu ya jadi kita tambahkan di sini yang orange itu adalah kode pembeli dan juga kode penjual karena kan kita tahu ya di kasus kita satu order itu cuma boleh belanja ke satu penjual dan juga di beli oleh satu pembeli Nah jadi dengan seperti ini ketika kita mau nyari semua order yang penjualnya adalah Galeri Indonesia ya kita tinggal pakai kolom kode menjual go saja selesai seperti itu Saya mau lihat semua order yang dibeli oleh Joko Moro misalnya ya kita tinggal lihat di kode pembeli yang jma aja selesai jadi ini lebih gampang ya nah jadi ini adalah atribut tambahan Nah jadi Sebelumnya kan kita memang harus keluarkan ya yang tidak berelasi atau tidak Ketergantungan dengan Primary gitu ya Tapi pada kasus kalau kita butuh seperti ini kita bisa langgar Aturan itu dengan cara denormalisasi atribut tambahan Nah selanjutnya ada summary table summary table atau istilahnya adalah tabel rekapitulasi ya adalah tabel yang biasanya dibuat hasil dari pengolahan data dari tabel Master atau detailnya atau tabel asli atau utamanya nah pada kasus sebelumnya kita tidak membuat tabel rekapitulasi ya tapi misal saja kita akan menambahkan sebuah fitur baru nih Nah di mana misalnya penjual itu bisa melihat laporan penjualan bulanan Jadi tiap bulan dia bisa lihat laporannya gitu ya bulan ini berapa penjualannya Nah dengan normalisasi data hal ini bisa kita dapatkan laporannya dengan cara mengolah seluruh data order dan juga detail order dalam perbulan tapi masalahnya hal ini akan Sangat memberatkan jikalau kita sering sekali membutuhkan laporan bulanan ya jadi setiap kita butuh laporan bulanan saya akan kalkulasikan semua order di sini misalnya Mi Lik go gitu ya milik go disini misalnya lalu saya cek misalnya jumlah produk yang terjualnya berapa habis itu misalnya total penjualannya berapa dan lain-lain itu selalu di misalnya di kalkulasi ya diproses secara Real Time jadi setiap minta selalu dibuat gitu ya dilakukan itu akan memberatkan sistem basis data kita Nah ada baiknya kita bikin satu tabel yang namanya tabel summary jadi kita akan Buat tabel summary untuk laporan penjualan jadi ini adalah tabel hasil pengolahan data penjualan per bulannya Jadi kurang lebih tabelnya kita bisa tambahkan ada satu tabel baru namanya adalah tabel laporan penjualan bulanan jadi di sini contohnya kode penjualnya Go bulan 4 2023 gitu ya total penjualannya sekian Lalu ada penjualnya HS Misalnya ini adalah kode penjual ya Hello Store ini galeri olahraga misalnya bulannya berapa total penjualannya berapa Nah Dengan demikian karena ini adalah tabel summary gitu ya walaupun kita harus perhatikan ya karena ini tabel summary setiap ada perubahan di order gitu ya maka kita harus hitung ulang sih penjualannya tapi ini terjadi kalau memang ada perubahan di tabel order aja kalau tidak ada kalau kita mau lihat total penjualan itu bisa lebih gampang menggunakan tabel ini Jadi ini adalah tabel Nah selanjutnya ada lagi atribut untuk pencarian pada beberapa kasus kadang kita butuh melakukan pencarian dengan berbagai jenis kriteria misalnya gitu ya pada produk kadang kita ingin mencari data produk menggunakan nama tapi tanpa peduli huruf besar atau kecilnya misalnya atau istilahnya cash insentif nah pada kasus seperti ini kita bisa menambahkan atribut tambahan untuk mencarian misalnya nama produk lower gitu ya jadi isinya adalah lower case semua gitu ya huruf kecil semua ya dengan begitu ketika kita melakukan pencarian dengan nama produk kita bisa menggunakan atribut untuk pencarian tersebut jadi kolom yang baru itu kita bisa gunakan untuk melakukan pencarian misalnya Nah di sini kan kita ada ya nama barang ya nama produk Nah kalau kita harus mengetikkan benar-benar sama bola basket b nya huruf besar dan di sini basketnya juga b nya huruf besar kan kadang-kadang tidak semua orang peduli seperti itu ya kadang-kadang orang ya udah saya ngetik bola mau huruf kecil atau besar saya harus dapat gitu ya Nah pada kasus seperti ini bisa saja kita menambah satu kolom baru gitu ya yang sebenarnya isinya sama dengan nama produk di sini tapi ini semuanya di lowercase kan ya nanti di kolom sebelahnya itu dikecilkan jadi bola basket semuanya huruf kecil semua jadi nanti ketika kita mencari cukup memasukkan karakter apa lalu kita kecilkan semua hurufnya ya Dan kita cari menggunakan kolom tersebut nah ini sebenarnya melanggar ya karena kan berarti duplikat kolom gitu ya tapi kalau pada kasus kita mau mempercepat pencarian yaitu diperbolehkan gitu ya Nah hasilnya kurang lebih akan seperti ini jadi di sini kita bisa lihat ya yang warna biru jadi ini produk nama atau nama produknya di sini adalah produk nama yang lower atau yang huruf kecil semuanya jadi Isinya sebenarnya sama kalau teman-teman perhatikan bedanya ini adalah lower case secara aturan yang pertama ini sudah gagal ya dalam normalisasi data karena dia ada duplikat kolom tapi kalau misalnya memang kebutuhannya untuk mempercepat pencarian yaitu mau tidak mau kita bisa tambahkan ya bisa kita Langgar nah yang terakhir yang akan saya bahas adalah tentang imutable dan juga mau table table saat kita membuat tabel rata-rata adalah mau table table mau table itu artinya adalah bisa berubah lagi nah jadi kadang-kadang saat kita bikin tabel itu tabelnya sifatnya adalah mutable artinya table tersebut bisa berubah lagi di masa depan Nah contohnya semua tabel yang sudah kita buat sebelumnya itu sifatnya adalah mutable jadi bisa diubah-ubah nah tapi pada kasus tertentu kadang ada tabel yang sifatnya imutable ya jadi tabel yang tidak boleh diubah lagi Jadi kalau sudah dimasukkan data dia tidak boleh diubah lagi nah artinya hanya boleh memasukkan data ya dan tidak boleh diubah lagi nah sebenarnya pada kasus order yang kita buat ini sebenarnya idealnya adalah datanya imutable table kenapa kenapa order itu harus imutable karena penjualan yang sudah terjadi itu tidak boleh berubah lagi ya Nah di masa depannya itu tidak boleh berubah lagi kenapa Karena kalau misalnya terjadi perubahan data harga produk misalnya gitu ya nah saya beli misalnya bulan 4 harga produknya masih 10.000 tiba-tiba bulan 5 penjualnya mengubah harga produknya menjadi misalnya 100 ribu untuk penjualan yang bulan 4 itu kan tidak boleh berubah gitu ya harus tetap 10.000 nggak mungkin kan kita berubah menjadi 100.000 artinya nanti laporan keuangannya bisa Ngaco gitu ya karena datanya berubah nah pada kasus seperti ini idealnya harusnya untuk tabel order gitu ya Dan relasi-relasinya itu harusnya adalah imut table ya Nah artinya apa kalau misalnya order itu adalah data yang imutable artinya semua data yang berasal dari tabel Master atau detail atau aslinya atau utamanya maka harus kita duplikasi ke tabel imutablenya agar ketika terjadi perubahan di tabel masternya tabel ordernya tidak ikut berubah lagi datanya Nah ini Mungkin salah satu implementasi ini ya paling banyak melanggar ya karena kita banyak akan menduplikasi data nah kurang lebih nanti hasilnya akan seperti ini nah ini untuk immotable data jadi Anggap saja Misalnya order kita ini sekarang menjadi data yang imutable artinya Apa artinya data yang berelasi dengan order itu akan kita duplikat contohnya di tabel order detail berarti nama produknya kita akan duplikat juga beratnya akan diduplikat juga harganya akan di duplikat juga Jadi ada kolom di sini yang sebenarnya isinya akan sama dengan tabel produk tapi ingat ya tabel ini isinya itu akan sama pada saat kejadian ordernya di sini tanggal 11 misalnya nah kenapa karena mungkin kalau sekarang sudah tanggal 15 April misalnya data harganya bisa saja dirubah menjadi 200 ribu tapi yang paling penting adalah data penjualannya ketika tanggal 11 itu tidak berubah Nah jadi seperti itu Nah termasuk yang order mungkin ya di sini nah kita akan duplikat juga nih data penjualnya gitu ya pembelinya siapa Alamatnya ke Enak gitu ya Nah lalu di sini metode pembayarannya apa dan kurirnya juga apa Nah kenapa kita duplikat di sini karena penjualnya ketika kita belanja misalnya sebelumnya galeri olahraga Nah harusnya kan order kita tetap galeri olahraga kalau kedepannya tiba-tiba diganti menjadi Galeri Indonesia ya Kita harusnya tidak akan merubah order yang sebelumnya sudah terjadi jadi tetap penjualnya adalah galeri olahraga nah termasuk pembelinya ketika ketika membeli misalnya nama namanya masih jokomoro berarti ya di laporan ordernya itu harusnya ya namanya Joko Moro gitu ya kalau kedepannya tiba-tiba dirubah dari Joko moral menjadi Budi Moro misalnya ya harusnya nanti penjualan yang di masa depan yang berubah penjualan yang masa lampau itu tidak boleh berubah lagi termasuk alamat tujuannya gitu ya jangan sampai misalnya alamat tujuan pertama saya ke Budi Nugraha misalnya di Jakarta tiba-tiba kalau dirubah gitu ya menjadi Bandung tiba-tiba ordernya berubah menjadi ke Bandung gitu ya kan itu berbahaya gitu ya makanya kita untuk jenis tabel yang yang imutable itu biasanya kita akan duplikat ya data-data kolom yang dari data relasi masternya nah tapi tetap data masalah tetap ada di sini gitu ya Jadi kalau mau diubah silakan diubah di Masters ini gitu ya tapi yang tabel kolom duplikatnya Maksud saya itu tidak akan berubah di sini tetap sesuai dengan kejadian waktu ketika terjadi pembeliannya Nah jadi ini beberapa ini ya beberapa jenis ban normalisasi data yang sering dilakukan Sebenarnya masih banyak ya tapi intinya baik lagi ke awal dan normalisasi data itu dilakukan ya gitu ya agar atau untuk mempercepat proses pencarian data nah sebenarnya bisa aja dari yang ini contohnya ada banyak tabel teman-teman jadi gabungkan lagi jadi satu tabel misalnya atau Jadi dua tabel itu juga boleh aja kalau memang tujuannya ingin mempercepat proses pencarian atau pembacaan datanya jadi sekarang kita sudah tahu ya sudah paham ya proses normalisasi data dan setelah itu ada juga proses denormalisasi data Sekarang kita akan bahas tentang aplikasi sistem basis data setelah kita tahu ya cara membuat model basis data dan juga cara implementasi tabel dalam basis datanya sekarang pertanyaannya Bagaimana cara membuatnya nah cara paling sederhana adalah dengan membuat beserta menggunakan aplikasi spreadsheet ya sebenarnya contohnya misalnya Microsoft Excel Apple number Google Docs dan sejenisnya nah tapi aplikasi-aplikasi tersebut hanya cocok untuk menyimpan data dalam ukuran yang tidak terlalu besar dan hanya digunakan oleh pengguna end user saja Nah untuk menyimpan basis data dalam ukuran besar dan bisa digunakan oleh pengguna non user Contohnya seperti web atau juga aplikasi kita perlu aplikasi sistem beserta yang basisnya adalah aplikasi server oke sistem basis data berbasis server itu adalah aplikasi yang berjalan hanya bertugas sebagai server ya artinya dia cuma melayani permintaan atau perintah dari cliennya nah aplikasi tersebut akan menerima permintaan dari client lalu dia melakukan eksekusi perintah sesuai dengan yang diminta oleh si kliennya nah aplikasi dbms atau singkatan dari database management system itu yang jenisnya server itu biasanya tidak memiliki tampilan user interface gitu ya jadi tidak seperti Microsoft Excel misalnya Apple numbers Google dong dan lain-lain jadi dia biasanya basisnya adalah terminal ya aplikasinya sehingga untuk berinteraksi dengan aplikasi jenis ini biasanya kita menggunakan bahasa instruksi yang bisa dimengertinya ya atau bahasa basis data seperti yang sudah kita Jelaskan di awal nah salah satu bahasa basis data yang terkenal gitu ya dan banyak digunakan oleh sistem basis data itu adalah SQL atau structure query language Ini adalah salah satu basis data instruksi basis data yang paling populer digunakan oleh aplikasi database management system nah SQL itu berisikan perintah-perintah untuk membuat struktur basis data atau juga data definition language yang sudah kita bahas di awal dan juga perintah-perintah untuk mengelola basis data atau data manipulation language yang sudah kita bahas juga di awal Nah untuk belajar SQL itu sendiri Kita perlu memilih dulu database atau aplikasi database yang ingin kita pelajari gitu ya Nah nanti baru teman-teman belajar bahasa SQL nya Nah biasanya nanti disesuaikan dengan tempat kita bekerja untuk pemilihan aplikasi database management systemnya Kenapa Karena tiap perusahaan biasanya sudah memilih aplikasi dbms yang mereka gunakan masing-masing Oke nanti diagramnya kurang lebih akan seperti ini ya Jadi nanti sistem aplikasi Sorry aplikasi sistem basis data kita di sini Nah nanti di sini dari aplikasi contohnya kita membuat aplikasi web atau juga ada programmer atau aplikasinya dalam bentuk aplikasi desktop nanti semua ini akan mengirim perintah dalam bentuk SQL atau structure query language nanti aplikasi sistem bazarnya akan mengelola dari hasil perintah SQL ini menjadi file database baik itu melakukan Insert update di LED atau juga read ya atau istilahnya nah ini adalah beberapa contoh aplikasi dbms yang lumayan populer ya Nah Saya akan sebutkan 4 saja di sini tapi sebenarnya masih banyak banget ya Nah di sini kita akan sembuhkan 4 nah yang pertama adalah my sequel nah ini adalah salah satu aplikasi dbms yang populer gitu ya dia juga open source dan juga gratis dan banyak sekali website yang menggunakan aplikasi magic Wheel ini Nah selanjutnya teman-teman bisa lihat ya di websitenya ini ya my sequel.com jadi ini adalah salah satu sistem basis data yang lumayan populer ya Nah karena banyak sekali website yang menggunakan ini selanjutnya ada post Grey SQL ini adalah aplikasi dbms yang banyak digunakan di perusahaan-perusahaan besar ya pos gsql juga dia open source dan juga gratis nah teman-teman bisa download dan lihat di sini postcall Jadi ini adalah websitenya ini juga adalah salah satu aplikasi databasenya atau database management System yang lumayan populer atau untuk aplikasi dbms yang berbayar ada juga contohnya misalnya Oracle jadi Oracle itu adalah aplikasi dbms yang banyak digunakan di perusahaan-perusahaan biasanya corporate ya terutama contohnya di bank teman-teman bisa lihat di websitenya di sini adalah database Oracle Nah selanjutnya yang terakhir contohnya ada SQL server ini adalah aplikasi dbms yang banyak digunakan di perusahaan-perusahaan yang menggunakan basis teknologinya itu dari Microsoft jadi kebanyakan kalau besi teknologinya dari Microsoft itu rata-rata banyak yang menggunakan database Microsoft SQL server Nah teman-teman bisa lihat di sini nah ini adalah SQL server Nah jadi ini adalah contoh-contoh aplikasi dbmsnya gitu ya Nah di kelas ini kita tidak akan bahas ini gitu ya nanti kita akan bahasnya di kelas terpisah ya tentang spesifikasi untuk my sequel contohnya dan post tapi intinya dari sini teman-teman sekarang sudah tahu ya tentang basis data Bagaimana cara membuat modelnya relasinya normalisasi data dan normalisasi data dan juga terakhirnya adalah contoh-contoh aplikasi untuk sistem basis data Oke teman-teman selesai sudah ya materi tentang belajar basis data Jadi sekarang harusnya teman-teman sudah mengerti ya bagaimana cara membuat model basis data yang baik ya baik itu pembuatan dalam awal gitu ya dari mulai awal pembuatannya seperti menentukan entity atribut dan juga relasi atau membuat dalam bentuk misalnya normalisasi data ya dari hasil tujuan yang sudah ada kita buat relasinya atau model datanya dan yang terakhir Bagaimana cara mempercepat gitu ya proses pembacaan data menggunakan thermalisasi data Jadi sekarang harapannya teman-teman sudah siap gitu ya untuk lanjut ke materi selanjutnya nah saya sendiri teman-teman rekomendasikan untuk belajar gitu ya sistem basis data gitu ya Nah ini saya rekomendasikan dua materi ya Yang pertama adalah belajar masiquel atau teman-teman bisa belajar postgree SQL nah dua kelas ini juga ada ya di kelas programmer zaman now Jadi kalau teman-teman misalnya mau teman-teman Silahkan join juga di kelasnya programmer zaman now ya tentang my sequel atau juga belajar postgree SQL jadi ini adalah implementasi realnya ya Ketika teman-teman nanti belajar menggunakan sistem basis data jadi setelah teman-teman sekarang sudah mengerti cara memodelkan database atau beserta dengan baik saatnya teman-teman belajar cara real implementasi menggunakan aplikasi yang teman-teman bisa pilih Oke teman-teman jadi itu aja ya materi tentang sistem basis data dan juga basis datanya Nah kalau teman-teman saya ada kritik atau pertanyaan silahkan dimasukkan di kolom komentar atau di discord program Mer zaman now kita ketemu lagi di kelas selanjutnya salam program pada zaman now Bye