SlideShare a Scribd company logo
1 of 7
First Normal Form (1NF) 
เงื่อนไข : ไม่มีคอลัมน์ใดในตารางที่มีค่ามากกว่า 1 ค่า คือ 
ค่าในแต่ละคอลัมน์ต้องเป็น Atomic หรือ ไม่ อยู่ในรูปของ Repeating Group 
หมายความว่า ข้อมูลที่เก็บในแตละคอลัมน์ต้องมีลักษณะเป็นค่าเดียว(Single 
valued) ไม่สามารถแบ่งย่อยได้อีก 
วิธีการที่จะทาให้เป็น 1NF คือ 
1. แยกคอลัมน์ที่มีค่ามากกว่า 1 ค่าออกเป็นแถวใหม่ 
2. เพิ่มข้อมูลที่เหมาะสมเข้าไปในคอลัมน์ที่ว่างอยู่ของแถวที่เกิดขึน้ใหม่ 
ตัวอย่างที่ 1 วิธีการแยกคอลัมน์ที่มีค่ามากกว่า 1 ค่าออกเป็นแถวใหม่ 
ตารางที่ 1.1 แสดงข้อมูลนักศึกษา 
รหัสนักศึกษา ชื่อ ที่อยู่ ชมรม งานอดิเรก 
52001 นา้หวาน ใจเย็น กรุงเทพ ดนตรีไทย 
พระพุทธศาสนา 
เล่นระนาด 
อ่านหนังสือ 
52002 เหมยลี่ นาเมือง ชลบุรี การแสดงละคร ร้องเพลง 
52003 ประยุต วัฒนา นครปฐม ดนตรีสากล 
อาสาสมัคร 
เล่นอินเตอร์เนต 
ฟังเพลง 
คอลัมน์ชมรมและงานอดิเรกมีค่ามากกว่า 1 ค่า 
แสดงว่าไม่เป็น Atomicหรืออยู่ในรูปของ Repeating Group จึงไม่เป็น 1NF 
ตารางที่ 1.2 ข้อมูลนักศึกษาที่ผ่านการ 
ทา Normalization โดยวิธีการแยกคอลัมน์ที่มีค่ามากกว่า 1 ค่า ออกเป็นแถวใหม่ 
รหัสนักศึกษา ชื่อ ที่อยู่ ชมรม งานอดิเรก 
52001 นา้หวาน ใจเย็น กรุงเทพ ดนตรีไทย เล่นระนาด 
52001 นา้หวาน ใจเย็น กรุงเทพ พระพุทธศาสนา อ่านหนังสือ
52002 เหมยลี่ นาเมือง ชลบุรี การแสดงละคร ร้องเพลง 
52003 ประยุต วัฒนา นครปฐม ดนตรีสากล เล่นอินเตอร์เนต 
52003 ประยุต วัฒนา นครปฐม อาสาสมัคร ฟังเพลง 
ตัวอย่างที่ 2 วิธีการเพิ่มข้อมูลที่เหมาะสมเข้าไปในคอลัมน์ที่ว่างอยู่ของแถวที่เกิดขนึ้ใหม่ 
ตารางที่ 2.1 การเก็บข้อมูลหนังสือที่ยังไม่ผ่านการทา Normalization 
ISBN ชื่อหนังสือ ชื่อผู้แต่ง 
123001 ระบบสารสนเทศ ฟ้าใส ใจงาม 
นกน้อย อารี 
123002 การจดการเนือ้หา นารี ศิริพร 
ปอยฝ้าย มาลัยพร 
เพชรทาย วงศ์คาเหลา 
123003 ออกแบบสารสนเทศ พชร นอนดี 
ตารางที่ 2.2 ข้อมูลหนังสือที่ผ่านการทา Normalization 
ISBN ชื่อหนังสือ ชื่อผู้แต่ง1 ชื่อผู้แต่ง 2 ชื่อผู้แต่ง 3 
12001 ระบบสารสนเทศ ฟ้าใส ใจงาม นกน้อย อารี 
12002 การจดการเนือ้หา นารี ศิริพร ปอยฝ้าย มาลัย เพชร คาเหลา 
12003 ออกแบบสารสนเทศ พชร นอนดี
Second Normal Form (2NF) 
คุณสมบัติของ 2NF 
1. ต้องมีคุณสมบัติของ 1NF 
2. ทุก Nonprime Attribute จะต้องขึ้นกับ Prime (Primary Key) ทุกตัว 
ฟังก์ชันการขึ้นต่อกัน (Functional Dependency) 
เป็นสิ่งที่ใช้แสดงความสัมพันธ์ระหวา่งแอตทริบิวต์ ในรูปแบบฟังก์ชัน 
สมมุติวา่ X และ Y เป็นแอตทริบิวต์ในตารางหนึ่ง 
ถ้า Y ขึ้นอยูกั่บ X จะสามารถเขียนฟังก์ชันการขึ้นตอ่กันได้ดังนี้ 
X  Y 
หมายความวา่ ทุกๆค่าของ X เราเลือกขึ้นมา จะสามารถหาค่าของ Y มา 1 
ค่าที่สอดคล้องกับค่าของ X ได้เสมอ 
เช่น ตารางข้อมูลลูกค้า 
รหัสลูกค้า ชื่อ นามสกุล ที่อยู่ เบอร์โทร 
001 ศิริพร ไชยเชื้อ อุบล 02-221-888 
002 อารียา เอฮาร์เก็ต นครปฐม 02-555-665 
003 วีรภาพ สุภาพไพบูล กรุงเทพ 02-333-555 
004 พัชราพา ไชยเชื้อ อุบล 02-221-888 
ถ้าถามวา่ลูกค้าคนใดที่มี รหัส 001 เราจะสามารถรู้วา่ คือ ศิริพร 
เพราะชื่อลูกค้าขึ้นอยูกั่บรหัสลูกค้าซึ่งเป็นคีย์หลัก เราสามารถเขียนฟังค์ชั่นการขึ้นตอ่กันได้วา่ 
รหัสลูกค้า (X)  ชื่อ (Y) 
เรามาลองพิจารณาตาราง ข้อมูลการสั่งซื้อสินค้า วา่มีคุณสมบัติเป็น 2NF หรือไม่? 
รหัสลูกค้า ชื่อลูกค้า ระดับ ประเภท รหัสสินค้า ชื่อสินค้า จานวนสินค้า 
001 ประจักษ์ ชั้นดี A N111 ทัพพี 10 
001 ประจักษ์ ชั้นดี A N222 กระทะ 15 
001 ประจักษ์ ชั้นดี A N333 ตะหลิว 15 
002 วนิดา ปานกลาง B N111 ทัพพี 10
003 พิศมัย พอใช้ C N222 กระทะ 20 
1. มีคุณสมบัตเป็น 1NF หรือไม่ 
ตอบ ผา่นคุณสมบัติ 1NF จากข้อมูลในตารางเราจะเห็นวา่ ไมมี่คอลัมน์ใดที่มีค่ามากกวา่ 1 ค่า แสดงวา่ 
เป็น 1NFแล้ว 
2. ทุก Nonprime ขึ้นกับ Prime ทุกตัวหรือไม่? 
ตอบ ไม่ 
จากตารางมี Primary 
Key อยูส่องตัวคือ รหัสลูกค้า และ รหัสสินค้า ดังนั้นแอตทิบิวที่เหลือทั้งหมดคือ nonprime 
- เราจะเห็นวา่ ชื่อลูกค้า, ระดับ, ประเภท ขึ้นกับ รหัสลูกค้า เพียงอยา่งเดียวไมข่ึ้นกับ รหัสสินค้า 
- ชื่อสินค้า ขึ้นกับ รหัสสินค้า เพียงตัวเดียว ไมข่ึ้นกับ รหัสลูกค้า 
สรุปฟังก์ชั่นการขึ้นต่อกันได้ดังนี้ 
รหัสลูกค้า  ชื่อลูกค้า, ระดับ, ประเภท 
รหัสสินค้า  ชื่อสินค้า 
ดังนั้นเราจึงต้องแตกตารางออกมาเป็น 2 ตาราง ตามความสัมพันธ์ของฟังก์ชั่นการขึ้นตอ่กัน 
ดังนี้ 
ตารางที่ 1 ข้อมูลลูกค้า 
รหัสลูกค้า ชื่อลูกค้า ระดับ ประเภท 
001 ประจักษ์ ชั้นดี A 
002 วนิดา ปานกลาง B 
003 พิศมัย พอใช้ C
ตารางที่ 2 ข้อมูลสินค้า 
รหัสสินค้า ชื่อสินค้า 
N111 ทัพพี 
N222 กระทะ 
N333 ตะหลิว 
ตารางที่ 3 ข้อมูลใบสั่งซื้อ 
รหัสลูกค้า รหัสสินค้า จานวนสินค้า 
001 N111 10 
001 N222 15 
001 N333 15 
002 N111 10 
003 N222 20 
เมื่อผา่น 2NF แล้วแต่ยังมีปัญหาในการเพิ่มข้อมูลอยู่จึงต้องทาการ นอมัลไลเซชั่นระดับ 3 (3NF)
Third Normal Form (3NF) 
คุณสมบัติของ 3NF 
1. ต้องมีคุณสมบัติของ 2NF 
2. Nonprime ต้องไม่ขึ้นกับ Nonprime 
พิจารณา ตารางข้อมูลของลูกค้า 
รหัสลูกค้า ชื่อลูกค้า ระดับ ประเภท 
001 ประจักษ์ ชั้นดี A 
002 วนิดา ปานกลาง B 
003 พิศมัย พอใช้ C 
1. ต้องมีคุณสมบัติของ 2NF 
- จากตางรางมีคุณสมบัติเป็น 2NF แล้ว 
2. Nonprime ต้องไม่ขึ้นกับ Nonprime 
- เราจะสังเกตุเห็นวา่ ประเภท ขึ้นกับ ระดับ ซึ่งเป็น Nonprime เหมือนกัน 
ดังนั้นข้อมูลในตารางนี้ยังไมเ่ป็น 3NF เราสามารถแตกตารางให้เป็น3NF ได้ดังนี้ 
1. ตารางข้อมูลลูกค้า 
รหัสลูกค้า ชื่อลูกค้า ระดับ 
001 ประจักษ์ ชั้นดี 
002 วนิดา ปานกลาง 
003 พิศมัย พอใช้ 
2. ตารางข้อมูลระดับลูกค้า 
ระดับ ประเภท 
ชั้นดี A 
ปานกลาง B 
พอใช้ C
นอมัลไลเซชั่น ( Normalization )1nf-3nf

