24 พ.ย. 2553

วิชา ฐานข้อมูลเบื้องต้น 4122201 ตอนเรียน A1

การบ้านบทที่ 4 ประจำวันที่ 24 พฤศจิกายน 2553

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

2. คุณสมบัติในการจัดเก็บข้อมูลของรีเลชั่น (Relacion) มีอะไรบ้าง
ตอบ : ในแต่ละ Relation ประกอบด้วยข้อมูลของ Attribute ต่างๆที่จัดเก็บในรูปตาราง 2 มิติ คือ Row, Column
1.      ข้อมูลในแต่ละแถวจะไม่ซ้ำกัน
2.      การจัดเรียงลำดับของข้อมูลในแต่ละแถวไม่เป็นสาระสำคัญ ซึ่งไม่ต้องมีการเรียงลำดับของข้อมูล เพราะ การเรียกข้อมูลขึ้นอยู่กับความต้องการของผู้ใช้งาน
3.      การจัดเรียงลำดับของ Attribute จะเรียงลำดับก่อนหลังอย่างไรก็ได้ เพื่อความง่ายต่อการดึงข้อมูล โดยส่วนใหญ่นิยมใช้คีย์หลักก่อน
4.      ค่าของข้อมูลในแต่ละ Attribute ของ Tuple หนึ่งๆ จะบรรจุได้เพียงค่าเดียว (Single Value) ข้อมูลไม่สามารถบรรจุข้อมูลได้มากว่าหนึ่ง และซ้ำกันไม่ได้
5.      ค่าของข้อมูลในแต่ละ Attribute จะบรรจุค่าของข้อมูลประเภทเดียวกัน เช่น ถ้าข้อมูลเป็นตัวเลขก็ต้องเป็นตัวเลขทั้งหมด หรือ ถ้าเป็นตัวอักษรก็ต้องเป็นตัวแกษรทั้งหมดใน Attribute นั้น

3. รีเลชั่น (Relation) ประกอบด้วยคีย์ประเภทต่างๆ อะไรบ้าง จงอธิบายพร้อมยกตัวอย่างประกอบประเภทคีย์ดังกล่าว
ตอบ :  - คีย์หลัก (Primary Key) เป็น Attribute ที่มีคุณสมบัติของข้อมูลที่มีค่าเป็นเอกลักษณ์ หรือ ไม่มีค่าที่ซ้ำกัน โดยคุณสมบัตินั้นสามารถระบุว่าข้อมูลนั้นเป็น Tuple ใด
ตัวอย่างเช่น  รหัสของพนักงาน , รหัสประจำตัวบัตรประชาชน, รหัสหนังสือ ฯลฯ
          - คีย์ผสม (Composite Key) เป็นการนำฟิลด์ตั้งแต่ 2 ฟิลด์ขึ้นไปมารวมกันเพื่อให้มีคุณสมบัติเป็น Primary Key เนื่องจากหากใช้ฟิลด์ใดฟิลด์หนึ่งเป็น PK จะส่งผลให้ข้อมูลในแต่ละเรคคอร์ดซ้ำซ้อนกันได้ต้องมีสองตารางควบคู่กันไป เพื่อให้สามารถแยกความแตกต่างระหว่าง 2 Tuple ได้
ตัวอย่างเช่น  รหัสของหน่วยงาน กับ ชื่อของพนักงาน ที่ส่งผลให้เป็นคีย์หลักของรหัสพนักงานทั้งหมดในบริษัท
          - คีย์คู่แข่ง (Candidates Key) ในแต่ละ Relation อาจมี Attribute ที่ทำหน้าที่เป็นคีย์หลักได้มากกว่าหนึ่ง Attribute โดยเรียก Attribute เหล่านี้ว่าคีย์คู่แข่ง (Candidates Key)
ตัวอย่างเช่น  รหัสจังหวัดเป็นคีย์หลัก ส่วนชื่อจังหวัดก็ไม่ซ้ำเช่นกัน แต่ไม่ได้เป็นคีย์หลักจึงเป็นคีย์คู่แข่งแทน โดยปกติแล้วแต่จะเลือก Candidates Key ที่สั้นที่สุดเป็น Primary Key และคีย์ที่ไม่ถูกเลือกก็เป็นคีย์สำรอง (Alternate Key)
           - คีย์นอก (Foreign Key) เป็นคีย์ซึ่งประกอบด้วย Attribute หรือกลุ่มของ Attribute ใน Relation หนึ่งซึ่งมีคุณสมบัติเป็นคีย์หลัก และไม่ปรากฏอีก Relation หนึ่ง เพื่อประโยชน์ในการเชื่อมโยงข้อมูลซึ่งกันและกัน
