วันพุธที่ 18 สิงหาคม พ.ศ. 2553

การออกแบบฐานข้อมูล

การออกแบบฐานข้อมูล

การออกแบบฐานข้อมูล (Designing Databases) มีความสำคัญต่อการจัดการระบบฐานข้อมูล (DBMS) ทั้งนี้เนื่องจากข้อมูลที่อยู่ภายในฐานข้อมูลจะต้องศึกษาถึงความสัมพันธ์ของข้อมูล โครงสร้างของข้อมูลการเข้าถึงข้อมูลและกระบวนการที่โปรแกรมประยุกต์จะเรียกใช้ฐานข้อมูล ดังนั้น เราจึงสามารถแบ่งวิธีการสร้างฐานข้อมูลได้ 3 ประเภท

1. รูปแบบข้อมูลแบบลำดับขั้น หรือโครงสร้างแบบลำดับขั้น (Hierarchical data model) วิธีการสร้างฐาน ข้อมูลแบบลำดับขั้นถูกพัฒนาโดยบริษัท ไอบีเอ็ม จำกัด ในปี 1980 ได้รับความนิยมมาก ในการพัฒนาฐานข้อมูลบนเครื่องคอมพิวเตอร์ขนาดใหญ่และขนาดกลาง โดยที่โครงสร้างข้อมูลจะสร้างรูปแบบเหมือนต้นไม้ โดยความสัมพันธ์เป็นแบบหนึ่งต่อหลาย (One- to -Many)
2. รูปแบบข้อมูลแบบเครือข่าย (Network data Model) ฐานข้อมูลแบบเครือข่ายมีความคล้ายคลึงกับฐาน ข้อมูลแบบลำดับชั้น ต่างกันที่โครงสร้างแบบเครือข่าย อาจจะมีการติดต่อหลายต่อหนึ่ง (Many-to-one) หรือ หลายต่อหลาย (Many-to-many) กล่าวคือลูก (Child) อาจมีพ่อแม่ (Parent) มากกว่าหนึ่ง สำหรับตัวอย่างฐานข้อมูลแบบเครือข่ายให้ลองพิจารณาการจัดการข้อมูลของห้องสมุด ซึ่งรายการจะประกอบด้วย ชื่อเรื่อง ผู้แต่ง สำนักพิมพ์ ที่อยู่ ประเภท
3. รูปแบบความสัมพันธ์ข้อมูล (Relation data model) เป็นลักษณะการออกแบบฐานข้อมูลโดยจัดข้อมูลให้อยู่ในรูปของตารางที่มีระบบคล้ายแฟ้ม โดยที่ข้อมูลแต่ละแถว (Row) ของตารางจะแทนเรคอร์ด (Record) ส่วน ข้อมูลนแนวดิ่งจะแทนคอลัมน์ (Column) ซึ่งเป็นขอบเขตของข้อมูล (Field) โดยที่ตารางแต่ละตารางที่สร้างขึ้นจะเป็นอิสระ ดังนั้นผู้ออกแบบฐานข้อมูลจะต้องมีการวางแผนถึงตารางข้อมูลที่จำเป็นต้องใช้ เช่นระบบฐานข้อมูลบริษัทแห่งหนึ่ง ประกอบด้วย ตารางประวัติพนักงาน ตารางแผนกและตารางข้อมูลโครงการ แสดงประวัติพนักงาน ตารางแผนก และตารางข้อมูลโครงการ