More Related Content

What's hot

ตัวอย่างบทที่1 บทนำ เล่มโปรเจ็ค
ตัวอย่างบทที่1 บทนำ เล่มโปรเจ็คตัวอย่างบทที่1 บทนำ เล่มโปรเจ็ค
ตัวอย่างบทที่1 บทนำ เล่มโปรเจ็คtumetr1
 
ตัวอย่างบทคัดย่อ
ตัวอย่างบทคัดย่อตัวอย่างบทคัดย่อ
ตัวอย่างบทคัดย่อsukanya5729
 
กิตติกรรมประกาศ
กิตติกรรมประกาศกิตติกรรมประกาศ
กิตติกรรมประกาศmaerimwittayakom school
 
พื้นฐานกรดเบส
พื้นฐานกรดเบสพื้นฐานกรดเบส
พื้นฐานกรดเบสJariya Jaiyot
 
ตัวอย่างแผนธุรกิจบ้านใร่กาแฟ
ตัวอย่างแผนธุรกิจบ้านใร่กาแฟตัวอย่างแผนธุรกิจบ้านใร่กาแฟ
ตัวอย่างแผนธุรกิจบ้านใร่กาแฟNattakorn Sunkdon
 
เซลล์กัลวานิก
เซลล์กัลวานิกเซลล์กัลวานิก
เซลล์กัลวานิกkkrunuch
 
