รูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 (First Normal Form : 1NF) เป็นขั้นตอนแรกสุดในการจัดทำ รีเลชันให้เป็นรูปแบบที่เป็นบรรทัดฐาน
รีเลชันใด ๆ จะมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 ก็ต่อเมื่อทุกแอททริบิวต์ในแต่ละ ทูเพิลมีค่าของข้อมูลเพียงค่าเดียว
เพื่อแสดงให้เห็นถึงการจัดทำรีเลชันให้เป็นรูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 ในที่นี้ขอนำตัวอย่าง รีเลชันซึ่งไม่อยู่ในรูปแบบที่เป็นบรรทัดฐานมาประกอบดังนี้
รีเลชันการลงทะเบียนประกอบด้วย แอททริบิวต์รหัสนักศึกษา ชื่อนักศึกษา รหัสอาจารย์ ชื่ออาจารย์ที่ปรึกษา รหัสชุดวิชา ชื่อชุดวิชาที่ลงทะเบียน หมู่เรียน และหน่วยกิต
รหัสนักศึกษา |
ชื่อนักศึกษา |
รหัสอาจารย์ |
ชื่ออาจารย์ที่ปรึกษา |
รหัสชุดวิชา |
ชื่อชุดวิชาที่ลงทะเบียน |
หมู่เรียน |
หน่วยกิต |
41010703 |
สมชาย พลจันทร์ |
Q1059 |
สัมพันธ์ เย็นสำราญ |
729101 |
เศรษฐศาสตร์เบื้องต้น |
700 |
2 |
729111 |
คณิตศาสตร์และสถิติ |
711 |
3 |
||||
999211 |
คอมพิวเตอร์เบื้องต้น |
713 |
3 |
||||
41010943 |
สุทิศา พินิจไพฑูรย์ |
Q1011 |
ศิริภัทรา เหมือนมาลัย |
729111 |
คณิตศาสตร์และสถิติ |
712 |
3 |
999211 |
คอมพิวเตอร์เบื้องต้น |
711 |
3 |
||||
729104 |
การจัดการการเงิน |
700 |
2 |
||||
41012147 |
ณัฐพร ประคองเก็บ |
Q1061 |
เมธี ปิยะคุณ |
729111 |
คณิตศาสตร์และสถิติ |
711 |
3 |
999211 |
คอมพิวเตอร์เบื้องต้น |
713 |
3 |
||||
41012451 |
นพดล ทับทิมทอง |
Q1035 |
ศิริชัย ศรีพรหม |
729111 |
คณิตศาสตร์และสถิติ |
712 |
3 |
999211 |
คอมพิวเตอร์เบื้องต้น |
711 |
3 |
||||
41013327 |
มัทนา พินิจไพฑูรย์ |
Q1059 |
สัมพันธ์ เย็นสำราญ |
729103 |
การจัดการการตลาด |
700 |
2 |
41013780 |
สมชาย พลจันทร์ |
Q1011 |
ศิริภัทรา เหมือนมาลัย |
999211 |
คอมพิวเตอร์เบื้องต้น |
712 |
3 |
จากรีเลชันข้างต้นจะพบว่า นักศึกษาบางคนอาจมีชื่อ-สกุลเหมือนกัน หรือมีอาจารย์ที่ปรึกษาคนเดียวกัน หรือลงทะเบียนเรียนชุดวิชาเดียวกันและหมู่เรียนเดียวกันก็ได้ ซึ่งนักศึกษาแต่ละคนสามารถลงทะเบียนเรียนได้มากกว่าหนึ่งชุดวิชา โดยบางชุดวิชาอาจเปิดสอนมากกว่าหนึ่งหมู่เรียนก็ได้
เนื่องจากรีเลชันใดๆ จะมีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 ก็ต่อเมื่อค่าของ แอททริบิวต์ต่าง ๆ ในแต่ละทูเพิลมีค่าของข้อมูลเพียงค่าเดียว ดังนั้น ในการจัดทำรีเลชันนี้ให้มีคุณสมบัติอยู่ในรูปแบบที่เป็นบรรทัดฐานขั้นที่ 1 จึงทำการปรับรีเลชันข้างต้นโดยการใส่รหัสนักศึกษา ชื่อนักศึกษา รหัสอาจารย์ และชื่ออาจารย์ที่ปรึกษาลงไปในทุกรหัสชุดวิชาที่นักศึกษาลงทะเบียนเรียน ดังนี้
รหัสนักศึกษา |
ชื่อนักศึกษา |
รหัสอาจารย์ |
ชื่ออาจารย์ที่ปรึกษา |
รหัสชุดวิชา |
ชื่อชุดวิชาที่ลงทะเบียน |
หมู่เรียน |
หน่วยกิต |
41010703 |
สมชาย พลจันทร์ |
Q1059 |
สัมพันธ์ เย็นสำราญ |
729101 |
เศรษฐศาสตร์เบื้องต้น |
700 |
2 |
41010703 |
สมชาย พลจันทร์ |
Q1059 |
สัมพันธ์ เย็นสำราญ |
729111 |
คณิตศาสตร์และสถิติ |
711 |
3 |
41010703 |
สมชาย พลจันทร์ |
Q1059 |
สัมพันธ์ เย็นสำราญ |
999211 |
คอมพิวเตอร์เบื้องต้น |
713 |
3 |
41010943 |
สุทิศา พินิจไพฑูรย์ |
Q1011 |
ศิริภัทรา เหมือนมาลัย |
729111 |
คณิตศาสตร์และสถิติ |
712 |
3 |
41010943 |
สุทิศา พินิจไพฑูรย์ |
Q1011 |
ศิริภัทรา เหมือนมาลัย |
999211 |
คอมพิวเตอร์เบื้องต้น |
711 |
3 |
41010943 |
สุทิศา พินิจไพฑูรย์ |
Q1011 |
ศิริภัทรา เหมือนมาลัย |
729104 |
การจัดการการเงิน |
700 |
2 |
41012147 |
ณัฐพร ประคองเก็บ |
Q1061 |
เมธี ปิยะคุณ |
729111 |
คณิตศาสตร์และสถิติ |
711 |
3 |
41012147 |
ณัฐพร ประคองเก็บ |
Q1061 |
เมธี ปิยะคุณ |
999211 |
คอมพิวเตอร์เบื้องต้น |
713 |
3 |
41012451 |
นพดล ทับทิมทอง |
Q1035 |
ศิริชัย ศรีพรหม |
729111 |
คณิตศาสตร์และสถิติ |
712 |
3 |
41012451 |
นพดล ทับทิมทอง |
Q1035 |
ศิริชัย ศรีพรหม |
999211 |
คอมพิวเตอร์เบื้องต้น |
711 |
3 |
41013327 |
มัทนา พินิจไพฑูรย์ |
Q1059 |
สัมพันธ์ เย็นสำราญ |
729103 |
การจัดการการตลาด |
700 |
2 |
41013780 |
สมชาย พลจันทร์ |
Q1011 |
ศิริภัทรา เหมือนมาลัย |
999211 |
คอมพิวเตอร์เบื้องต้น |
712 |
3 |
ผลจากการใส่รหัสนักศึกษาและชื่อนักศึกษาลงไปในทุกรหัสชุดวิชาที่นักศึกษาลงทะเบียนเรียน ข้างต้น ทำให้คีย์หลักของรีเลชันการลงทะเบียนประกอบด้วย แอททริบิวต์รหัสนักศึกษาและรหัสชุดวิชา
หากทว่าแม้จะกำหนดให้แอททริบิวต์รหัสนักศึกษาและรหัสชุดวิชาเป็นคีย์หลักของรีเลชันนี้แล้ว แต่ปัญหาความซ้ำซ้อนของข้อมูลในรีเลชันก็ยังปรากฏอยู่ดังนี้คือ
1. การปรับปรุงข้อมูล (update anomaly) ใด ๆ จะต้องทำซ้ำหลายแห่ง ทำให้สิ้นเปลืองเวลา รวมทั้งอาจทำการแก้ไขข้อมูลได้ไม่ครบถ้วนและถูกต้องทุกรายการก็ได้ ตัวอย่างเช่น การแก้ไขชื่อนักศึกษาจาก สมชาย พลจันทร์ เป็น ศุภลักษณ์ พลจันทร์
2. การเพิ่มเติมข้อมูล (insert anomaly) ในรีเลชันข้างต้นไม่สามารถทำได้ ตัวอย่างเช่น หากต้องการเพิ่มข้อมูลนักศึกษาใหม่ 41014325 สุชาดา กรุณา จะไม่สามารถเพิ่มเติมข้อมูลเข้ามาในรีเลชันนี้ได้ เนื่องจากยังไม่ปรากฏข้อมูลการลงทะเบียนของนักศึกษามาก่อน ค่าของรหัสชุดวิชาจึงเป็นค่าว่าง ทำให้ไม่อาจเพิ่มเติมข้อมูลลงในรีเลชันได้ เพราะแอททริบิวต์ที่เป็นส่วนของคีย์หลักจะมีค่าว่างไม่ได้
3. การลบข้อมูล (delete anomaly) ออกจากรีเลชันอาจทำให้ข้อมูลบางส่วนสูญหายไปจากฐาน ข้อมูล ตัวอย่างเช่น หากผู้ที่มีรหัสนักศึกษา 41013327 มัทนา พินิจไพฑูรย์ ลาออก ข้อมูลที่เกี่ยวข้องกับ นักศึกษาจะถูกลบไปทั้งทูเพิล ดังนั้น ข้อมูลเกี่ยวกับชุดวิชา 729103 การจัดการการตลาด ซึ่งมีเพียงแห่งเดียวในฐานข้อมูลก็จะสูญหายไปด้วย ทั้งนี้ ปัญหาลักษณะนี้ของรีเลชันเนื่องมาจากการมีแอททริบิวต์จำนวนมากเกินไป และแอททริบิวต์ที่ยังไม่จำเป็นต้องใช้งานมาผูกติดอยู่กับแอททริบิวต์ที่ต้องการใช้งาน
ดังนั้น เพื่อแก้ไขปัญหาความซ้ำซ้อนของข้อมูลในรีเลชันดังกล่าว ไม่ว่าจะเป็นการปรับปรุง การเพิ่ม หรือการลบข้อมูล จึงจำเป็นต้องดำเนินการจัดทำรีเลชันให้อยู่ในรูปแบบที่เป็นบรรทัดฐาน ขั้นต่อไป