การออกแบบฐานข้อมูลเชิงสัมพันธ์
การออกแบบฐานข้อมูลในองค์กรขนาดเล็กเพื่อตอบสนองความต้องการของผู้ใช้งานอาจเป็นเรื่องที่ไม่ยุ่งยากนัก เนื่องจากระบบและขั้นตอนการทำงานภายในองค์กรไม่ซับซ้อน ปริมาณข้อมูลที่มีก็ไม่มาก และจำนวนผู้ใช้งานฐานข้อมูลก็มีเพียงไม่กี่คน หากทว่าในองค์กรขนาดใหญ่ ซึ่งมีระบบและขั้นตอนการทำงานที่ซับซ้อน รวมทั้งมีปริมาณข้อมูลและผู้ใช้งานจำนวนมาก การออกแบบฐานข้อมูลจะเป็นเรื่องที่มีความละเอียดซับซ้อน และต้องใช้เวลาในการดำเนินการนานพอควรทีเดียว ทั้งนี้ ฐานข้อมูลที่ได้รับการออกแบบอย่างเหมาะสมจะสามารถตอบสนองต่อความต้องการของผู้ใช้งานภายในหน่วยงานต่าง ๆ ขององค์กรได้ ซึ่งจะทำให้การดำเนินงานขององค์กรมีประสิทธิภาพดียิ่งขึ้น เป็นผลตอบแทนที่คุ้มค่าต่อการลงทุนเพื่อพัฒนาระบบฐานข้อมูลภายในองค์กรทั้งนี้ การออกแบบฐานข้อมูลที่นำซอฟต์แวร์ระบบจัดการฐานข้อมูลมาช่วยในการดำเนินการ สามารถจำแนกหลักในการดำเนินการได้ 6 ขั้นตอน คือ
1.การรวบรวมและวิเคราะห์ความต้องการในการใช้ข้อมูล
2.การเลือกระบบจัดการฐานข้อมูล
3.การออกแบบฐานข้อมูลในระดับแนวคิด
4.การนำฐานข้อมูลที่ออกแบบในระดับแนวคิดเข้าสู่ระบบจัดการฐานข้อมูล
5.การออกแบบฐานข้อมูลในระดับกายภาพ
6.การนำฐานข้อมูลไปใช้และการประเมินผล

การออกแบบฐานข้อมูลในระดับตรรกะ

การออกแบบฐานข้อมูลในระดับตรรกะ หรือในระดับแนวความคิด เป็นขั้นตอนการออกแบบความสัมพันธ์ระหว่างข้อมูลในระบบโดยใช้แบบจำลองข้อมูลเชิงสัมพันธ์ ซึ่งอธิบายโดยใช้แผนภาพแสดงความสัมพันธ์ระหว่างข้อมูล (E-R Diagram) จากแผนภาพ E-R Diagram นำมาสร้างเป็นตารางข้อมูล (Mapping E-R Diagram to Relation) และใช้ทฤษฏีการ Normalization เพื่อเป็นการรับประกันว่าข้อมูลมีความซ้ำซ้อนกันน้อยที่สุด

การออกแบบฐานข้อมูล
การออกแบบฐานข้อมูล (Designing Databases) มีความสำคัญต่อการจัดการระบบฐานข้อมูล (DBMS) ทั้งนี้เนื่องจากข้อมูลที่อยู่ภายในฐานข้อมูลจะต้องศึกษาถึงความสัมพันธ์ของข้อมูล โครงสร้างของข้อมูลการเข้าถึงข้อมูลและกระบวนการที่โปรแกรมประยุกต์จะเรียกใช้ฐานข้อมูล ดังนั้น เราจึงสามารถแบ่งวิธีการสร้างฐานข้อมูลได้ 3 ประเภท
1. รูปแบบข้อมูลแบบลำดับขั้น หรือโครงสร้างแบบลำดับขั้น (Hierarchical data model) วิธีการสร้างฐาน ข้อมูลแบบลำดับขั้นถูกพัฒนาโดยบริษัท ไอบีเอ็ม จำกัด ในปี 1980 ได้รับความนิยมมาก ในการพัฒนาฐานข้อมูลบนเครื่องคอมพิวเตอร์ขนาดใหญ่และขนาดกลาง โดยที่โครงสร้างข้อมูลจะสร้างรูปแบบเหมือนต้นไม้ โดยความสัมพันธ์เป็นแบบหนึ่งต่อหลาย (One- to -Many) ดังรูป แสดงโครงสร้างลำดับขั้นของผู้สอนทักษะผู้สอน หลักสูตรที่สอน