บทที่ 9 รายได้ประชาชาติ การบริโภค การออม และการลงทุน
บทที่ 9 รายได้ประชาชาติ การบริโภค การออม และการลงทุนบทที่ 9 รายได้ประชาชาติ การบริโภค การออม และการลงทุน
บทที่ 9 รายได้ประชาชาติ การบริโภค การออม และการลงทุนOrnkapat Bualom
 
01 บทที่ 1-บทนำ
01 บทที่ 1-บทนำ01 บทที่ 1-บทนำ
01 บทที่ 1-บทนำSarid Nonthing
 
แบบสอบถามความคิดเห็นสำหรับผู้เชี่ยวชาญด้านเนื้อหาเกี่ยวกับ
แบบสอบถามความคิดเห็นสำหรับผู้เชี่ยวชาญด้านเนื้อหาเกี่ยวกับแบบสอบถามความคิดเห็นสำหรับผู้เชี่ยวชาญด้านเนื้อหาเกี่ยวกับ
แบบสอบถามความคิดเห็นสำหรับผู้เชี่ยวชาญด้านเนื้อหาเกี่ยวกับบุญรักษา ของฉัน
 
การวิเคราะห์อัลกอริทึม(algorithm analysis)
การวิเคราะห์อัลกอริทึม(algorithm analysis)การวิเคราะห์อัลกอริทึม(algorithm analysis)
การวิเคราะห์อัลกอริทึม(algorithm analysis)tumetr
 
