Rumah Keuangan Pribadi Bagaimana Menangani Anomali Modifikasi Modifikasi dan Bentuk Normal - dummies

Bagaimana Menangani Anomali Modifikasi Modifikasi dan Bentuk Normal - dummies

Video: DIY Tombol/saklar Auto Power Window Aerio bermasalah 2024

Video: DIY Tombol/saklar Auto Power Window Aerio bermasalah 2024
Anonim

Sejumlah masalah - disebut anomali modifikasi - dapat mengganggu database jika Anda tidak membuat struktur Database SQL dengan benar Untuk mencegah masalah ini, Anda dapat menormalkan struktur basis data. Normalisasi umumnya memerlukan pemisahan satu tabel database menjadi dua tabel sederhana.

Modifikasi anomali dinamakan demikian karena dihasilkan oleh penambahan, pengubahan, atau penghapusan data dari tabel database.

Misalkan, misalnya, bahwa perusahaan Anda menjual produk pembersih rumah tangga, dan Anda menagih semua pelanggan dengan harga yang sama untuk setiap produk. Tabel PENJUALAN mencatat semua hal untuk Anda. Asumsikan bahwa pelanggan 1001 bergerak menjauh dan tidak lagi adalah pelanggan. Anda tidak peduli apa yang dia beli di masa lalu, karena dia tidak akan membeli apapun dari Anda lagi. Anda ingin menghapus barisnya dari tabel.

Jika Anda melakukannya, bagaimanapun, Anda tidak hanya kehilangan fakta bahwa pelanggan 1001 telah membeli deterjen; Anda juga kehilangan fakta bahwa deterjen membutuhkan biaya $ 12. Situasi ini disebut anomali penghapusan . Dalam menghapus satu fakta (bahwa pelanggan 1001 membeli deterjen cucian), Anda secara tidak sengaja menghapus fakta lain (bahwa biaya deterjen cucian $ 12).

Anda dapat menggunakan tabel yang sama untuk menggambarkan anomali penyisipan. Misalnya, Anda ingin menambahkan deodoran tongkat ke lini produk Anda dengan harga $ 2. Anda tidak dapat menambahkan data ini ke tabel PENJUALAN sampai pelanggan membeli deodoran tongkat.

Masalah dengan tabel PENJUALAN adalah tabel ini menangani lebih dari satu hal: Ini mencakup tidak hanya produk yang dibeli pelanggan, tetapi juga berapa biaya produknya. Untuk menghilangkan anomali, Anda harus membagi tabel PENJUALAN menjadi dua tabel, masing-masing hanya menangani satu tema atau gagasan.

  • CUST_PURCH, yang menangani gagasan tunggal pembelian pelanggan.

  • PROD_PRICE, yang membahas gagasan tunggal tentang harga produk.

Anda sekarang dapat menghapus baris untuk pelanggan 1001 dari CUST_PURCH tanpa kehilangan fakta bahwa biaya deterjen cucian $ 12. (Biaya deterjen cucian sekarang disimpan di PROD_PRICE.) Anda juga bisa menambahkan deodoran tongkat ke PROD_PRICE apakah ada orang yang membeli produk itu atau belum. Informasi pembelian disimpan di tempat lain, di tabel CUST_PURCH.

Proses memecah tabel menjadi beberapa tabel, yang masing-masing memiliki satu tema, disebut normalisasi . Operasi normalisasi yang memecahkan satu masalah mungkin tidak mempengaruhi masalah lainnya.Anda mungkin harus melakukan beberapa operasi normalisasi berturut-turut untuk mengurangi setiap tabel yang dihasilkan menjadi satu tema.

Setiap tabel database harus menangani satu - dan hanya satu - tema utama. Kadang-kadang (seperti yang mungkin Anda duga) menentukan bahwa tabel benar-benar berhubungan dengan dua atau lebih tema bisa menjadi sulit.

Anda dapat mengklasifikasikan tabel sesuai dengan jenis anomali modifikasi yang menjadi subjeknya. Pada makalah tahun 1970, E. F. Codd mengidentifikasi tiga sumber anomali modifikasi dan mendefinisikan bentuk normal (1NF, 2NF, 3NF) pertama, kedua, dan ketiga sebagai obat untuk jenis anomali tersebut. Pada tahun-tahun berikutnya, Codd dan yang lainnya menemukan jenis anomali tambahan dan menetapkan bentuk normal baru untuk menghadapinya. Bentuk normal Boyce-Codd (BCNF), bentuk normal keempat (4NF), dan bentuk normal kelima (5NF) masing-masing memberi tingkat proteksi yang lebih tinggi terhadap anomali modifikasi. Tidak sampai tahun 1981, bagaimanapun, melakukan sebuah makalah, yang ditulis oleh Ronald Fagin, menjelaskan bentuk normal domain-key atau DK / NF. Dengan menggunakan bentuk normal terakhir ini, Anda bisa menjamin bahwa sebuah tabel bebas dari modifikasi anomali.

Bentuk normal nested dalam arti bahwa tabel yang ada di 2NF secara otomatis

juga dalam 1NF. Demikian pula, tabel di 3NF secara otomatis dalam 2NF, dan seterusnya. Untuk aplikasi yang paling praktis, menempatkan database dalam 3NF cukup untuk memastikan tingkat integritas yang tinggi. Agar benar-benar yakin akan integritasnya, Anda harus memasukkan database ke DK / NF. Setelah Anda menormalkan database sebanyak mungkin, Anda mungkin ingin membuat denormalizations terpilih untuk meningkatkan kinerja. Jika Anda melakukannya, waspadalah terhadap jenis anomali yang mungkin sekarang menjadi mungkin.

