ความหมายของฐานข้อมูล
ฐานข้อมูล (Database) หมายถึง กลุ่มของข้อมูลที่มีความสัมพันธ์กันนำมาเก็บรวบรวมเข้าไว้ด้วยกันอย่างมีระบบและข้อมูลที่ประกอบกันเป็นฐานข้อมูลนั้น ต้องตรงตามวัตถุประสงค์การใช้งานขององค์กรด้วยเช่นกัน เช่น ในสำนักงานก็รวบรวมข้อมูล ตั้งแต่หมายเลขโทรศัพท์ของผู้ที่มาติดต่อจนถึงการเก็บเอกสารทุกอย่างของสำนักงาน ซึ่งข้อมูลส่วนนี้จะมีส่วนที่สัมพันธ์กันและเป็นที่ต้องการนำออกมาใช้ประโยชน์ต่อไปภายหลัง ข้อมูลนั้นอาจจะเกี่ยวกับบุคคล สิ่งของสถานที่ หรือเหตุการณ์ใด ๆ ก็ได้ที่เราสนใจศึกษา หรืออาจได้มาจากการสังเกต การนับหรือการวัดก็เป็นได้ รวมทั้งข้อมูลที่เป็นตัวเลข ข้อความ และรูปภาพต่าง ๆ ก็สามารถนำมาจัดเก็บเป็นฐานข้อมูลได้ และที่สำคัญข้อมูลทุกอย่างต้องมีความสัมพันธ์กัน เพราะเราต้องการนำมาใช้ประโยชน์ต่อไปในอนาคต
ฐานข้อมูลเชิงสัมพันธ์ (Relational Database)
ฐานข้อมูลเชิงสัมพันธ์ฐานข้อมูลแบบนี้แสดงการจัดเก็บข้อมูลในรูปแบบของตาราง ที่มีลักษณะเป็นสองมิติ คือ แถว (Row)และคอลัมน์ (Column)ซึ่งในการเชื่อมโยงกันระหว่างข้อมูลในตาราง 2ตาราง หรือมากกว่า จะเชื่อมโยงโดยใช้แอททริบิวต์ที่มีอยู่ในตารางที่ต้องการเชื่อมโยงข้อมูลกัน โดยที่แอททริบิวต์จะแสดงคุณสมบัติของรีเลชั่นต่าง ๆ ซึ่งรีเลชั่นต่าง ๆ ได้ผ่านกระบวนการทำรีเลชั่นให้เป็นบรรทัดฐาน (Normalized) ในระหว่าง การออกแบบเพื่อละความซ้ำซ้อน เพื่อให้การจัดการฐานข้อมูลเป็นไปอย่างมีประสิทธิภาพ
กฎที่เกี่ยวข้องกับดรรชนีในฐานข้อมูลเชิงสัมพันธ์
เนื่องจากรีเลชั่นต่างๆ ในฐานข้อมูลเชิงสัมพันธ์จะอ้างอิงความสัมพันธ์ของข้อมูล โดยใช้ดรรชนีกฎที่เกี่ยวข้องกับการใช้ดรรชนีในฐานข้อมูลเชิงสัมพันธ์ มีดังนี
1. กฎความบูรณภาพของเอนทิตี้ (The Entity Integrity Rule) แอททริบิวต์ใดที่จะเป็นดรรชนีหลักข้อมูลในแอททริบิวต์นั้นจะเป็นค่าง่าย (Null) ไม่ได้หมายความของการเป็นค่าว่างไม่ได้ (Not Null) ในที่นี้หมายถึง ข้อมูลแอททริบิวต์เป็นดรรชนีหลักจะไม่ทราบค่าแน่นอนหรือ ไม่มีค่าไม่ได้
2. กฎความบูรณภาพของการอ้างอิง (The Referentail Integrity Rule) คือ ค่าของดรรชนีหลักนอกจากจะต้องสามารถอ้างอิงให้ตรงกับค่าของดรรชนีหลักได้ จึงจะเชื่อมโยงหรืออ้างอิงข้อมูลระหว่างสองรีเลชั่นได้
การกำหนดความสัมพันธ์
ในโปรแกรมการจัดการฐานข้อมูล เช่น โปรแกรมแอกเซส สามารถเชื่อมโยงข้อมูลต่างๆ จากตารางเพื่อที่จะสามารถแสดงข้อมูลที่ได้บนรายงานข้อคำถามหรือแบบฟอร์มการเชื่อมโยงข้อมูลจากหลาย ตารางนี้เรียกว่าความสัมพันธ์ (Relation) การสร้างความสัมพันธ์ระหว่างตารางในฐานข้อมูลโดยการกำหนดให้ตารางมีความสัมพันธ์กันนั้น ต้องมีแอททริบิวต์หรือฟิลด์ที่เหมือนกัน และให้ค่าฟิลด์ที่เหมือนกันเป็นตัวเชื่อมความสัมพันธ์ ฟิลด์ที่เหมือนกันของตารางเรียกว่า ดรรชนีนอก (Foreing Key) เช่น ตารางของนักศึกษาและโปรแกรมวิชาจะมีรหัสของโปรแกรมวิชาที่เหมือนกัน ในเวลาที่นำโปรแกรมจัดการฐานข้อมูลมาใช้จะต้องมีการสร้างแบบฟอร์มหรือรายงานเรียบร้อยแล้ว จึงกำหนดความสัมพันธ์ระหว่างตาราง หรือกำหนดความสัมพันธ์ตั้งแต่สร้างความสัมพันธ์เสร็จ กล่าวคือจะมีความบูรณภาพความสัมพันธ์เป็นตารางที่เกี่ยวข้อง (Related Table)
ข้อดีของฐานข้อมูลเชิงสัมพันธ์
ฐานข้อมูลเชิงสัมพันธ์เป็นฐานข้อมูลที่มีรูปแบบง่ายสำหรับผู้ใช้ทั่วไป โดยเฉพาะผู้ใช้ซึ่งไม่ใช่นักวิเคราะห์และออกแบบโปรแกรม โปรแกรมเมอร์หรือผู้จัดการฐานข้อมูล เป็นต้น ข้อดีที่ผู้ใช้ทั่วไปรู้สึกว่าฐานข้อมูลชนิดนี้เข้าใจง่าย มีดังนี้
1. ฐานข้อมูลเชิงสัมพันธ์เป็นกลุ่มของรีเลชั่นหรือตารางที่ข้อมูลถูกจัดเก็บเป็นแถวและคอลัมน์ ซึ่งทำให้ผู้ใช้เห็นภาพของข้อมูลได้ง่าย
2.ผู้ใช้ไม่จำเป็นต้องรู้ว่าข้อมูลถูกจัดเก็บอย่างไร รวมถึงวิธีการเข้าถึงข้อมูล (Access Approach)
3. ภาษาที่ใช้ในการเรียกดูข้อมูล เป็นลักษณะคล้ายภาษาอังกฤษและไม่จำเป็นต้องเขียนเป็นลำดับขั้นตอน
4. การเรียกใช้หรือเชื่อมโยงข้อมูลทำได้ง่ายโดยใช้โอเปอร์เรเตอร์ ทางคณิตศาสตร์ เช่น SELECT ไม่จำเป็นต้องมีตัวชี้ (Pionter) ซึ่งยุ่งยาก
ประเภทของคีย์ ( KEY)
คีย์แบ่งออกำเป็น 2 ประเภท คือ
1. คีย์หลัก ( Primary Key เป็นรีเลชั่นที่ถูกกำหนดขึ้นเพื่อเก็บข้อมูลเพื่อนำข้อมูลไปใช้ เมื่อมีการสร้างรีเลชั่นในภาษาสำหรับนิยามข้อมูล ( DDL ) เช่น SQL คำสั่ง CREATE TABLE เป็นการสร้างรีเลชั่นหลัก หลังจากนั้นก็จะทำการเก็บข้อมูลเพื่อการเรียกใช้ข้อมูลในภายหลัง รีเลชั่นหลักจะเป็นตารางที่มีการเก็บข้อมูลจริงไว
2. คีย์นอก ( Foreign Key )เป็นรีเลชั่นที่ถูกสร้างขึ้นตามความต้องการใช้ข้อมูลของผู้ใช้แต่ละคน เพราะผู้ใช้แต่ละคนในฐานข้อมูลอาจต้องการใช้ข้อมูลในลักษณะที่แตกต่างกัน จึงทำการกำหนดวิวของตนเองขึ้นจากรีเลชั่นหลักขึ้นมา ต่างหากเพื่อความสะดวกในการเรียกใช้ข้อมูล และช่วยในการรักษาความปลอดภัยของฐานข้อมูลทำได้ง่ายขึ้น
รูปแบบบรรทัดฐาน
การออกแบบฐานข้อมูลในบทนี้คุณจะได้เรียนรู้วิธีการทำตารางข้อมูลให้อยู่ในรูปแบบบรรทัดฐาน (Normalization) ซึ่งเป็นวิธีการที่สำคัญมากถือเป็นหัวใจของระบบฐานข้อมูลเชิงสัมพันธ์ เพราะหากคุณสามารถทำได้ถูกต้อง จะส่งผลให้ระบบฐานข้อมูลของคุณถูกต้องตามหลักการและได้รับประโยชน์สูงสุดเท่าที่จะมีขึ้นได้
รูปแบบบรรทัดฐาน
การออกแบบฐานข้อมูลในบทนี้คุณจะได้เรียนรู้วิธีการทำตารางข้อมูลให้อยู่ในรูปแบบบรรทัดฐาน (Normalization) ซึ่งเป็นวิธีการที่สำคัญมากถือเป็นหัวใจของระบบฐานข้อมูลเชิงสัมพันธ์ เพราะหากคุณสามารถทำได้ถูกต้อง จะส่งผลให้ระบบฐานข้อมูลของคุณถูกต้องตามหลักการและได้รับประโยชน์สูงสุดเท่าที่จะมีขึ้นได้
ความหมายของรูปแบบบรรทัดฐาน
การทำตารางข้อมูลให้อยู่ ในรูปแบบบรรทัดฐาน (Normalization) หมายถึง การออกแบบตาราง (Relation) ให้เป็น รูปแบบบรรทัดฐาน คือมีความเป็นปรกติไม่ ก่อให้เกิดปัญหาข้อมูลขัดแย้ง (Inconsistency) ในที่เก็บต่างๆ ปัญหาการเพิ่มปรับปรุงและลบข้อมูล (Insert,Updateand Delete Anomalies) ตลอดจนช่วยลดเนื้อที่ในการ จัดเก็บข้อมูลให้อยู่ในระดับที่ยอมรับได้อีกด้วยแนวคิดการทำตารางให้อยู่ในรูปแบบบรรทัดฐานนี้ อี .เอฟ.คอดด์ เป็นผู้คิดขึ้นมาเป็นคนแรกเมื่อประมาณปี 1917 กล่าวคือ ได้คิดค้นรูปแบบบรรทัดฐานขั้นที่ 1,2และ3แต่ต่อมาพบว่ารูปแบบบรรทัดฐาน ขั้นที่ 3 มีข้อจำกัดบางอย่างจึงร่วมกันคิดค้นรูปแบบบรรทัดฐานขั้นที่ 3 ใหม่ขึ้นมา ในราว ปี ค.ศ. 1974 กับบอยซ์ จึงนิยมเรียกว่า รูปแบบบรรทัดฐาน บอยซ์/คอดด์ (Boyce/codd Normal Form) สำหรับรูปแบบบรรทัดฐานขั้นที่ 4 และนั้นคิดค้นโดย โรแนลด์ ฟาจิน (Ronald Fagin) ในปี ค.ศ.1977 และ 1979
รูปแบบบรรทัดฐานมีต่าง ๆ ระดับดังนี้
รูปแบบบรรทัดฐานมีต่าง ๆ ระดับดังนี้
1. รูปแบบบรรทัดฐานขั้นที่ 1 (First Normal Form: 1NF)
2. รูปแบบบรรทัดฐานขึ้นที่ 2 (Second Normal Form: 2NF)
2. รูปแบบบรรทัดฐานขึ้นที่ 2 (Second Normal Form: 2NF)
3 รูปแบบบรรทัดฐานขึ้นที่ 3(Third Normal Form: 2NF)
4. รูปแบบบรรทัดฐานขึ้นที่ 4 ใหม่ (Boyce/Codd Normal Form: 2NF)
5. รูปแบบบรรทัดฐานขึ้นที่ 5 Forth Normal Form: 2NF)
6. รูปแบบบรรทัดฐานขึ้นที่ 6 (FifthNormal Form: 2NF)