ข้อสอบความคิดสร้างสรรค์
ข้อสอบความคิดสร้างสรรค์ข้อสอบความคิดสร้างสรรค์
ข้อสอบความคิดสร้างสรรค์Jirathorn Buenglee
 
การเคลื่อนที่ในหนึ่งมิติและสองมิติ(เสร็จ)
การเคลื่อนที่ในหนึ่งมิติและสองมิติ(เสร็จ)การเคลื่อนที่ในหนึ่งมิติและสองมิติ(เสร็จ)
การเคลื่อนที่ในหนึ่งมิติและสองมิติ(เสร็จ)Chatwan Wangyai
 
การเคลื่อนที่แบบฮาร์มอนิกอย่างง่าย
การเคลื่อนที่แบบฮาร์มอนิกอย่างง่ายการเคลื่อนที่แบบฮาร์มอนิกอย่างง่าย
การเคลื่อนที่แบบฮาร์มอนิกอย่างง่ายSunanthaIamprasert
 
การเขียนเอกสารประกอบการสอน
การเขียนเอกสารประกอบการสอนการเขียนเอกสารประกอบการสอน
การเขียนเอกสารประกอบการสอนPrachyanun Nilsook
 
ตัวอย่างบทสรุปผู้บริหารโครงการบ่มเพาะธุรกิจ
ตัวอย่างบทสรุปผู้บริหารโครงการบ่มเพาะธุรกิจตัวอย่างบทสรุปผู้บริหารโครงการบ่มเพาะธุรกิจ
ตัวอย่างบทสรุปผู้บริหารโครงการบ่มเพาะธุรกิจCherie Pink
 
การเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัย
การเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัยการเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัย
การเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัยBenjapron Seesukong
 

What's hot (20)

ตัวอย่างบทที่1 บทนำ เล่มโปรเจ็ค
ตัวอย่างบทที่1 บทนำ เล่มโปรเจ็คตัวอย่างบทที่1 บทนำ เล่มโปรเจ็ค
ตัวอย่างบทที่1 บทนำ เล่มโปรเจ็ค
 
ลอการิทึม
ลอการิทึมลอการิทึม
ลอการิทึม
 
เลขยกกำลัง
เลขยกกำลังเลขยกกำลัง
เลขยกกำลัง
 
ตัวอย่างบทคัดย่อ
ตัวอย่างบทคัดย่อตัวอย่างบทคัดย่อ
ตัวอย่างบทคัดย่อ
 
กิตติกรรมประกาศ
กิตติกรรมประกาศกิตติกรรมประกาศ
กิตติกรรมประกาศ
 
พื้นฐานกรดเบส
พื้นฐานกรดเบสพื้นฐานกรดเบส
พื้นฐานกรดเบส
 
5 1
5 15 1
5 1
 
ตัวอย่างแผนธุรกิจบ้านใร่กาแฟ
ตัวอย่างแผนธุรกิจบ้านใร่กาแฟตัวอย่างแผนธุรกิจบ้านใร่กาแฟ
ตัวอย่างแผนธุรกิจบ้านใร่กาแฟ
 
เซลล์กัลวานิก
เซลล์กัลวานิกเซลล์กัลวานิก
เซลล์กัลวานิก
 
บทที่ 9 รายได้ประชาชาติ การบริโภค การออม และการลงทุน
บทที่ 9 รายได้ประชาชาติ การบริโภค การออม และการลงทุนบทที่ 9 รายได้ประชาชาติ การบริโภค การออม และการลงทุน
บทที่ 9 รายได้ประชาชาติ การบริโภค การออม และการลงทุน
 
01 บทที่ 1-บทนำ
01 บทที่ 1-บทนำ01 บทที่ 1-บทนำ
01 บทที่ 1-บทนำ
 