แสดงส่วนประกอบของระบบจัดการฐานข้อมูล (Elements of a database management systems) ข้อดีและข้อเสียของระบบการจัดการฐานข้อมูล ระบบการจัดการฐานข้อมูลจะมีทั้งข้อดีและข้อเสียในการที่องค์การจะนำระบบนี้มาใช้กับหน่วยงาของตนโดยเฉพาะหน่วยงานที่เคยใช้คอมพิวเตอร์แล้วแต่ได้จัดแฟ้มแบบดั้งเดิม (Convention File) การที่จะแปลงระบบเดิมให้เป็นระบบใหม่จะทำได้ยากและไม่สมบูรณ์ ไม่คุ้มกับการลงทุน ทั้งนี้เนื่องจากค่าใช้จ่าในการพัฒนาฐานข้อมูลจะต้องประกอบด้วย
วิธีการจัดแบบลำดับขั้นเป็นการจัดกลุ่มของข้อมูลที่มีความสัมพันธ์กันและกำหนดให้เป็นเซ็กเมนต์ (Segment) โดยมีการแยกประเภทของเซ็กเมนต์ว่าเป็นเซ็กเมนต์ราก (Root segment) หรือ เซ็กเมนต์ที่เป็นตัวพึ่ง(Dependent segment) แสดงถึงฐานข้อมูลของฝ่ายที่มีการเปิดอบรมของบริษัทหนึ่งซึ่งจัดอยู่ในรูปแบบลำดับขั้น เซ็กเมนต์ที่เป็นราก คือ ชื่อฝ่าย (Department name) โดยมีเซ็กเมนต์ที่เป็นตัวพึ่ง 2 เซ็กเมนต์คือ เซ็กเม็นผู้สอน(Instructor) และหลักสูตร (Course) สำหรับเซ็กเมนต์ผู้สอนก็จะมีตัวพึ่งอีก 1 เซ็กเมนต์ คือ เซ็กเมนต์ความชำนาญ(Skill) ส่วนเซ็กเมนต์หลักสูตรก็จะมีตัวพึ่งเป็นเซ็กเมนต์เปิดสอนโดยและเข้าเซ็กเมนต์สุดท้ายก็คือเซ็กเมนต์ผู้เรียนซึ่งเป็นตัวพึ่งของเซ็กเมนต์เปิดสอนโดย
การติดต่อของข้อมูลแบบลำดับขั้นจำเป้นจะต้องอาศัยตัวชี้ (Pointer) ซึ่งสามารถแบ่งตัวชี้ออกเป็น 2 ประเภท คือ
1. ตัวชี้เซ็กเมนต์ที่เป็นตัวพึ่ง (Child Pointer)
2. ตัวชี้เซ็กเมนต์ระดับเดียวกัน (Twin Pointer)
ข้อดีและข้อเสียของโครงสร้างแบบลำดับขั้น คือ สามารถสร้างความสัมพันธ์ให้เด่นชัดของข้อมูลแต่ละลำดับว่าข้อมูลเป็นเซ็กเมนต์ราก หรือเป็นพ่อแม่(Parent) และข้อมูลเป็นเซ็กเมนต์ตัวพึ่งหรือตัวลูก (Child) ส่วนข้อเสีย โครงสร้างแบบนี้มีความคล่องตัวน้อย เพราะต้องเริ่มอ่านจากเซ็กเมนต์ที่เป็นรากก่อน นอกจากนั้นการออกแบบฐาน ข้อมูลต้องระมัดระวังการซ้ำซ้อนของข้อมูล
2. รูปแบบข้อมูลแบบเครือข่าย (Network data Model) ฐานข้อมูลแบบเครือข่ายมีความคล้ายคลึงกับฐาน ข้อมูลแบบลำดับชั้น ต่างกันที่โครงสร้างแบบเครือข่าย อาจจะมีการติดต่อหลายต่อหนึ่ง (Many-to-one) หรือ หลายต่อหลาย (Many-to-many) กล่าวคือลูก (Child) อาจมีพ่อแม่ (Parent) มากกว่าหนึ่ง สำหรับตัวอย่างฐานข้อมูลแบบเครือข่ายใหลองพิจารณาการจัดการข้อมูลของห้องสมุด ซึ่งรายการจะประกอบด้วย ชื่อเรื่อง ผู้แต่ง สำนักพิมพ์ ที่อยู่ ประเภทหนังสือ และปีที่พิมพ์ ดังนั้นการจัดข้อมูลแบบเก่าจะทำให้ข้อมูลซ้ำซ้อนกันมาก