ตัวอย่างเช่น  ฐานข้อมูลของบริษัทประกันภัยแห่งหนึ่ง จะประกอบด้วย 2 ตาราง คือ
- ตารางสมัครประกันภัยที่ลูกค้าเปิด (เลขกรมธรรม์ประกันของลูกค้า, ชื่อ นามสกุล, ประเภทของประกันภัยที่สมัคร)
- ตารางลูกค้า (เลขกรมธรรม์ประกันของลูกค้า, ชื่อ นามสกุล, ที่อยู่)
หากต้องการทราบว่า ประเภทของประกันภัยของลูกค้ารายหนึ่งว่าเลือกประเภทใด ก็เชื่อมโยงข้อมูล 2ตารางเข้าด้วยกัน โดยใช้ เลขกรมธรรม์ประกันของลูกค้า

4. Null หมายถึงอะไรใน Relation Database
ตอบ : Null เป็นศัพท์เฉพาะใน Relation Database ยังไม่ทราบค่าข้อมูลที่รู้แน่ชัด เราสามารถกำหนดให้ค่าของคอลัมน์ใด ๆ เป็น Null ได้ (ถ้าเป็นไปได้ควรใส่ให้ครบจะดีที่สุด) ยกเว้นคอลัมน์ที่เป็น Primary Key เพราะไม่สามารถนำ Primary Key มาใช้เข้าถึงข้อมูลในแต่ละแถวได้

5. เหตุใดจึงต้องมีการนำ Integrity rule มาใช้ในฐานข้อมูล
ตอบ :  โครงสร้างฐานข้อมูลเชิงสัมพันธ์ประกอบด้วยหลายๆ Relation จำเป็นต้องมีการควบคุมข้อมูลให้มีความถูกต้อง เป็นจริง และสามารถนำมาใช้เชื่อมโยงกันได้

6. ความสัมพันธ์ระหว่างรีเลชั่นมีกี่ประเภท อะไรบ้าง จงยกตัวอย่างประกอบ
ตอบ : ความสัมพันธ์ระหว่าง รีเลชั่น แบ่งออกเป็น 3 ประเภทคือ
       1. ความสัมพันธ์แบบหนึ่งต่อหนึ่ง เช่น นักศึกษาหนึ่งคนสามารถมีรหัสนักศึกษาได้เพียงรหัสเดียวเท่านั้น ในระบบฝ่ายทะเบียนของมหาวิทยาลัย แต่ในขณะเดียวกันในระบบก็สามารถมีรหัสนักศึกษาได้แค่หนึ่งรหัสต่อนักศึกษาหนึ่งคน
       2. ความสัมพันธ์แบบหนึ่งต่อกลุ่ม เช่น ในหนึ่งบริษัทสามารถมีพนักงานได้หลายคน แต่ในขณะเดียวกันพนักงานแต่ละคนจะต้องมีบริษัทที่ทำงานได้เพียงบริษัทเดียวเท่านั้น
      3. ความสัมพันธ์แบบกลุ่มต่อกลุ่ม เช่น ในร้านสะดวกซื้อสามารถมีสินค้าที่ขายได้หลากหลายชนิด แต่ในขณะเดียวกันสินค้าหลากหลายชนิดนั้นก็สามารถวางขายในร้านสะดวกซื้อได้หลายร้านเช่นกัน

17 พ.ย. 2553

วิชา ฐานข้อมูลเบื้องต้น 4122201 ตอนเรียน A1



การบ้านบทที่ 3 ประจำวันที่ 17 พฤศจิกายน 2553

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

 2. ความเป็นอิสระของข้อมูลมีบทบาทสำคัญอย่างไรต่อการจัดการฐานข้อมูล จงอธิบาย