Bagaimana Menangani Anomali Modifikasi Modifikasi dan Bentuk Normal - dummies

Pilihan Editor

Bagaimana Menyediakan Dokumen dengan CSS3 - dummies

Bagaimana Menyediakan Dokumen dengan CSS3 - dummies

Menggunakan CSS3 untuk membuat garis besar dokumen berguna bila halaman berisi banyak materi dan Anda ingin pengguna menavigasi dengan mudah. Garis besar bergantung pada berbagai tag yang Anda berikan. Metode pembuatan dokumen saat ini adalah menggunakan tag sampai . Pendekatan ini bekerja dengan baik ...

Cara Mendaftar untuk Akun Google - dummies

Cara Mendaftar untuk Akun Google - dummies

Pembuat google Page menyediakan alat canggih yang memungkinkan bahkan halaman desain perancang pemula Sebelum Anda dapat menggunakan Google Page Creator untuk membuat halaman Web Anda sendiri, Anda harus mendaftar ke akun Google. Untuk mendaftar dan memulai membangun situs Web, ikuti langkah-langkah ini:

Bagaimana mengedarkan tepi dan membuat beberapa kolom dengan CSS3 - dummies

Bagaimana mengedarkan tepi dan membuat beberapa kolom dengan CSS3 - dummies

Daripada memiliki untuk menggunakan hingga empat gambar terpisah untuk memberi ilusi bentuk melengkung di situs Anda, dengan CSS3 Anda sekarang dapat membuat wadah dengan sudut melengkung! Inilah kodenya, yang memiliki deklarasi CSS3 yang didukung penuh di bagian atas diikuti oleh duplikat yang diawali untuk browser lainnya: #box {border-radius: 20px; ...

Pilihan Editor

PHP & MySQL For Dummies Cheat Sheet - dummies

PHP & MySQL For Dummies Cheat Sheet - dummies

Saat menulis program PHP untuk membuat aplikasi database Web Anda dan berkomunikasi Dengan database MySQL, Anda memiliki banyak hal yang perlu diingat. Anda harus mengeja kode dengan benar dan menggunakan sintaks yang sempurna. Lembar Cheat ini memberikan referensi untuk melihat secara cepat sintaks yang benar untuk kode yang paling sering Anda gunakan.

Gunakan kembali Kode di Program PHP melalui Fungsi - dummies

Gunakan kembali Kode di Program PHP melalui Fungsi - dummies

Anda dapat, dengan bantuan sebuah auto_prepend_file, buat sebuah fungsi file yang secara otomatis disertakan dalam semua program PHP Anda. Fungsi ini mungkin sesuatu yang sederhana seperti memulai sesi atau serumit fungsi login keseluruhan. Setiap kali Anda membutuhkan atau berpikir bahwa Anda perlu memiliki fungsi di lebih dari satu file, ...

Memecahkan skrip PHP - dummies

Memecahkan skrip PHP - dummies

Anda tidak dapat menulis skrip tanpa membuat kesalahan tertentu. Caranya adalah dengan melatih diri untuk mengenalinya, putar mata Anda, katakan, "Tidak lagi," dan perbaiki saja. Satu pesan kesalahan yang akan Anda lihat berkali-kali adalah Parse error: parse error in c: test. php on line 7 Ini adalah cara PHP untuk mengatakan "Hah? "Artinya ...

Pilihan Editor

Bagaimana Membangun Kampanye Otomasi Pemasaran untuk Memimpin Memimpin Memelihara - dummies

Bagaimana Membangun Kampanye Otomasi Pemasaran untuk Memimpin Memimpin Memelihara - dummies

Anda dapat memberdayakan tenaga penjualan dengan mengasuh program otomasi pemasaran untuk membantu mereka menjadi lebih efektif dengan waktu mereka. Berikut adalah beberapa item yang perlu dipertimbangkan sebelum Anda membuat program pengasuhan yang spesifik ini: Segmentasi / otomasi: Anda perlu menyiapkan cara agar penjualan mengarah ke program tetes dalam Customer Relationship Management ...

Bagaimana Membangun Kampanye Pemasaran Otomatis untuk Penjualan Dingin Memimpin - dummies

Bagaimana Membangun Kampanye Pemasaran Otomatis untuk Penjualan Dingin Memimpin - dummies

Kampanye pemasaran otomatis pertama Anda harus membangun penjualan setelah menghidupkan pemberdayaan penjualan harus dirancang untuk menangkap dan memelihara prospek yang tidak dapat dicapai penjualan melalui proses penjualan. Prospek ini biasanya jatuh melalui celah-celah dan tidak pernah terdengar lagi. Banyak artikel yang mencakup keefektifan penjualan merujuk pada statistik bahwa ...

Bagaimana Membangun Kampanye Otomasi Pemasaran Memimpin Bersih Memimpin Baru - dummies

Bagaimana Membangun Kampanye Otomasi Pemasaran Memimpin Bersih Memimpin Baru - dummies

Tujuan jaring baru memimpin memupuk program otomasi pemasaran adalah untuk mengambil keputusan baru dari pertunangan pertamanya untuk menjadi timbal penjualan yang siap. Saat membangun program pengasuhan utama bersih pertama, gunakan daftar periksa berikut untuk memastikan bahwa Anda memiliki semua yang Anda butuhkan untuk membuat program hebat: Konten: Anda ...