จากรูปจะเห็นว่าโอกาสที่ข้อมูลจะซ้ำซ้อนมีมากในระบบการจัดการแฟ้มแบบเก่า หนังสือแต่ละเล่มหรือแต่ละชื่อเรื่องต่างก็มีรายการแยกต่างหาก ดังนั้นบรรดาผู้แต่งที่แต่งหนังสือมากกว่าหนึ่งเล่มจะปรากฏมากว่าหนึ่งครั้งในไฟล์นอกจากนั้นสำนักพิมพ์แต่ละแห่งพิมพ์หนังสือหลายเล่ม ดังนั้นชื่อของสำนักพิมพ์ ที่อยู่ก็จะปรากฏซ้ำๆกันในไฟล์ข้อมูลรวม ดังนั้นผู้วางระบบฐานข้อมูลจึงแนะนำให้สร้างฐานข้อมูลลักษณะเครือข่าย
เพื่อลดความซ้ำซ้อน โดยการสร้างความสัมพันธ์ระหว่างรายการเข้าด้วยกัน จะเห็นว่าความสัมพันธ์แบบหนึ่งต่อหลายรายการ (Record) ระหว่างรายการชื่อสำนักพิมพ์และชื่อเรื่อง ซึ่งแสดงโดยมีรูปลูกศรซ้อนกัน 2 หัวเราเรียกรวมชื่อสำนักพิมพ์และชื่อเรื่องซึ่งมีความสัมพันธ์กันว่าเซตและเรียกว่าสกีมา(Schema) ดังนั้นชื่อผู้แต่งแต่ละคนจะปรากฏเพียงหนึ่งครั้งและเชื่อมโยงกับชื่อหนังสือที่เป็นผู้แต่ง ขณะที่ชื่อสำนักพิมพ์ก็เชื่อมโยงกับหนังสือที่ตนเป็นผู้พิมพ์ เมื่อต้องการเข้าถึงรายการจะสามารถเข้าถึงผ่านทางชื่อเรื่อง ชื่อผู้แต่ง หรือชื่อสำนักพิมพ์ ก็ได้ โดยอาศัยเส้นทางเชื่อมต่อระหว่าง รายการ ทำให้ข้อมูลทุกรายการสามารถติดต่อถึงกันได้อย่างถูกต้อง รายการหรือเรคอร์ดสมาชิก (Member) เช่น เรียก เรคอร์ดของผู้แต่งก่อนก็เป็นเรคอร์ดนำและหาตัวเชื่อมเพื่อไปค้นหารายชื่อหนังสือที่แต่งซึ่งเป็นเรคอร์ดสมาชิกก็จะปรากฏขึ้น
ข้อดีและข้อเสียของโครงสร้างแบบเครือข่าย คือเรคอร์ดแต่ละประเภท สามารถใช้เป็นเรคอร์ดนำได้โดยกล่าวถึงก่อน ส่วนการซ้ำซ้อนของข้อมูลจะมีน้อยมากเนื่องจากเรคอร์ดสมาชิกสามารถใช้ร่วมกันได้ เช่น รายละเอียดของหนังสือหนึ่งเล่มอาจจะแต่งจากผู้แต่งหลายคน จึงสามารถใช้ร่วมกันได้ ข้อเสีย ความสัมพันธ์ของเรคอร์ดประเภทต่างๆไม่ควรจะเกิน 3 ประเภท เช่น ชื่อเรื่อง ผู้แต่ง สำนักพิมพ์ หากมีความสัมพันธ์หลายประเภท อาจจะออกแบบเครือข่ายไม่ได้หรือยุ่งยากขึ้น เนื่องจากมีข้อจำกัดในการออกแบบ
3. รูปแบบความสัมพันธ์ข้อมูล (Relation data model) เป็นลักษณะการออกแบบฐานข้อมูลโดยจัดข้อมูลให้อยู่ในรูปของตารางที่มีระบบคล้ายแฟ้ม โดยที่ข้อมูลแต่ละแถว (Row) ของตารางจะแทนเรคอร์ด (Record) ส่วน ข้อมูลนแนวดิ่งจะแทนคอลัมน์ (Column) ซึ่งเป็นขอบเขตของข้อมูล (Field) โดยที่ตารางแต่ละตารางที่สร้างขึ้นจะเป็นอิสระ ดังนั้นผู้ออกแบบฐานข้อมูลจะต้องมีการวางแผนถึงตารางข้อมูลที่จำเป็นต้องใช้ เช่นระบบฐานข้อมูลบริษัทแห่งหนึ่ง ประกอบด้วย ตารางประวัติพนักงาน ตารางแผนกและตารางข้อมูลโครงการ แสดงประวัติพนักงาน ตารางแผนก และตารางข้อมูลโครงการ

แสดงประวัติพนักงาน
รหัส ชื่อ วันเข้าทำงาน เงินเดือน ตำแหน่ง แผนก
001 นายแดง 1/1/32 30000 ผู้จัดการ วิศวกรรม
002 นายเขียว 30/6/34 20000 หัวหน้าช่าง วิศวกรรม
003 นายดำ 16/4/36 18000 สมุห์บัญชี บัญชี
004 น.ส น้ำฝน 1/5/39 9000 จัดซื้อ บัญชี
005 น.ส ทราย 16/6/40 7000 ธุรการ ธุรการ