ตอบ : เนื่องจากในระบบแฟ้มข้อมูล เมื่อมีการเปลี่ยนแปลงโครงสร้างทางกายภาพของแฟ้มข้อมูลใด จะต้องมีการเปลี่ยนแปลงโปรแกรมต่าง ๆ ที่เรียกใช้ข้อมูลในแฟ้มข้อมูลนั้นด้วย เช่นการเปลี่ยนแปลงแฟ้มข้อมูลพนักงาน จากเดิมมีการเรียงลำดับตามชื่อมาเป็นตามรหัสพนักงานแทน ทำให้ต้องมีการแก้ไขโปรแกรมตามโครงสร้างที่เปลี่ยนแปลงไป ซึ่งการที่ข้อมูลไม่เป็นอิสระต่อกันนี้เรียกว่า “Data Dependence” การเปลี่ยนแปลงโครงสร้างข้อมูลแบบเป็นอิสระมี 2 ประเภทคือ       
               - ความเป็นอิสระของข้อมูลในเชิงตรรกะ (Logical Data Independence) เป็นความอิสระของข้อมูลในระดับแนวคิดกับระดับภายนอก นั่นคือถ้ามีการเปลี่ยนแปลงข้อมูลในระดับแนวคิดจะไม่มีผลต่อระดับภายนอ
               - ความเป็นอิสระของข้อมูลเชิงกายภาพ (Physical Data Independence) เป็นความอิสระขอข้อมูลในระดับภายในแนวคิด นั่นคือถ้ามีการปรับปรุงเค้าร่างในระดับภายในจะกระทบต่อระดับภายแนวคิดและระดับภายนอก

3. ปัญหาที่สำคัญของ Hierarchical Model คืออะไร และเหตุใด Hierarchical Model จึงไม่สามารถลดความซ้ำซ้อนของข้อมูลได้ทั้งหมด
ตอบ : เป็นฐานข้อมูลที่นำเสนอข้อมูลและความสัมพันธ์ระหว่างข้อมูลในรูปแบบของ โครงสร้างต้นไม้ (Tree Structure) เป็นโครงสร้างลักษณะคล้ายต้นไม้เป็นลำดับขั้น ซึ่งแตกออกเป็นกิ่งก้านสาขา หรือที่เรียกว่า เป็นการจัดเก็บข้อมูลในลักษณะความสัมพันธ์ พ่อ ลูก (Parent-Child Relationship Type : PCR Type)  เพราะ การออกแบบเรียงลำดับต่อเนื่องเรคคอร์ดพ่อสามารถมีเรคคอร์ดลูกได้หลายเรคคอร์ด แต่เรคคอร์ดลูกแต่ละเรคคอร์ดจะมีเรคคอร์ดพ่อได้เพียงเรคอร์ดเดียวเท่านั้น จากรูปแบบฐานข้อมูลแบบลำดับชั้น จะมีปัญหา ถ้าความสัมพันธ์ของข้อมูลเป็นแบบเรคคอร์ดลูก 1 เรคคอร์ดมีพ่อได้หลายเรคคอร์ด จะใช้โครงสร้างฐานข้อมูลแบบลำดับชั้นไม่ได้ เช่นความสัมพันธ์ระหว่างลูกจ้างกับงานที่ทำ งานชิ้นหนึ่งอาจทำโดยลูกจ้างหลายคนได้ โครงสร้างฐานข้อมูลแบบลำดับชั้น จะไม่สามารถออกแบบลักษณะข้อมูลแบบนี้ได้ เป็นฐานข้อมูลที่มีความยืดหยุ่นน้อย เพราะการปรับโครงสร้างของ Tree ค่อนข้างยุ่งยาก มีโอกาสเกิดความซ้ำซ้อนมากที่สุดเมื่อเทียบกับระบบฐานข้อมูลแบบโครงสร้างอื่น มีความคล่องตัวน้อยกว่าโครงสร้างแบบอื่น ๆ เพราะการเรียกใช้ข้อมูลต้องผ่านทางต้นกำเนิด (root) เสมอ ถ้าต้องการค้นหาข้อมูลซึ่งปรากฏในระดับล่าง ๆ แล้วจะต้องค้นหาทั้งแฟ้ม

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

