IT A - Z

Home

IT A - Z
Knowledge Developer Database Internet Resource Forum
 

สารบัญตามตัวอักษร

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z #
 
 

normalization

ที่มา SearchSQLServer.com

ในการสร้างฐานข้อมูล normalization เป็นกระบวนการจัดข้อมูลเข้าตารางข้อมูล ในวิธีนี้ที่ผลลัพธ์ของการใช้ข้อมูลจะไม่คลุมเครือเสมอและตามความมุ่งหมาย normalization มีผลกระทบกับข้อมูลซ้ำภายในฐานข้อมูลและผลลัพธ์ในการสร้างตารางข้อมูลเพิ่มเติมบ่อย (ขณะที่ normalization มีแนวโน้มสร้างข้อมูลซ้ำ แต่ไม่แนะนำให้มากเกินไป ซึ่งเป็นการซ้ำที่ไม่จำเป็น) ตามปกติ normalization เป็นกระบวนการกรองหลังเริ่มต้นการระบุอ๊อบเจคข้อมูลที่ต้องอยู่ในฐานข้อมูล ระบุความสัมพันธ์ และกำหนดตารางมูลที่ต้องการและคอลัมน์ในแต่ละตารางข้อมูล

ตัวอย่างของการทำ normalization กับข้อมูลอย่างง่ายนี้ประกอบด้วยตามที่แสดง

ลูกค้า

รายการซื้อ

ราคาซื้อ

สมชาย

เสื้อเชิร์ต

฿ 900

สมศรี

รองเทนนิส

฿ 1,400

อมร

เสื้อเชิร์ต

฿ 900

ประพันธ์

กางเกง

฿ 1,200

ถ้าตารางข้อมูลนี้ใช้สำหรับวัตถุประสงค์เก็บร่องรอยของราคารายการและต้องการลบลูกค้ารายหนึ่ง ก็จะทำราคาด้วย การทำ normalization กับข้อมูลจะมีวิธีการทำความเข้าใจเรื่องนี้และแก้ไขปัญหาโดยการแบ่งตารางข้อมูลออกเป็นสองตารางข้อมูล ตารางหนึ่งเก็บสารสนเทศเกี่ยวกับลูกค้าแต่ละรายและสินค้าที่พวกเขาซื้อไปและตารางที่สองเกี่ยวกับสินค้าและราคา การเพิ่มและลบในแต่ละตารางข้อมูลจะไม่มีผลต่อกัน

First normal form (1NF) นี่เป็นระดับ “พื้นฐาน” ของ normalization และตรงกับข้อกำหนดของฐานข้อมูลโดยทั่วไป ตามชื่อ
- เก็บตารางข้อมูลสองมิติด้วยแถวและคอลัมน์
- แต่ละคอลัมน์ตรงกับอ๊อบเจคย่อยหรือคุณลักษณะของอ๊อบเจคที่นำเสนอโดยตารางข้อมูลทั้งหมด
- แต่ละแถวนำเสนอรายการเอกลักษณ์ของอ๊อบเจคย่อยหรือคุณลักษณะและต้องแตกต่างในบางอย่างจากแถวอื่น (นั่นคือ ไม่มีแถวซ้ำเป็นไปได้)
- รายการทั้งหมดในคอลัมน์ต้องเป็นบางชนิด ตัวอย่าง ในป้ายคอลัมน์ “ลูกค้า” มีเฉพาะชื่อหรือจำนวนได้รับการยอมรับ

Second normal form (2NF) ที่ระดับนี้ของ normalization แต่ละคอลัมน์ในตารางข้อมูลที่ไม่ได้ค้นหาเนื้อหาของอีกคอลัมน์โดยตัวเองต้องเป็นฟังก์ชันของคอลัมน์อื่นในตารางข้อมูล ตัวอย่าง ในตารางข้อมูลกับสามคอลัมน์ที่เก็บรหัสลูกค้า สินค้าขาย และราคาของสินค้าเมื่อขาย ราคาต้องเป็นฟังก์ชันของรหัสลูกค้า (ลดการตั้งชื่อ) และสินค้าเฉพาะ

Third normal form (3NF) ที่ระดับสองรูปแบบปกติ การปรับปรุงยังคงเป็นไปได้เพราะการเปลี่ยนแปลงหนึ่งแถวอาจจะมีผลกับข้อมูลที่อ้างถึงสารสนเทศนี้จากอีกตารางข้อมูล ตัวอย่าง การใช้ตารางข้อมูลที่อ้างถึง การลบแถวที่อธิบายการซื้อของลูกค้า (เพราะบางทีอาจจะส่งคืน) จะได้รับการลบความจริงที่สินค้ามีราคาแน่นอน ใน third normal form ตารางข้อมูลเหล่านี้จะได้รับการแบ่งเป็นสองตารางข้อมูล ดังนั้นราคาสินค้าจะได้รับการสืบค้นแยกกัน

Domain/key normal form (DKNF) คีย์เอกลักษณ์ระบุแต่ละแถวในตารางข้อมูล โดเมนเป็นชุดของค่าเป็นไปได้สำหรับคุณลักษณะ โดยการบังคับคีย์และการควบคุมโดเมน ฐานข้อมูลได้รับการประกันความผิดพลาดการปรับปรุงเสรี DKNF เป็นระดับ normalization ที่ผู้ออกแบบส่วนใหญ่ต้องการให้บรรลุ

 

 
 

ศัพท์เกี่ยวข้อง

database

ดูเพิ่มเติม

Learn IT: Unleashing the Power of the Database มีสารสนเทศเพิ่มเติม

update: 1 เมษายน 2548