ตารางแผนก ตารางข้อมูลโครงการ
รหัสแผนก ชื่อแผนก
10 บัญชี
20 วิศวกรรม
30 ธุรการ
รหัสโครงการ ชื่อโครงการ วันเริ่ม วันสิ้นสุด งบประมาณ
01 ทางด่วนขั้นที่ 3 1/1/38 31/12/41 500000000
02 สร้างเขื่อนเก็บน้ำ 1/5/39 30/4/40 20000000
03 สร้างสนามฟุตบอล 30/6/39 30/10/40 10000000

ตารางแสดงประวัติพนักงาน ตารางแผนก และตารางข้อมูลโครงการา
ในกรณีที่ผู้ใช้ต้องการเรียกข้อมูลจากตารางทั้ง 3 มาใช้ก็สามารถทำได้โดยการสร้างตารางใหม่ ดังแสดงการสร้างตารางรหัสพนักงานว่าอยู่แผนกไหน ทำงานโครงการอะไรและระยะเวลาในการทำ
รหัสพนักงาน รหัสแผนก รหัสโครงการ ระยะเวลา(วัน)
001 20 03 30
004 10 03 60
002 20 02 180
ตารางแสดงการสร้างตารางรหัสพนักงาน

ข้อดีและข้อเสียของโครงสร้างแบบสัมพันธ์ คือ สามารถสร้างตารางข้นมาใหม่โดยอาศัยหลักการทางคณิตศาสตร์และค้นหาว่าข้อมูลในฐานข้อมูลมีข้อมูลร่วมกับตารางที่สร้างขึ้นมาใหม่หรือไม่ ถ้ามีก็ให้ประมวลผลโดยการอ่านเพิ่มเติมปรับปรุงหรือยกเลิกรายการ ข้อเสีย คือ การศึกษาวิธีการเขียนโปรแกรมและใช้ฐานข้อมูลจะต้องอิงหลักทฤษฏีทางคณิตสาศตร์จึงทำให้การศึกษาเพิ่มเติมของผู้ใช้ ยากแก่การเข้าใจ แต่ในปัจจุบันมีโปรแกรมการสร้างฐานข้อมูลหลายโปรแกรมที่พยายามทำให้การเรียนรู้และการใช้ง่ายขึ้น เช่น โปรแกรมการสร้างฐานข้อมูลโดยใช้ภาษา SQL(Structured Query Language) เป็นต้น

วันศุกร์ที่ 30 กรกฎาคม พ.ศ. 2553

การจัดการฐานข้อมูล

ความรู้เบื้องต้นเกี่ยวกับข้อมูล


ข้อมูล (Data) หมายถึง ข้อเท็จจริงเกี่ยวกับบุคคล สิ่งของ หรือเหตุการณ์ต่างๆ โดยอยู่ในรูปของตัวเลข (Number) เช่น จำนวน ราคา , ระยะทาง หรือ ปริมาณของสิ่งต่างๆ และในรูปแบบที่ไม่ใช่ตัวเลข เช่น ชื่อ , ที่อยู่ , ตำแหน่งหน้าที่การงาน เป็นต้น
ฐานข้อมูล (Data Base) คือ การจัดรวบรวมแฟ้มข้อมูลต่างๆ ที่มีความสัมพันธ์กันและสามารถเรียกใช้ข้อมูลร่วมกันได้ ช่วยให้ประมวลผลข้อมูลได้อย่างมีประสิทธิภาพมากขึ้น ลดการซ้ำซ้อนของข้อมูล ทำให้ประหยัดพื้นที่ของหน่วยความจำ เพราะข้อมูล มีความสำคัญช่วยตัดสินใจ โดยเฉพาะอย่างยิ่งในระดับผู้บริหาร การจัดเก็บข้อมูลจึงมีความจำเป็น ข้อมูลถูกต้อง ทันสมัยเป็นปัจจุบัน และไม่ซ้ำซ้อน
ระบบฐานข้อมูล (DATABASE SYSTEM) หมายถึง โครงสร้างสารสนเทศ ที่ประกอบด้วยรายละเอียดของข้อมูลที่เกี่ยวข้องกัน ที่จะนำมาใช้ในระบบงานต่าง ๆ ร่วมกัน ระบบฐานข้อมูลจึงนับเป็นการจัดเก็บข้อมูลอย่างเป็นระบบ ซึ่งผู้ใช้จะสามารถจัดการกับข้อมูลได้ในลักษณะต่าง ๆ ทั้งการเพิ่มข้อมูล การแก้ไข การลบ ตลอดจนการเรียกดูข้อมูล ซึ่งส่วนใหญ่จะเป็นการประยุกต์นำเอาระบบคอมพิวเตอร์เข้ามาช่วยในการจัดการฐานข้อมูล
ตัวอย่าง : ร้านค้าส่ง มีสินค้า หรือ ผลิตภัณฑ์ต่าง ๆ มากมาย ๆ ซึ่งจะมีต้องมีข้อมูลประจำผลิตภัณฑ์นั้น ๆ เช่น ผงซักฟอก ประกอบด้วยยี่ห้อ น้ำหนัก ปริมาณ ขนาด และราคา ดังนั้น การเก็บรวบรวมผลิตภัณฑ์หลาย ๆ รายการ จะต้องนำเข้าสู่ระบบฐานข้อมูลสินค้า เพื่อสะดวกในการค้นหา
ตัวอย่าง : การจัดระบบฐานข้อมูลที่ใช้ในปัจจุบัน เช่น ฐานข้อมูลผู้ใช้โทรศัพท์ ฐานข้อมูลหนังสือ-วารสารในห้องสมุดฐานข้อมูลนักเรียน หรือ ฐานข้อมูลประชากร ฯลฯ ฐานข้อมูลเหล่านี้ จะนำเข้าสู่ระบบเครือข่ายอินเตอร์เน็ตเพื่อบริการให้กับบุคคลทั่วไป หรือเฉพาะกลุ่ม