แบบสอบถามความคิดเห็นสำหรับผู้เชี่ยวชาญด้านเนื้อหาเกี่ยวกับ
แบบสอบถามความคิดเห็นสำหรับผู้เชี่ยวชาญด้านเนื้อหาเกี่ยวกับแบบสอบถามความคิดเห็นสำหรับผู้เชี่ยวชาญด้านเนื้อหาเกี่ยวกับ
แบบสอบถามความคิดเห็นสำหรับผู้เชี่ยวชาญด้านเนื้อหาเกี่ยวกับ
 
การวิเคราะห์อัลกอริทึม(algorithm analysis)
การวิเคราะห์อัลกอริทึม(algorithm analysis)การวิเคราะห์อัลกอริทึม(algorithm analysis)
การวิเคราะห์อัลกอริทึม(algorithm analysis)
 
ข้อสอบความคิดสร้างสรรค์
ข้อสอบความคิดสร้างสรรค์ข้อสอบความคิดสร้างสรรค์
ข้อสอบความคิดสร้างสรรค์
 
การเคลื่อนที่ในหนึ่งมิติและสองมิติ(เสร็จ)
การเคลื่อนที่ในหนึ่งมิติและสองมิติ(เสร็จ)การเคลื่อนที่ในหนึ่งมิติและสองมิติ(เสร็จ)
การเคลื่อนที่ในหนึ่งมิติและสองมิติ(เสร็จ)
 
การเคลื่อนที่แบบฮาร์มอนิกอย่างง่าย
การเคลื่อนที่แบบฮาร์มอนิกอย่างง่ายการเคลื่อนที่แบบฮาร์มอนิกอย่างง่าย
การเคลื่อนที่แบบฮาร์มอนิกอย่างง่าย
 
การเขียนเอกสารประกอบการสอน
การเขียนเอกสารประกอบการสอนการเขียนเอกสารประกอบการสอน
การเขียนเอกสารประกอบการสอน
 
ออกแบบและเทคโนโลยี ม.5
ออกแบบและเทคโนโลยี ม.5ออกแบบและเทคโนโลยี ม.5
ออกแบบและเทคโนโลยี ม.5
 
ตัวอย่างบทสรุปผู้บริหารโครงการบ่มเพาะธุรกิจ
ตัวอย่างบทสรุปผู้บริหารโครงการบ่มเพาะธุรกิจตัวอย่างบทสรุปผู้บริหารโครงการบ่มเพาะธุรกิจ
ตัวอย่างบทสรุปผู้บริหารโครงการบ่มเพาะธุรกิจ
 
การเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัย
การเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัยการเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัย
การเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัย
 

More from Ch Khankluay

แผนการจัดการเรียนรู้ที่ 3
แผนการจัดการเรียนรู้ที่ 3แผนการจัดการเรียนรู้ที่ 3
แผนการจัดการเรียนรู้ที่ 3Ch Khankluay
 
แผนการจัดการเรียนรู้ที่ 2
แผนการจัดการเรียนรู้ที่ 2แผนการจัดการเรียนรู้ที่ 2
แผนการจัดการเรียนรู้ที่ 2Ch Khankluay
 
การบ้านแผนที่1
การบ้านแผนที่1การบ้านแผนที่1
การบ้านแผนที่1Ch Khankluay
 
แบบฝึกหัด
แบบฝึกหัดแบบฝึกหัด
แบบฝึกหัดCh Khankluay
 
แผนที่1
แผนที่1แผนที่1
แผนที่1Ch Khankluay
 
โปรแกรม After effect
โปรแกรม After effectโปรแกรม After effect
โปรแกรม After effectCh Khankluay
 
แผนพัฒนาการศึกษา 11
แผนพัฒนาการศึกษา 11แผนพัฒนาการศึกษา 11
แผนพัฒนาการศึกษา 11Ch Khankluay
 
พ.ร.บ.ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ.2550
พ.ร.บ.ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ.2550พ.ร.บ.ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ.2550
พ.ร.บ.ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ.2550Ch Khankluay
 
อาชญากรรม
อาชญากรรมอาชญากรรม
อาชญากรรมCh Khankluay
 
กฎหมายคอมพิวเตอร์
กฎหมายคอมพิวเตอร์กฎหมายคอมพิวเตอร์
กฎหมายคอมพิวเตอร์Ch Khankluay
 