5. สิ่งที่ทำให้ Relational Model ได้รับความนิยมอย่างมากคืออะไร จงอธิบาย
ตอบ : เป็นการจัดข้อมูลในรูปแบบของตาราง 2 มิติ คือมีแถว (Row) และ คอลัมน์ (Column)    โดยการเชื่อมโยงข้อมูลระหว่างตาราง จะใช้ Attribute ที่มีอยู่ทั้งสองตารางเป็นตัวเชื่อมโยงข้อมูล             
 - เหมาะกับงานที่เลือกดูข้อมูลแบบมีเงื่อนไขหลายคีย์ฟิลด์ข้อมูล 
 - ป้องกันข้อมูลถูกทำลายหรือแก้ไขได้ดี เนื่องจากโครงสร้างแบบสัมพันธ์นี้ผู้ใช้จะไม่ทราบว่าการเก็บข้อมูลในฐานข้อมูลอย่างแท้จริงเป็นอย่างไร จึงไม่สามารถป้องกันข้อมูลถูกทำลายหรือแก้ไขได้
 - การเลือกข้อมูลทำได้ง่าย มีความซับซ้อนของข้อมูลระหว่างแฟ้มต่าง ๆ น้อยมาก อาจมีการฝึกฝนเพียงเล็กน้อยก็สามารถใช้ทำงานได้
 - เมื่อผู้ใช้งานต้องการข้อมูลในตารางจะใช้วิธีเปรียบเทียบคำของข้อมูลแทน โดยไม่ต้องรู้ว่าข้อมูลนั้นเก็บอย่างไร โดยบอกกับ DBMS ว่าต้องการข้อมูลจากตารางใด ที่มีค่าในคอลัมน์ใด
 - ง่ายในการทำความเข้าใจ 

10 พ.ย. 2553

วิชา ฐานข้อมูลเบื้องต้น 4122201 ตอนเรียน A1


การบ้านบทที่ 1 ประจำวันที่ 10 พฤศจิกายน 2553
1. จงสรุปแนวคิดในการจัดการข้อมูลจากอดีตถึงปัจจุบัน
ตอบ :  ในอดีตการจัดเก็บข้อมูลด้วยคอมพิวเตอร์มีลักษณะเป็นแฟ้มข้อมูล ข้อมูลเหล่านั้นอาจไม่ใช่ข้อมูลที่เป็นปัจจุบัน การขยายระบบจึงจำเป็นอย่างยิ่งที่จะต้องคำนึงถึงการจัดเก็บข้อมูลด้วย ซึ่งการเก็บข้อมูลแบบเดิมทำให้เกิดปัญหาต่างๆ ในปัจจุบันนี้ข้อมูลต่างๆ ได้ถูกจัดการไว้อย่างเป็นระเบียบ โดยเก็บไว้ในสิ่งที่เรียกว่า แฟ้ม (File)
2. โครงสร้างของแฟ้มข้อมูลประกอบด้วยอะไรบ้าง จงอธิบาย
ตอบ :  - บิต (bit) : ประกอบไปด้วยเลขฐานสอง ใช้แทนค่าหน่วยที่เล็กที่สุดของข้อมูลคอมพิวเตอร์ โดยหน่วยที่ใช้มีค่า 0 และ 1 เท่านั้น
            - ไบต์ (byte) : คือการนำเอาบิตหลาย ๆ บิตมาเรียงต่อกัน ตัวอย่างเช่น 1 ไบต์มี 8 บิต ก็คือการนำเอาเลข 0 กับ 1 มาเรียงต่อกัน 8 ตัวจนครบ 1 ไบต์ เพื่อให้ได้ อักขระหนึ่งตัว เช่น 01000001 คือเลขฐานสองที่มี 8 บิตเป็นรหัสแทนแล้ว
            - ฟิลด์ (field) : คือการนำเอาอักขระตั้งแต่หนึ่งตัวขึ้นไปมารวมกันเพื่อให้เกิดความหมาย เช่น ฟิลด์ std_name ใช้เก็บข้อมูลนักศึกษาฟิลด์ salary ใช้เก็บข้อมูลเงินเดือน
            เรคคอร์ด (record) : คือกลุ่มของฟิลด์ที่มีความสัมพันธ์กัน กล่าวคือ ใน 1 เรคคอร์ดประกอบด้วยฟิลด์ต่าง ๆ ที่เกี่ยวข้องกันเป็นชุด เช่น เรคคอร์ดของพนักงาน
            - ไฟล์ (file) : คือกลุ่มของเรคคอร์ดที่สัมพันธ์กัน เช่น แฟ้มประวัติของพนักงาน จะประกอบไปด้วยเรคคอร์ดของพนักงานทั้งหมดในบริษัท ดังนั้นหนึ่งไฟล์จะต้องมีอย่างน้อยหนึ่งเรคคอร์ด เพื่อใช้ในงานข้อมูล
            - Database : การรวมกันของหลาย files/tables