โครงสร้างของข้อมูล


1. รหัส (Code) คือ สัญลักษณ์ใช้แทนข้อมูล โดยปกติใช้เลขฐานสองเป็นรหัส
2. บิท (Bit : Binary Digit)คือหลักในเลขฐานสอง ได้แก่ 0 และ

3. ไบต์ (Byte) คือ กลุ่มของบิทโดยกำหนดให้ 8 บิท = 1 ไบต์
4. อักขระ (Character)

คือ รูปแบบ หรือ สัญลักษณ์ที่ใช้แทนภาษาของมนุษย์ แบ่งได้ ดังนี้

4.1 ตัวอักษร (Font) ได้แก่ A-Z,ก-ฮ เป็นต้น

4.2 ตัวเลข (Number) ได้แก่ 0-9 เป็นต้น

4.3 เครื่องหมายหรือสัญลักษณ์ (Symbol) ได้แก่ @, &, $ เป็นต้น

5. คำ (Word) คือ กลุ่มของอักขระรวมกันเป็นความหมาย
6. เขตข้อมูล (Field)คือ คืออักษรตั้งแต่ 1 ตัวขึ้นไป ที่มีความสัมพันธ์กัน เป็นรายละเอียด
ของสิ่งใดสิ่งหนึ่ง เช่น ชื่อ,ที่อยู่หรือตำแหน่ง
7. ระเบียน (Record)คือ ชุดของเขตข้อมูลต่าง ๆ ที่มีความสัมพันธ์
8. แฟ้มข้อมูลคือ ระเบียน ตั้งแต่ 1 ระเบียนขึ้นไป มีโครงสร้างของข้อมูลเหมือนกัน
และสัมพันธ์กัน มาเก็บไว้ในที่เดียวกัน สามารถนำไปใช้งานได้ เช่นแฟ้มข้อมูลนักเรียนทั้งหมดในโรงเรียน
นอกจากโครงสร้างของข้อมูลทั้ง 8 โครงสร้างแล้ว ระบบฐานข้อมูลจำเป็นต้องอาศัยโครงสร้างของข้อมูลเพิ่มอีก 2 ชนิดคือ
เอนทิตี้ (ENTITY) หมายถึง ชื่อของสิ่งใดสิ่งหนึ่ง เปรียบเสมือนคำนาม อาจได้แก่ คน สถานที่ สิ่งของ การกระทำ ซึ่งต้องการจัดเก็บข้อมูลไว้ เช่น เอนทิตี้ของลูกค้า เอนทิตี้ของพนักงาน เป็นต้น บางเอนทิตี้อาจจะไม่มีความหมายเลย หากขาดเอนทิตี้อื่นในฐานข้อมูล เช่น เอนทิตี้ประวัตินักสึกษาจะไม่มีความหมาย หากปราศจากเอนทิตี้นักศึกษา เพราะจะไม่ทราบว่าเป็นประวัติของนักศึกษาคนใด
แอททริบิวต์ (ATTRIBUTE) หมายถึง รายละเอียดข้อมูลที่แสดงลักษณะและคุณสมบัติของเอนทิตี้หนึ่ง ๆ เช่น เอนทิตี้นักศึกษา ประกอบด้วย แอททริบิวต์รหัสนักศึกษา ชื่อนักเรียนศึกษา ที่อยู่นักศึกษา เป็นต้น
บางเอนทิตี้ก็ยังประกอบด้วยข้อมูลหลายส่วน กลายแอททริบิวต์ย่อยมารวมกัน เช่น
แอททริบิวต์ที่อยู่นักศึกษา ประกอบด้วย บ้านเลขที่ ถนน ตำบล อำเภอ จังหวัด ดังนั้น
แอททริบิวต์ที่อยู่นักศึกษาจึงเป็น แอททริบิวต์ผสม (COMPOSITE ATTRIBUTE)
บางแอททริบิวต์ก็อาจจะไม่มีค่าของตัวมันเอง แต่จะสามารถหาค่าได้จากแอททริบิวต์อื่น เช่น แอททริบิวต์อายุ อาจคำนวณได้จาก แอททริบิวต์วันเกิด ลักษณะเช่นนี้จึงอาจเรียกแอททริบิวต์อายุว่าเป็น แอททริบิวต์ที่แปรผลค่ามา (DERIVED ATTRIBUTE)
การเข้าโปรแกรม และ ส่วนต่าง ๆ Ms- Access 97