โลกไร้อาชญากรรม
โลกไร้อาชญากรรมโลกไร้อาชญากรรม
โลกไร้อาชญากรรมCh Khankluay
 
จังหวัดยะลา
จังหวัดยะลาจังหวัดยะลา
จังหวัดยะลาCh Khankluay
 
พายุสุริยะ
พายุสุริยะพายุสุริยะ
พายุสุริยะCh Khankluay
 
การฝึกวิ่ง
การฝึกวิ่งการฝึกวิ่ง
การฝึกวิ่งCh Khankluay
 
พายุงวงช้าง
พายุงวงช้างพายุงวงช้าง
พายุงวงช้างCh Khankluay
 

More from Ch Khankluay (15)

แผนการจัดการเรียนรู้ที่ 3
แผนการจัดการเรียนรู้ที่ 3แผนการจัดการเรียนรู้ที่ 3
แผนการจัดการเรียนรู้ที่ 3
 
แผนการจัดการเรียนรู้ที่ 2
แผนการจัดการเรียนรู้ที่ 2แผนการจัดการเรียนรู้ที่ 2
แผนการจัดการเรียนรู้ที่ 2
 
การบ้านแผนที่1
การบ้านแผนที่1การบ้านแผนที่1
การบ้านแผนที่1
 
แบบฝึกหัด
แบบฝึกหัดแบบฝึกหัด
แบบฝึกหัด
 
แผนที่1
แผนที่1แผนที่1
แผนที่1
 
โปรแกรม After effect
โปรแกรม After effectโปรแกรม After effect
โปรแกรม After effect
 
แผนพัฒนาการศึกษา 11
แผนพัฒนาการศึกษา 11แผนพัฒนาการศึกษา 11
แผนพัฒนาการศึกษา 11
 
พ.ร.บ.ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ.2550
พ.ร.บ.ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ.2550พ.ร.บ.ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ.2550
พ.ร.บ.ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ.2550
 
อาชญากรรม
อาชญากรรมอาชญากรรม
อาชญากรรม
 
กฎหมายคอมพิวเตอร์
กฎหมายคอมพิวเตอร์กฎหมายคอมพิวเตอร์
กฎหมายคอมพิวเตอร์
 
โลกไร้อาชญากรรม
โลกไร้อาชญากรรมโลกไร้อาชญากรรม
โลกไร้อาชญากรรม
 
จังหวัดยะลา
จังหวัดยะลาจังหวัดยะลา
จังหวัดยะลา
 
พายุสุริยะ
พายุสุริยะพายุสุริยะ
พายุสุริยะ
 
การฝึกวิ่ง
การฝึกวิ่งการฝึกวิ่ง
การฝึกวิ่ง
 
พายุงวงช้าง
พายุงวงช้างพายุงวงช้าง
พายุงวงช้าง
 