3. การเก็บข้อมูลแบบแฟ้มข้อมูลมีข้อมูลจำกัดอย่างไร จงอธิบาย
ตอบ :   1)  มีความซ้ำซ้อนของข้อมูล (Redundancy)  สืบเนื่องจากข้อมูลถูกเก็บแยกจากกัน ทำให้ไม่สามารถควบคุมความซ้ำซ้อนของข้อมูลได้ ทำให้สูญเสียพื้นที่ในการจัดเก็บข้อมูลมากขึ้น และก่อให้เกิดความผิดพลาดในการดำเนินการกับข้อมูล         
                2) ความยากในการประมวลผลข้อมูลในแฟ้มข้อมูลหลายแฟ้มข้อมูล  ในการสร้างรายงานของแต่ละระบบเช่นการสร้างรายงานการลงทะเบียน ว่าแต่ละวิชามีนักศึกษาคนใดบ้างที่ลงทะเบียนเรียน จะต้องมีการเขียนโปรแกรมประยุกต์เช่นโปรแกรมการลงทะเบียน เพื่อทำการดึงข้อมูลรหัสวิชา รหัสนักศึกษา จากแฟ้มข้อมูลการลงทะเบียน และต้องนำรหัสวิชาที่ได้ไปค้นชื่อวิชาและจำนวนหน่วยกิตที่มีรหัสวิชาตรงกันจากแฟ้มรายวิชา ส่วนรหัสนักศึกษาที่ได้ก็จะต้องนำไปค้นชื่อนักศึกษาที่มีรหัสตรงกันจากแฟ้มนักศึกษา ซึ่งโปรแกรมการลงทะเบียนที่เขียนจะต้องมีความซับซ้อนพอสมควร เนื่องจากต้องมีการจัดการกับแฟ้มข้อมูลมากกว่า 1 แฟ้มข้อมูลขึ้นไป 
                3) ไม่มีผู้ควบคุมหรือรับผิดชอบระบบทั้งหมด  เนื่องจากผู้เขียนโปรแกรมด้านใดด้านหนึ่ง ก็จะดูแลเฉพาะข้อมูลที่จะมีการใช้กับงานของตนเท่านั้น
                4) ความขึ้นต่อกัน (Dependency)  โครงสร้างของแฟ้มข้อมูลมักจะเป็นส่วนหนึ่งของโปรแกรมประยุกต์ที่สร้างขึ้น ตัวอย่างเช่น ถ้ามีการเขียนโปรแกรมประยุกต์ด้วยภาษาCOBOL โครงสร้างของแฟ้มข้อมูลที่จะใช้เช่นชื่อเขตข้อมูลต่าง ๆ ขนาดของเขตข้อมูล จะต้องประกาศไว้ในส่วนของ DATA DIVISION ของโปรแกรมประยุกต์ ปัญหาก็คือว่าถ้ามีการเปลี่ยนแปลงโครงสร้างของแฟ้มข้อมูลเมื่อใด ก็จะต้องไปทำการแก้ไขโปรแกรมประยุกต์ คือต้องไปเปลี่ยนแปลงโครงสร้างแฟ้มข้อมูลในส่วน DATA DIVISION นั้นด้วย 
4. ฐานข้อมูลคืออะไร และยกตัวอย่างฐานข้อมูลที่นักศึกษารู้จักมาสองระบบ
ตอบ : ฐานข้อมูลประกอบด้วยรายละเอียดข้อมูลที่มีความเกี่ยวข้องกัน ซึ่งจะถูกนำมาใช้งานในด้านต่าง ๆ โดยข้อมูลเหล่านี้จะถูกจัดเก็บไว้ให้เป็นศูนย์กลางอย่างมีระบบซึ่งสามารถเรียกใช้ร่วมกันได้ เพื่อประโยชน์ในการจัดการและการเรียกใช้ข้อมูลได้อย่างมีประสิทธฺภาพ
ตัวอย่างฐานข้อมูล
        1.ระบบธนาคารซึ่งข้อมูลที่จัดเก็บอาจจะประกอบด้วยรายละเอียดของลูกค้า  โดยจัดเก็บชื่อ  ที่อยู่  รายการฝากเงินรายการสินเชื่อ  ยอดคงเหลือของบัญชีแต่ละประเภท
        2.ระบบจองตั๋วเครื่องบิน  ซึ่งข้อมูลที่จัดเก็บอาจประกอบด้วยรายละเอียดต่างๆเกี่ยวกับแต่ละเที่ยวบิน  รายละเอียดเกี่ยวกับราคาตั๋ว  และจำนวนตั๋วที่ยังคงเหลืออยู่  พร้อมทั้งข้อมูลของลูกค้า  ซึ่งอาจจะเก็บชนิดของอาหารและหมายเลขที่นั่งที่ลูกค้าต้องการด้วย