การเปิดโปรแกรม Microsoft Access 97 มีลำดับขั้นตอน ดังนี้

คลิก ปุ่ม Start > Programs > Microsoft Access (ดังภาพ)





เมื่อเข้าโปรแกรม Microsoft Access ได้แล้ว จะปรากฏกรอบโต้ตอบ ดังภาพ
ให้ผู้ใช้เลือก 2 แบบ คือ

1. สร้างฐานข้อมูลใหม่ โดยใช้ ...ฐานข้อมูลเปล่า (Blank Database) หมายถึง การสร้างโดยผู้ใช้กำหนดรูปแบบเองทั้งหมด
ตัวช่วยสร้างฐานข้อมูล ( Database Wizard) หมายถึง สร้างโดยมีผู้ช่วยสร้าง

2. เปิดฐานข้อมูลที่มีอยู่แล้ว (Open an Existing Database) หมายถึง เปิดใช้แฟ้มฐานข้อมูลที่ได้จัดทำไว้ก่อนหน้านี้ ซึ่งจะอยู่ในเครื่องPath/Directory C:\My Documents

การออกแบบตาราง

ขั้นตอนการสร้างและออกแบบตาราง
1. คลิกแถบ “ตาราง”
2. คลิกปุ่ม สร้างใหม่
3. ปรากฏกรอบ ตารางใหม่ ให้เลือก Design View (มุมมองออกแบบ) จากนั้นคลิกปุ่ม ตกลง

ทางเลือกการสร้างตาราง …Datasheet View ผู้ใช้ออกแบบ/สร้างตารางเอง ในมุมมองตาราง Design View ผู้ใช้ออกแบบ/สร้างตารางเอง ในมุมมองออกแบบ Table Wizard สร้างตารางแบบใช้ตัวช่วยสร้าง Import Table นำข้อมูลจากโปรแกรมอื่น มาสร้างตารางใหม่ เช่น Excel Link Table เชื่อมโยงข้อมูลจากตารางในฐานข้อมูลอื่น ๆ

4. ป้อนชื่อเขตข้อมูล – ชนิดข้อมูล – ขนาดและรูปแบบข้อมูล
จากนั้นให้ป้อนข้อมูลเกี่ยวกับ ประวัติส่วนตัวของนักเรียน โดยกำหนดชื่อเขตข้อมูล และกำหนดชนิดของข้อมูล พร้อมทั้งกำหนดรายละเอียดของข้อมูลดังรูป


การสร้างแบบสอบถาม

1. คุณลักษณะของแบบสอบถาม แบบสอบถาม (Query) คือ การกรองข้อมูลเฉพาะที่ต้องการ ให้แสดงผล จากข้อมูลที่มีจำนวนมาก การใช้ Query จะช่วยให้ได้ข้อมูลที่ถูกต้องและรวดเร็ว

ลักษณะของแบบสอบถาม : มีลักษณะคล้ายกับตัวกรอง (Filter) แต่จะมีประสิทธิภาพดีกว่า

2. เนื่องจากสามารถดึงข้อมูลจากหลายตาราง และยังขอดูข้อมูลจากเงื่อนไขเดิม กี่ครั้งก็ได้
ประเภทของแบบสอบถาม
แบบสอบถามแบบใช้เลือกข้อมูล( Select Query )