นอมัลไลเซชั่น ( Normalization )1nf-3nf

  • 1. First Normal Form (1NF) เงื่อนไข : ไม่มีคอลัมน์ใดในตารางที่มีค่ามากกว่า 1 ค่า คือ ค่าในแต่ละคอลัมน์ต้องเป็น Atomic หรือ ไม่ อยู่ในรูปของ Repeating Group หมายความว่า ข้อมูลที่เก็บในแตละคอลัมน์ต้องมีลักษณะเป็นค่าเดียว(Single valued) ไม่สามารถแบ่งย่อยได้อีก วิธีการที่จะทาให้เป็น 1NF คือ 1. แยกคอลัมน์ที่มีค่ามากกว่า 1 ค่าออกเป็นแถวใหม่ 2. เพิ่มข้อมูลที่เหมาะสมเข้าไปในคอลัมน์ที่ว่างอยู่ของแถวที่เกิดขึน้ใหม่ ตัวอย่างที่ 1 วิธีการแยกคอลัมน์ที่มีค่ามากกว่า 1 ค่าออกเป็นแถวใหม่ ตารางที่ 1.1 แสดงข้อมูลนักศึกษา รหัสนักศึกษา ชื่อ ที่อยู่ ชมรม งานอดิเรก 52001 นา้หวาน ใจเย็น กรุงเทพ ดนตรีไทย พระพุทธศาสนา เล่นระนาด อ่านหนังสือ 52002 เหมยลี่ นาเมือง ชลบุรี การแสดงละคร ร้องเพลง 52003 ประยุต วัฒนา นครปฐม ดนตรีสากล อาสาสมัคร เล่นอินเตอร์เนต ฟังเพลง คอลัมน์ชมรมและงานอดิเรกมีค่ามากกว่า 1 ค่า แสดงว่าไม่เป็น Atomicหรืออยู่ในรูปของ Repeating Group จึงไม่เป็น 1NF ตารางที่ 1.2 ข้อมูลนักศึกษาที่ผ่านการ ทา Normalization โดยวิธีการแยกคอลัมน์ที่มีค่ามากกว่า 1 ค่า ออกเป็นแถวใหม่ รหัสนักศึกษา ชื่อ ที่อยู่ ชมรม งานอดิเรก 52001 นา้หวาน ใจเย็น กรุงเทพ ดนตรีไทย เล่นระนาด 52001 นา้หวาน ใจเย็น กรุงเทพ พระพุทธศาสนา อ่านหนังสือ
  • 2. 52002 เหมยลี่ นาเมือง ชลบุรี การแสดงละคร ร้องเพลง 52003 ประยุต วัฒนา นครปฐม ดนตรีสากล เล่นอินเตอร์เนต 52003 ประยุต วัฒนา นครปฐม อาสาสมัคร ฟังเพลง ตัวอย่างที่ 2 วิธีการเพิ่มข้อมูลที่เหมาะสมเข้าไปในคอลัมน์ที่ว่างอยู่ของแถวที่เกิดขนึ้ใหม่ ตารางที่ 2.1 การเก็บข้อมูลหนังสือที่ยังไม่ผ่านการทา Normalization ISBN ชื่อหนังสือ ชื่อผู้แต่ง 123001 ระบบสารสนเทศ ฟ้าใส ใจงาม นกน้อย อารี 123002 การจดการเนือ้หา นารี ศิริพร ปอยฝ้าย มาลัยพร เพชรทาย วงศ์คาเหลา 123003 ออกแบบสารสนเทศ พชร นอนดี ตารางที่ 2.2 ข้อมูลหนังสือที่ผ่านการทา Normalization ISBN ชื่อหนังสือ ชื่อผู้แต่ง1 ชื่อผู้แต่ง 2 ชื่อผู้แต่ง 3 12001 ระบบสารสนเทศ ฟ้าใส ใจงาม นกน้อย อารี 12002 การจดการเนือ้หา นารี ศิริพร ปอยฝ้าย มาลัย เพชร คาเหลา 12003 ออกแบบสารสนเทศ พชร นอนดี
  • 3. Second Normal Form (2NF) คุณสมบัติของ 2NF 1. ต้องมีคุณสมบัติของ 1NF 2. ทุก Nonprime Attribute จะต้องขึ้นกับ Prime (Primary Key) ทุกตัว ฟังก์ชันการขึ้นต่อกัน (Functional Dependency) เป็นสิ่งที่ใช้แสดงความสัมพันธ์ระหวา่งแอตทริบิวต์ ในรูปแบบฟังก์ชัน สมมุติวา่ X และ Y เป็นแอตทริบิวต์ในตารางหนึ่ง ถ้า Y ขึ้นอยูกั่บ X จะสามารถเขียนฟังก์ชันการขึ้นตอ่กันได้ดังนี้ X  Y หมายความวา่ ทุกๆค่าของ X เราเลือกขึ้นมา จะสามารถหาค่าของ Y มา 1 ค่าที่สอดคล้องกับค่าของ X ได้เสมอ เช่น ตารางข้อมูลลูกค้า รหัสลูกค้า ชื่อ นามสกุล ที่อยู่ เบอร์โทร 001 ศิริพร ไชยเชื้อ อุบล 02-221-888 002 อารียา เอฮาร์เก็ต นครปฐม 02-555-665 003 วีรภาพ สุภาพไพบูล กรุงเทพ 02-333-555 004 พัชราพา ไชยเชื้อ อุบล 02-221-888 ถ้าถามวา่ลูกค้าคนใดที่มี รหัส 001 เราจะสามารถรู้วา่ คือ ศิริพร เพราะชื่อลูกค้าขึ้นอยูกั่บรหัสลูกค้าซึ่งเป็นคีย์หลัก เราสามารถเขียนฟังค์ชั่นการขึ้นตอ่กันได้วา่ รหัสลูกค้า (X)  ชื่อ (Y) เรามาลองพิจารณาตาราง ข้อมูลการสั่งซื้อสินค้า วา่มีคุณสมบัติเป็น 2NF หรือไม่? รหัสลูกค้า ชื่อลูกค้า ระดับ ประเภท รหัสสินค้า ชื่อสินค้า จานวนสินค้า 001 ประจักษ์ ชั้นดี A N111 ทัพพี 10 001 ประจักษ์ ชั้นดี A N222 กระทะ 15 001 ประจักษ์ ชั้นดี A N333 ตะหลิว 15 002 วนิดา ปานกลาง B N111 ทัพพี 10
  • 4. 003 พิศมัย พอใช้ C N222 กระทะ 20 1. มีคุณสมบัตเป็น 1NF หรือไม่ ตอบ ผา่นคุณสมบัติ 1NF จากข้อมูลในตารางเราจะเห็นวา่ ไมมี่คอลัมน์ใดที่มีค่ามากกวา่ 1 ค่า แสดงวา่ เป็น 1NFแล้ว 2. ทุก Nonprime ขึ้นกับ Prime ทุกตัวหรือไม่? ตอบ ไม่ จากตารางมี Primary Key อยูส่องตัวคือ รหัสลูกค้า และ รหัสสินค้า ดังนั้นแอตทิบิวที่เหลือทั้งหมดคือ nonprime - เราจะเห็นวา่ ชื่อลูกค้า, ระดับ, ประเภท ขึ้นกับ รหัสลูกค้า เพียงอยา่งเดียวไมข่ึ้นกับ รหัสสินค้า - ชื่อสินค้า ขึ้นกับ รหัสสินค้า เพียงตัวเดียว ไมข่ึ้นกับ รหัสลูกค้า สรุปฟังก์ชั่นการขึ้นต่อกันได้ดังนี้ รหัสลูกค้า  ชื่อลูกค้า, ระดับ, ประเภท รหัสสินค้า  ชื่อสินค้า ดังนั้นเราจึงต้องแตกตารางออกมาเป็น 2 ตาราง ตามความสัมพันธ์ของฟังก์ชั่นการขึ้นตอ่กัน ดังนี้ ตารางที่ 1 ข้อมูลลูกค้า รหัสลูกค้า ชื่อลูกค้า ระดับ ประเภท 001 ประจักษ์ ชั้นดี A 002 วนิดา ปานกลาง B 003 พิศมัย พอใช้ C
  • 5. ตารางที่ 2 ข้อมูลสินค้า รหัสสินค้า ชื่อสินค้า N111 ทัพพี N222 กระทะ N333 ตะหลิว ตารางที่ 3 ข้อมูลใบสั่งซื้อ รหัสลูกค้า รหัสสินค้า จานวนสินค้า 001 N111 10 001 N222 15 001 N333 15 002 N111 10 003 N222 20 เมื่อผา่น 2NF แล้วแต่ยังมีปัญหาในการเพิ่มข้อมูลอยู่จึงต้องทาการ นอมัลไลเซชั่นระดับ 3 (3NF)
  • 6. Third Normal Form (3NF) คุณสมบัติของ 3NF 1. ต้องมีคุณสมบัติของ 2NF 2. Nonprime ต้องไม่ขึ้นกับ Nonprime พิจารณา ตารางข้อมูลของลูกค้า รหัสลูกค้า ชื่อลูกค้า ระดับ ประเภท 001 ประจักษ์ ชั้นดี A 002 วนิดา ปานกลาง B 003 พิศมัย พอใช้ C 1. ต้องมีคุณสมบัติของ 2NF - จากตางรางมีคุณสมบัติเป็น 2NF แล้ว 2. Nonprime ต้องไม่ขึ้นกับ Nonprime - เราจะสังเกตุเห็นวา่ ประเภท ขึ้นกับ ระดับ ซึ่งเป็น Nonprime เหมือนกัน ดังนั้นข้อมูลในตารางนี้ยังไมเ่ป็น 3NF เราสามารถแตกตารางให้เป็น3NF ได้ดังนี้ 1. ตารางข้อมูลลูกค้า รหัสลูกค้า ชื่อลูกค้า ระดับ 001 ประจักษ์ ชั้นดี 002 วนิดา ปานกลาง 003 พิศมัย พอใช้ 2. ตารางข้อมูลระดับลูกค้า ระดับ ประเภท ชั้นดี A ปานกลาง B พอใช้ C