5. ฐานข้อมูลช่วยแก้ปัญหาที่เกิดขึ้นกับการเก็บข้อมูลในแฟ้มข้อมูลอย่างไร
ตอบ ฐานข้อมูลช่วยแก้ปัญหาที่เกิดขึ้นกับการเก็บข้อมูล ดังนี้
         1. ลดความซ้ำซ้อนของข้อมูล เมื่อมีข้อมูลหลายที่ แต่ละหน่วยงานจัดเก็บข้อมูลเอง อาจมีข้อมูลในส่วนที่เหมือนกันหลายส่วน เมื่อนำคอมพิวเตอร์มาใช้จัดเก็บข้อมูลให้อยู่ในรูปของฐานข้อมูลจะทำให้การเก็บข้อมูลไม่เกิดการซ้ำซ้อน
         2. ทำให้เกิดความสอดคล้องของข้อมูล เมื่อมีการแก้ไขข้อมูลที่ใดที่หนึ่ง ข้อมูลอีกที่หนึ่งก็จะถูกเปลี่ยนไปด้วย
        3. ข้อมูลสามารถใช้ร่วมกันได้ การเก็บข้อมูลไว้ในฐานข้อมูลเดียวกัน จะสามารถกำหนดรูปแบบที่แน่นอนได้และสามารถใช้ร่วมกับหน่วยงานอื่นได้ เพราะมีมาตรฐานเดียวกัน
        4. มีความปลอดภัย การที่นำข้อมูลมารวมอยู่ในที่เดียวกัน สามารถวางมาตรฐานในการแก้ไขและป้องกันได้ดีกว่า จึงไม่มีการรั่วไหลของข้อมูลไปสู่ผู้ที่ไม่ควรรู้
        5. สามารถขจัดความขัดแย้งในการใช้ข้อมูลร่วมกัน ก่อนที่จะมีการจัดเก็บข้อมูลต้องมีการตกลงรูปแบบการเก็บอย่างเป็นเอกฉันท์เสียก่อน ทำให้ไม่เสียเวลาในการพัฒนาระบบฐานข้อมูล
6. ระบบจัดการฐานข้อมูล (DBMS) คืออะไร มีส่วนสำคัญอย่างไร
ตอบ : คือ โปรแกรมที่ทำหน้าที่จัดการข้อมูลในฐานข้อมูลทั้งการสร้างการเรียกใช้งานการเปลี่ยนแปลงโครงสร้าง และยังมีการควบคุมระบบรักษาความปลอดภัยของฐานข้อมูลอีกด้วยมีที่ทำหน้าที่เป็นตัวกลางในระบบติดต่อระหว่างผู้ใช้กับฐานข้อมูลเพื่อจัดการและควบคุมความถูกต้อง ความซ้ำซ้อน และความสัมพันธ์ระหว่างข้อมูลต่างๆ ภายในฐานข้อมูล ซึ่งต่างจากระบบแฟ้มข้อมูลที่หน้าที่เหล่านี้จะเป็นหน้าที่ของโปรแกรมเมอร์ ในการติดต่อกับข้อมูลในฐานข้อมูลไม่ว่าจะด้วยการใช้คำสั่งในกลุ่ม DML หรือ DDL หรือจะด้วยโปรแกรมต่างๆ ทุกคำสั่งที่ใช้กระทำกับข้อมูลจะถูก DBMS แปล (คอมไพล์เป็นการปฏิบัติการ (Operation) ต่างๆ ภายใต้คำสั่งนั้นๆ เพื่อนำไปกระทำกับตัวข้อมูลภายในฐานข้อมูลต่อไป สำหรับส่วนการทำงานตางๆ ภายใน DBMS ที่ทำหน้าที่แปลคำสั่งไปเป็นการปฏิบัติการต่างๆ กับข้อมูลนั้น
7. ยกตัวอย่างฐานข้อมูลเบื้องต้นกับการดำเนินชีวิตประจำวัน
ตอบ :  ระบบจองตั๋วเครื่องบิน ซึ่งข้อมูลที่จัดเก็บอาจประกอบด้วยรายละเอียดต่างๆเกี่ยวกับแต่ละเที่ยวบิน รายละเอียดเกี่ยวกับราคาตั๋ว และจำนวนตั๋วที่ยังคงเหลืออยู่ พร้อมทั้งข้อมูลของลูกค้า