- ใช้ในการเลือกข้อมูลจากตารางหนึ่งหรือมากกว่า ซึ่งตรงกับเงื่อนไขที่กำหนด นำมาไว้ในตารางของแบบสอบถามอีกชุดหนึ่ง
แบบสอบถามแบบแท็บไขว้( Cross Tab Query )

- ใช้เพื่อสอบถามความสัมพันธ์ระหว่าง 2 เขตข้อมูล หรือมากกว่า เหมาะสำหรับการแสดงข้อมูลในรูปแผนภูมิ
แบบสอบถามแบบใช้ตาราง( Make-Table Query )

- เป็นแบบสอบถามที่ใช้ในการสร้างตารางใหม่ จากข้อมูลที่แบบสอบถามได้ทำการเลือกไว้
แบบสอบถามแบบใช้ปรับปรุงข้อมูล( Update Query )

- ทำหน้าที่ปรับปรุงกลุ่มของระเบียน และเปลี่ยนให้มีค่าตามที่กำหนด
แบบสอบถามแบบใช้ผนวกข้อมูล( Append Query )
- การนำข้อมูลที่แบบสอบถามเลือกไว้ เพื่อเพิ่มเป็นระเบียนต่อท้ายในตารางที่กำหนด
แบบสอบถามแบบพารามิเตอร์( Parameter Query )

- แบบสอบถามอันเดียว ใช้หลายๆครั้ง โดยเงื่อนไขที่แตกต่างกัน ในแต่ละครั้ง
แบบสอบถามแบบ ระบุเป็นภาษาSQL.( Structures Query Language)

- แบบสอบถามที่สร้างโดยข้อความ SQL. ซึ่งเป็นภาษามาตรฐาน ด้านฐานข้อมูลชนิดหนึ่ง



2. การสร้างแบบสอบถาม
ขั้นตอนการสร้างแบบสอบถาม
คลิกที่ แถบ แบบสอบถาม แล้ว คลิก ปุ่ม สร้างใหม่





ให้เลือก Design View จะปรากฏกรอบ แสดงตาราง







การเพิ่มชื่อ ให้เลือกชื่อ ตาราง แล้วคลิกปุ่ม เพิ่ม แล้ว คลิกปุ่ม ปิดจะได้ตาราง ที่แสดงผล ในแบบสอบถาม ดังภาพจากนั้นให้บันทึกและตั้งชื่อตาราง (ตั้งชื่ออัตโนมัติ)ในตัวอย่าง ชื่อ แบบสอบถาม 1







การใส่เขตข้อมูลใน ตารางของแบบสอบถามโดยการ ดับเบิลคลิก ที่ ชื่อเขตข้อมูลในตาราง แลัวคลิกปุ่มที่ช่องเขตข้อมูล หรือ ตาราง หรือ เรียงลำดับ แล้วเลือกตามต้องการ





ภาพตัวอย่าง :

ในตารางช่องที่ 2 จะให้แสดงชื่อเขตข้อมูลทั้งหมด ก็จะเลือก Order Detail.*

( เครื่องหมาย .* เป็นการเลือกชื่อเขตข้อมูลทั้งหมด ในตาราง Order Detail)

รายชื่อเขตข้อมูลในตาราง : สำหรับแสดง ตาราง หรือ แบบสอบถาม ที่ใช้ฐานข้อมูล ของแบบสอบถาม ขณะนี้ ใส่รายละเอียดของแบบสอบถาม : ได้แก่

เขตข้อมูล (Field) : สำหรับใส่ชื่อเขตข้อมูลที่ต้องการ ให้มีอยู่ใน แบบสอบถาม

ตาราง (Table) : สำหรับบอกว่าชื่อเขตข้อมูล ในช่อง เขตข้อมูล ได้มาจาก ตาราง หรือ

แบบสอบถามใดเรียงลำดับ (Sort) : สำหรับเรียงข้อมูล โดยใช้เขตข้อมูลที่มีอยู่ใน ช่อง เขตข้อมูล ด้านบนเป็นเกณฑ์แสดง (Show) : กำหนดให้แสดง หรือ ไม่แสดง เขตข้อมูลที่อยู่ในช่อง เขตข้อมูล ด้านบนเงื่อนไข (Chrteria) : กำหนด เงื่อนไขการกรองข้อมูลหรือ (Or) : เงื่อนไข Or ใช้ควบคู่กับบรรทัด เงื่อนไข (Chrteria)