แสดงบทความที่มีป้ายกำกับ ฐานข้อมูล แสดงบทความทั้งหมด
แสดงบทความที่มีป้ายกำกับ ฐานข้อมูล แสดงบทความทั้งหมด

วันอาทิตย์ที่ 31 มีนาคม พ.ศ. 2556

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

  ตอนที่ 1.3 สถาปัตยกรรมของระบบฐานข้อมูล



           

 เรื่องที่ 1.3.1 ระดับของข้อมูล ในระบบฐานข้อมูล

           

              1. ระดับชั้นของระบบจัดการฐานข้อมูล

              ระบบฐานข้อมูล เป็นการนำข้อมูลในองค์การที่มีความเกี่ยวข้องกันมารวมไว้อย่างเป็นระบบในที่เดียวกัน โดยที่ผู้ใช้ฐานข้อมูลจะมองข้อมูลนี้ในแง่มุมหรือวิวที่แตกต่างกันไปตามจุดประสงค์ของการประยุกต์ใช้งาน โดยผู้ใช้ไม่จำเป็นต้องสนใจว่าลักษณะการจัดเก็บข้อมูลโดยแท้จริงแล้วเป็นเช่นไร โดยระบบฐานข้อมูลจะทำการซ่อนรายละเอียดไว้ โดยจัดแบ่งระดับของข้อมูลออกเป็นระดับชั้น
               ระดับชั้นของข้อมูลถูกพัฒนาขึ้นโดย The Standards Planing and Requiremenst Committee (SPARC) ของ American National Standards institure (ANSI) จะถูกแบ่งออกเป็น 4 ระดับ
              1.1 ระดับภายนอก (external level) เป็นระดับที่อยู่สูงสุดโดยผู้ใช้สามารถมองเห็นงานของผู้ใช้แต่ละคน และสามารถเรียกใช้ฐานข้อมูลได้ในระดับนี้
              1.2 ระดับหลักการ (conceptual level) เป็นระดับที่อยู่ถัดขึ้นมาได้แก่ ระดับของการมองแฟ้มข้อมูลของระบบฐานข้อมูลรวมทั้งกฎเกณฑ์ต่าง ๆ เกี่ยวกับข้อมูลและผู้ที่มีสิทธิจะใช้ ข้อมูลในระดับนี้จะถูกใช้โดยโปรแกรมเมอร์หรือผู้เขียนโปรแกรม
              1.3 ระดับภายใน (internal level) เป็นระดับของการจัดความสัมพันธ์ระหว่างแฟ้มข้อมูลของระบบฐานข้อมูลและการเชื่อมโยงแต่ละแฟ้มข้อมูล ข้อมูลในระดับนี้จะถูกใช้โดยผู้จัดการฐานข้อมูลและผู้เขียนโปรแกรมระบบ (system programmer)
             1.4 ระดับโครงสร้างแท้จริง (physical organization level) เป็นระดับที่ต่ำที่สุดอันได้แก่ กลุ่มของแฟ้มข้อมูลที่จัดเก็บไว้เป็นแฟ้มข้อมูลจริงและโครงสร้างของแฟ้มข้อมูล


ภาพที่1.2 แสดงระดับชั้นของข้อมูล


               ประโยชน์ของการแบ่งระดับชั้นนั้นเพื่อให้ข้อมูลเป็นอิสระต่อกัน ความเป็นอิสระของข้อมูลคือ การที่ผู้ใช้ไม่ต้องมาคอยแก้ไขโปรแกรมที่ใช้งานในทุก ๆ ครั้งที่เกิดการเปลี่ยนแปลงแก้ไขฐานข้อมูลระบบจัดการฐานข้อมูลจะทำหน้าที่เชื่อมโยงข้อมูลระหว่างแต่ละระดับ




เรื่องที่ 1.3.2 ความเป็นอิสระของข้อมูล


             1.แนวคิดเชิงกายภาพและตรรกะ

เนื่องจากฐานข้อมูลมีลักษณะเด่นที่เหนือกว่าระบบแฟ้มข้อมูล คือความเป็นอิสระของข้อมูล การที่ผู้ใช้ไม่ต้องแก้ไขโปรแกรมที่ใช้งานเมื่อมีการเปลี่ยนแปลงข้อมูลระดับแนวคิดหรือระดับภายใน โดยเป็นหน้าที่ของระบบจัดการฐานข้อมูลหรือดีบีเอ็มเอสในการเชื่อมข้อมูลระดับภายนอกและระดับแนวคิด และเชื่อมข้อมูลระดับแนวคิดกับระดับภายใน ซึ่งการเชื่อมนี้เกี่ยวข้องกับความเป็นอิสระของข้อมูล ทำให้ผู้ใช้ไม่จำเป็นต้องรับทราบเกี่ยวกับข้อมูลส่วนอื่นๆ ที่ตนไม่ได้ใช้ ผู้ใช้มองเห็นโครงสร้างข้อมูลระดับภายนอกเหมือนเดิมและสามารถใช้งานได้ตามปกติ กล่าวคือข้อมูลภายในฐานข้อมูลเป็นอิสระจากโปรแกรมที่เรียกใช้ เพื่อที่สามารถแก้ไขโครงสร้างทางกายภาพของข้อมูลได้ โดยไม่กระทบต่อโปรแกรมที่เรียกใช้ฐานข้อมูลนั้น ความเป็นอิสระของข้อมูลแบ่งออกเป็น 2 ลักษณะ คือ

              1.1ความเป็นอิสระของข้อมูลเชิงตรรกะ (logical data independence) ตรรกะ (logical) ในความหมายที่ใช้กับระบบฐานข้อมูลจะหมายถึงมุมมองของผู้ใช้ต่อข้อมูลนั้น โดยขึ้นอยู่กับผู้ใช้ว่าทำงานเกี่ยวข้องกับข้อมูลลักษณะใด ตัวอย่าง ถ้ามีคำถามว่าแฟ้มข้อมูลคืออะไร ถ้าถามบุคคลในวงการคอมพิวเตอร์ คำตอบที่ได้คือที่เก็บรวบรวมเรคอร์ด เพราะว่าบุคคลเหล่านี้ส่วนใหญ่คือโปรแกรมเมอร์ผู้เขียนโปรแกรม ซึ่งในมุมมองของผู้เขียนโปรแกรมนั้นจะมองแฟ้มข้อมูลเป็นเรคอร์ด นั่นคือขณะที่โปรแกรมเมอร์ใช้คำสั่งอ่านข้อมูล (read) 1 คำสั่งจะได้ข้อมูล 1 เรคอร์ด และเมื่อใช้คำสั่งเขียน (write) 1 คำสั่งจะบันทึกข้อมูล 1 เรคอร์ด นั่นคือในมุมมองของโปรแกรมเมอร์จะเห็นแฟ้มข้อมูลเป็นเรคอร์ด แต่ถ้าเราถามเจ้าหน้าที่สารบรรณว่าแฟ้มข้อมูลคืออะไร เจ้าหน้าที่สารบรรณจะตอบว่าคือที่เก็บรวบรวมตัวอักษรหรือข้อความ เพราะว่าเจ้าหน้าที่ดังกล่าวมองแฟ้มข้อมูลเป็นที่เก็บตัวอักษร เนื่องจากใช้โปรแกรมไมโครซอฟต์เวิร์ดจัดการกับข้อมูลและเก็บข้อมูลซึ่งเป็นตัวอักษรและข้อความต่างๆ เป็นแฟ้มข้อมูลนั่นเอง นั่นคือบุคคลเหล่านั้นทั้งโปรแกรมเมอร์และเจ้าหน้าที่สารบรรณมีมุมมองต่อแฟ้มข้อมูลต่างกันขึ้นอยู่กับลักษณะงานที่เกี่ยวข้องด้วย ซึ่งแฟ้มข้อมูลที่ผู้ใช้เห็นนี้เรียกว่า แฟ้มข้อมูลเชิงตรรกะ (logical file) ดังนั้นอาจกล่าวได้ว่า ความเป็นอิสระของข้อมูลเชิงตรรกะ (logical data independence) หมายถึง เมื่อมีการเปลี่ยนแปลงแก้ไขโครงสร้างข้อมูลในระดับแนวคิด จะไม่มีผลกระทบต่อโครงสร้างข้อมูลในระดับภายนอกที่ผู้ใช้ใช้งานอยู่ เช่น เมื่อมีการเปลี่ยนแปลงขนาดของแอตทริบิวต์ในตารางฐานข้อมูลในระดับแนวคิด ก็ไม่จำเป็นต้องไปแก้ไขโปรแกรมประยุกต์ที่ผู้ใช้เขียนขึ้นในระดับภายนอกที่มีการเรียกใช้แอตทริบิวต์นั้นในการทำงานกับฐานข้อมูลต้องรู้ว่าสิ่งที่เราทำงานอยู่ด้วยนั้นเกี่ยวข้องกับระดับกายภาพหรือระดับตรรกะ

            1.2 ความเป็นอิสระของข้อมูลเชิงกายภาพ (physical data independence) กายภาพ (physical)
ในความหมายของระบบผู้ใช้จะหมายถึงมุมมองของระบบปฏิบัติการ (Operating System; OS) ต่อข้อมูลนั้นจากคำถามข้างต้นถามว่าแฟ้มข้อมูลคืออะไร คำตอบที่ได้ในที่นี้คือที่เก็บรวบรวมบิตโดยนำรูปแบบของบิต (bit pattern) มาเรียงต่อกันเป็นสาย ซึ่งเป็นคำตอบในมุมมองของระบบปฏิบัติการ จะเห็นว่าไม่เกี่ยวข้องกับเรคอร์ดหรือตัวอักษร ซึ่งแฟ้มข้อมูลในมุมมองของระบบปฏิบัติการนี้เรียกว่า แฟ้มข้อมูลเชิงกายภาพ (physical file) ความเป็นอิสระของข้อมูลเชิงกายภาพ (physical data independence) หมายถึง เมื่อมีการเปลี่ยนแปลงแก้ไขโครงสร้างข้อมูลในระดับภายใน จะไม่มีผลกระทบต่อโครงสร้างข้อมูลในระดับแนวคิด หรือระดับภายนอก เช่น เมื่อมีการเปลี่ยนวิธีการจัดเก็บข้อมูลจากแบบเรียงลำดับ (sequential) ไปเป็นแบบดัชนี (indexed) ในระดับภายใน ในระดับแนวคิดนั้นจะไม่มีผลกระทบต่อการเปลี่ยนแปลงดังกล่าวหรือโปรแกรมประยุกต์ที่เขียนในระดับภายนอกก็ไม่จำเป็นต้องแก้ไขโปรแกรมตามวิธีการจัดเก็บที่เปลี่ยนแปลงไป


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

           สรุปได้ว่าแฟ้มข้อมูลที่กล่าวถึงนั้นคือสิ่งเดียวกันแต่เมื่อมองจากต่างมุมจะมองเห็นต่างกัน ซึ่งในมุมมองของผู้ใช้นั้นเป็นมุมมองเชิงตรรกะ ขณะที่มุมมองของระบบปฏิบัติการเป็นมุมมองเชิงกายภาพการสร้างฐานข้อมูลขึ้นใช้งานในองค์การหรือหน่วยงานต่างๆ ก็จำเป็นจะต้องดำเนินการตามขั้นตอนที่เหมาะสม และต้องมีวิธีจัดการข้อมูล โดยปกติการสร้างฐานข้อมูลจำเป็นจะต้องออกแบบฐานข้อมูลเป็นสองระยะหรือสองขั้นตอนด้วยกัน ขั้นแรกก็คือการออกแบบเชิงแนวคิด (conceptual design) หรือเชิงตรรกะ (logical design) และขั้นที่สองก็คือการออกแบบเชิงกายภาพ (physical design)
           2.1 การออกแบบเชิงตรรกะเน้นในด้านการจัดกลุ่มข้อมูลในฐานข้อมูลให้เป็นหมวดหมู่ หรือ เป็นตารางที่เหมาะสม การออกแบบเริ่มต้นด้วยการพิจารณาว่าหน่วยงานจะต้องใช้ข้อมูลอะไรบ้าง ข้อมูลเหล่านั้นมีความสัมพันธ์กันอย่างไรบ้าง จะจัดกลุ่มข้อมูลอย่างไรจึงจะเหมาะสมและไม่เกิดความซ้ำซ้อนการพิจารณาการจัดกลุ่มนี้จะต้องคำนึงถึงลักษณะของประเภทฐานข้อมูลที่จะจัดทำขึ้นด้วย
           2.2 การออกแบบเชิงกายภาพ เน้นในด้านการกำหนดว่าข้อมูลแต่ละรายการหรือตารางข้อมูลต่างๆจะจัดเก็บลงในสื่อข้อมูลเช่นจานแม่เหล็กได้อย่างไร มีการกำหนดว่าข้อมูลแต่ละรายการเป็นข้อมูลประเภทอักขระ จำนวน หรือประเภทอื่นๆ และต้องใช้เนื้อที่ในการเก็บมากน้อยเท่าใด การออกแบบฐานข้อมูลในส่วนนี้จำเป็นจะต้องใช้ผู้เชี่ยวชาญที่ศึกษาด้านฐานข้อมูลมาโดยตรงฐานข้อมูลเป็นงานประยุกต์คอมพิวเตอร์ที่มีความสำคัญเป็นอย่างยิ่งในยุคปัจจุบัน อาจกล่าวได้ว่างานประยุกต์คอมพิวเตอร์ทุกงานล้วนต้องสร้างขึ้นบนฐานข้อมูลแทบทั้งสิ้น ดังนั้นการศึกษาทำความเข้าใจ เรื่องของฐานข้อมูลจึงเป็นเรื่องจำเป็น ยิ่งหากได้ศึกษาจนถึงขั้นออกแบบและใช้งานได้จริงแล้วยิ่งจะเป็นประโยชน์มากขึ้นเป็นทวีคูณ


             3.วิวกับการแปลงรูป

             โครงสร้างของสถาปัตยกรรมของฐานข้อมูล 3 ระดับนั้น แต่ละระดับจะมี DBMS ทำหน้าที่ในการ
แปลงรูประดับข้อมูลจากระดับหนึ่งไปยังอีกระดับหนึ่ง ได้แก่ การแปลงรูประหว่างระดับภายนอกกับระดับแนวคิด และระหว่างระดับแนวคิดกับระดับภายในการถ่ายทอดมุมมองจากสถาปัตยกรรมในระดับที่สูงกว่าไปยังระดับที่ต่ำกว่า เรียกว่า การแปลงรูป (mapping) การแปลงรูปแบ่งเป็น 2 ลักษณะ คือ หนึ่งการแปลงรูประหว่างระดับภายนอกกับระดับแนวคิดและสองการแปลงรูประหว่างระดับแนวคิดกับระดับภายใน

             3.1 การแปลงรูประหว่างระดับภายนอกกับระดับแนวคิด (external/conceptual mapping) เป็นการกำหนดความสอดคล้องกันระหว่างมุมมองในระดับภายนอกและระดับแนวคิดที่เรียกว่า ความเป็นอิสระของข้อมูลเชิงตรรกะ(logical data independence) โดยถ่ายทอดมุมมองที่มีต่อข้อมูลจากสถาปัตยกรรมในระดับภายนอกไปยังสถาปัตยกรรมในระดับแนวคิด เพื่อให้ผู้ใช้ฐานข้อมูลสามารถมีมุมมองข้อมูลที่แตกต่างกันได้ ในระดับแนวคิดนั้นอาจมีการเปลี่ยนแปลง ชนิดข้อมูล (data type) ของแอตทริบิวต์เปลี่ยนแปลงชื่อแอตทริบิวต์ เป็นต้น โดยสามารถเชื่อมการเปลี่ยนแปลงนี้ไปสู่แอตทริบิวต์ระดับภายนอกได้ ทำให้สคีมาภายนอกก็ยังคงใช้ได้เหมือนเดิมไม่ต้องเปลี่ยนแปลงใดๆ หรือกล่าวว่านี่คือการรักษาความเป็นอิสระข้อมูลเชิงตรรกะนั่นเอง
             3.2 การแปลงรูประหว่างระดับแนวคิดกับระดับภายใน (conceptual/internal mapping) เป็นการกำหนดความสอดคล้องกันระหว่างมุมมองในระดับแนวคิดกับระดับภายในที่เรียกว่าความเป็นอิสระของข้อมูลเชิงกายภาพ ( physical data independence) โดยถ่ายทอดมุมมองที่มีต่อข้อมูลจากสถาปัตยกรรมในระดับแนวคิดไปยังสถาปัตยกรรมในระดับภายในเพื่อนำโครงสร้างของข้อมูลในระดับแนวคิดไปแปลงเป็นโครงสร้างของข้อมูลในระดับกายภาพเพื่อใช้ในการจัดเก็บข้อมูล โดยระบุโครงสร้างเรคอร์ดและฟิลด์ที่ใช้จัดเก็บข้อมูลในระดับภายใน ถ้าโครงสร้างของข้อมูลในฐานข้อมูลที่จัดเก็บเปลี่ยนแปลงไปเช่น เมื่อมีการเปลี่ยนนิยามโครงสร้างการจัดเก็บทำให้การแปลงรูปจากระดับแนวคิดไปยังระดับภายในต้องเปลี่ยนแปลงตามไปด้วย แต่สคีมาแนวคิดยังคงอยู่เหมือนเดิมไม่ต้องเปลี่ยนแปลงแต่อย่างใด หรือกล่าวอีกนัยหนึ่งผลของการเปลี่ยนแปลงในระดับภายในต้องเป็นอิสระจากระดับแนวคิด เพื่อที่จะรักษาความเป็นอิสระของข้อมูลเชิงกายภาพนั่นเองการแปลงรูปข้อมูลระหว่างระดับแนวคิดกับระดับภายในทำให้ผู้ใช้งานฐานข้อมูลไม่ว่าในระดับแนวคิดหรือระดับภายนอกไม่จำเป็นต้องทราบว่าข้อมูลที่ตนใช้งานอยู่ถูกจัดเก็บในดิสก์อย่างไร เมื่อต้องการใช้ข้อมูลใดสามารถอ้างถึงชื่อตารางและฟิลด์ได้โดยตรงซึ่งจะเป็นหน้าที่ของระบบจัดการฐานข้อมูลที่จะดูว่าข้อมูลที่ผู้ใช้ต้องการเก็บอยู่ในตำแหน่งแทรกใด ไซลินเดอร์ใดในดิสก์ แล้วทำการดึงข้อมูลนั้นมาให้แก่ผู้ใช้


เรื่องที่ 1.3.3 ภาษาที่ใช้ในระบบฐานข้อมูล


             ภาษาของระบบจัดการฐานข้อมูลที่มีใช้กันในปัจจุบันได้แก ภาษานิยามข้อมูล ภาษาจัดการข้อมูล
และภาษาควบคุม

              1. ภาษานิยามข้อมูล (Data Definition Language; DDL)

              เป็นภาษาที่ใช้ในการกำหนดสคีมาระดับแนวคิด ภาษานิยามข้อมูลใช้กำหนดวิวของผู้ใช้และโครงสร้างการจัดเก็บข้อมูล สำหรับระบบจัดการฐานข้อมูลบางตัวอาจมีภาษานิยามวิว (View Definition
Language; VDL) และภาษานิยามการจัดเก็บข้อมูล (Storage Definition Language; SDL) แยกต่างหากเพื่อกำหนดวิวและโครงสร้างการจัดเก็บ ตามลำดับ ซึ่งระบบจัดการฐานข้อมูลจะมีส่วนแปลภาษานิยามข้อมูล ทำหน้าที่แปลงประโยคคำสั่งภาษานิยามข้อมูล (DDL) เพื่อกำหนดรายละเอียดของโครงสร้างและเก็บไว้ในสารบัญแฟ้มของระบบจัดการฐานข้อมูล นั่นคือผลจากการแปลงประโยคคำสั่งที่เขียนด้วยภาษานิยามข้อมูล (DDL) จะทำให้ได้ตารางที่เก็บข้อมูลเกี่ยวกับโครงสร้างที่ได้จากการออกแบบฐานข้อมูลนั้นๆ ซึ่งเรียกว่า
พจนานุกรมข้อมูล (data dictionary) ซึ่งเก็บรายละเอียดฐานข้อมูลที่สร้างขึ้นมีชื่ออะไร มีโครงสร้างประกอบด้วยตารางชื่ออะไร แต่ละตารางประกอบด้วยฟิลด์ใดบ้าง ฟิลด์แต่ละฟิลด์มีชนิดข้อมูลเป็นอะไร มีความกว้างของข้อมูลเท่าใด และมีฟิลด์ใดบ้างเป็นคีย์ มีดัชนี (index) ช่วยในการค้นหาข้อมูลหรือไม่ เป็นต้น

               2. ภาษาจัดการข้อมูล (Data Manipulation Language; DML)

               เป็นภาษาใช้สำหรับจัดการข้อมูลภายในฐานข้อมูล ได้แก่การเรียกค้น เพิ่ม ลบ และปรับปรุงฐานข้อมูล ภาษาจัดการข้อมูล (DML) มี ประเภทหลักๆ คือเป็นภาษาที่ผู้ใช้กำหนดโครงสร้างหรือแบบแผนในการเก็บข้อมูล เช่น กำหนดหัวข้อและลักษณะของคอลัมน์ของตารางต่าง ๆ ที่จะใช้บันทึกข้อมูล ภาษากำหนดข้อมูล จะทำให้เกิดตารางที่จะจัดเก็บข้อมูลที่สำคัญต่อการทำงานของ DBMS ขึ้นมาชุดหนึ่ง ตารางนี้มีชื่อว่าพจนานุกรมข้อมูล (data dictionary) ซึ่งระบบจัดการฐานข้อมูลจะอาศัยโครงสร้างจากแฟ้มข้อมูลนี้เสมอ เช่น ดัชนี (index) ต่าง ๆ เป็นต้น
               การเรียกดูข้อมูลออกจากฐานข้อมูลจะต้องผ่านคำสั่งหรือข้อความของภาษาจัดการข้อมูลหาข้อความซึ่งกลุ่มของข้อความเหล่านั้นมีลักษณะเป็นการถามระบบข้อมูลเพื่อให้ระบบจัดการฐานข้อมูลหาคำตอบจากข้อมูลที่เก็บไว้และตอบกลับมา กลุ่มของข้อความเหล่านั้นเรียกว่า ภาษาคำถาม (query language) แต่โดยทั่วไปแล้วคำว่า DML และ ภาษาคำถาม จะใช้แทนกันเสมอ เช่น


                                SELECT                EMPLOYEE-NAME
                                FROM                   EMPLOYEE-FILE
                                WHERE      SEX  =  “FEMALE” AND SALARY GREATER THAN 5000


              เป็นการไปเรียกดูข้อมูลชื่อของลูกจ้างที่เป็นผู้หญิงและมีเงินเดือนมากกว่า 5,000 จากฐานข้อมูลชื่อ EMPLOYEE-FILE


           

              3. ภาษาที่ใช้ในการควบคุมข้อมูล หรือ DCL (data control language)

               เป็นภาษาที่ใช้ในการควบคุมความถูกต้องของข้อมูล และควบคุมความปลอดภัยของข้อมูล ภาษาในส่วนนี้จะทำการป้องกันการเกิดเหตุการณ์ที่ผู้ใช้หลายคนเรียกใช้ข้อมูลพร้อมกัน โดยจะทำหน้าที่ควบคุมความถูกต้องของการใช้ข้อมูลและทำการลำดับการใช้ข้อมูลของผู้ใช้แต่ละคนและตรวจสอบสิทธิ์ในการใช้ข้อมูลนั้นๆ










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

ตอนที่ 1.2 แนวคิดเกี่ยวกับระบบฐานข้อมูล




                เรื่องที่ 1.2.1 ความจำเป็นที่ทำให้เกิดการใช้งานโดยระบบฐานข้อมูล


           หลังจากที่มนุษย์เริ่มรู้จักใช้คอมพิวเตอร์เพื่อการประมวลผลแล้วก็เริ่มมีการพัฒนาภาษาโปรแกรมสำหรับใช้ในการประมวลผลข้อมูล เช่น ภาษาฟอร์แทรน (FORTRAN) โคบอล (COBOL) พีแอลวัน (PL/I) เบสิก (BASIC) ปาสคาล (Pascal) และเริ่มพัฒนาแนวความคิดในการจัดเก็บข้อมูลเป็นแฟ้มข้อมูลประเภทต่างๆ แฟ้มข้อมูลมีข้อจำกัดในการใช้งานหลายประการ ในระบบฐนข้อมูลก็เนื่องมาจากเหตุผลดังนี้


           

            1.การประมวลผลกับระบบแฟ้มข้อมูลยุ่งยาก

             การดำเนินงานกับแฟ้มข้อมูลในระบบคอมพิวเตอร์นั้นจำเป็นจะต้องเขียนคำสั่งต่างๆ ในโปรแกรมเพื่อสร้างแฟ้มข้อมูล ใช้เรคอร์ดในแฟ้มข้อมูล และปรับปรุงแฟ้มข้อมูลให้เป็นปัจจุบัน รูปแบบของคำสั่งเหล่านี้ถูกกำหนดไว้ในภาษาคอมพิวเตอร์ต่างๆ แล้ว ส่วนโปรแกรมก็จะต้องพัฒนาขึ้นให้สอดคล้องกับข้อกำหนดของภาษา เช่นหากภาษาคอมพิวเตอร์ที่ใช้นั้นกำหนดว่าจะต้องระบุชื่อแฟ้มข้อมูลในโปรแกรม ผู้เขียนโปรแกรมก็ต้องปฏิบัติตามอย่างเคร่งครัด
             การใช้แฟ้มข้อมูลในแบบที่กล่าวมานี้มีลักษณะจำกัดอย่างหนึ่งคือจะต้องระบุรายละเอียดของแฟ้มวิธีการจัดแฟ้มข้อมูล และรายละเอียดของเรคอร์ดที่อยู่ในแฟ้มเอาไว้ในโปรแกรมอย่างครบถ้วน หากกำหนดรายละเอียดผิดไปหรือกำหนดไม่ครบก็จะทำให้โปรแกรมทำงานผิดพลาดได้
         

            2. แฟ้มข้อมูลไม่มีความเป็นอิสระของข้อมูล

            ระบบแฟ้มข้อมูลถ้ามีการแก้ไขโครงสร้างข้อมูลจะกระทบถึงโปรแกรมด้วย เนื่องจากในการเรียกใช้ข้อมูลที่เก็บอยู่ในระบบแฟ้มข้อมูลนั้น ต้องใช้โปรแกรมที่เขียนขึ้นเพื่อเรียกใช้ข้อมูลในแฟ้มข้อมูลนั้นโดยเฉพาะ เช่น เมื่อต้องการรายชื่อพนักงานที่มีเงินเดือนมากกว่า 100,000 บาทต่อเดือน โปรแกรมเมอร์ต้องเขียนโปรแกรมเพื่ออ่านข้อมูลจากแฟ้มข้อมูลพนักงานและพิมพ์รายงานที่แสดงเฉพาะข้อมูลที่ตรงตามเงื่อนไขที่กำหนด กรณีที่มีการเปลี่ยนแปลงโครงสร้างของแฟ้มข้อมูลข้อมูลเช่น ให้มีดัชนี (index)ตามชื่อพนักงานแทนรหัสพนักงาน ส่งผลให้รายงานที่แสดงรายชื่อพนักงานที่มีเงินเดือนมากกว่า100,000 บาทต่อเดือนซึ่งแต่เดิมกำหนดให้เรียงตามรหัสพนักงานนั้นไม่สามารถพิมพ์ได้ ทำให้ต้องมีการแก้ไขโปรแกรมตามโครงสร้างดัชนี (index) ที่เปลี่ยนแปลงไป ลักษณะแบบนี้เรียกว่าข้อมูลและโปรแกรมไม่เป็นอิสระต่อกัน
              สำหรับระบบฐานข้อมูลนั้นข้อมูลภายในฐานข้อมูลจะเป็นอิสระจากโปรแกรมที่เรียกใช้ สามารถแก้ไขโครงสร้างทางกายภาพของข้อมูลได้ โดยไม่กระทบต่อโปรแกรมที่เรียกใช้ข้อมูลจากฐานข้อมูล เนื่องจากระบบฐานข้อมูลมีระบบจัดการฐานข้อมูลทำหน้าที่แปลงรูป (mapping) ให้เป็นไปตามรูปแบบที่ผู้ใช้ต้องการ
         

              3. แฟ้มข้อมูลมีความซ้ำซ้อนมาก

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


              4. แฟ้มข้อมูลมีความถูกต้องของข้อมูลน้อย

              เนื่องจากแฟ้มข้อมูลไม่สามารถตรวจสอบกฎบังคับความถูกต้องของข้อมูลให้ได้ ถ้าต้องการควบคุมข้อมูลผู้พัฒนาโปรแกรมต้องเขียนโปรแกรมเพื่อควบคุมกฎระเบียบต่างๆ เองทั้งหมด ถ้าเขียนโปรแกรมครอบคลุมกฎระเบียบใดไม่ครบหรือขาดหายไปบางกฎอาจทำให้ข้อมูลผิดพลาดได้ ซึ่งต่างจากระบบฐานข้อมูลที่ระบบจัดการฐานข้อมูลจะมีกฏบังคับความถูกต้อง โดยนำกฎเหล่านั้นมาไว้ที่ฐานข้อมูล ซึ่งถือเป็นหน้าที่ของระบบจัดการฐานข้อมูลที่จะจัดการเรื่องความถูกต้องของข้อมูลให้แทน และยังช่วยลดค่าใช้จ่ายในการบำรุงรักษาและพัฒนาโปรแกรมด้วยเนื่องจากระบบจัดการฐานข้อมูลจัดการให้นั่นเอง
         

              5. แฟ้มข้อมูลมีความปลอดภัยน้อย

              ในระบบฐานข้อมูล ถ้าหากทุกคนสามารถเรียกดูและเปลี่ยนแปลงข้อมูลในฐานข้อมูลทั้งหมดได้ อาจก่อให้เกิดความเสียหายต่อข้อมูลได้ และข้อมูลบางส่วนอาจเป็นข้อมูลที่ไม่อาจเปิดเผยได้หรือเป็นข้อมูลเฉพาะของผู้บริหาร หากไม่มีการจัดการด้านความปลอดภัยของข้อมูล ฐานข้อมูลก็จะไม่สามารถใช้เก็บข้อมูลบางส่วนได้

          ระบบฐานข้อมูลส่วนใหญ่จะมีการรักษาความปลอดภัยของข้อมูล ดังนี้
     
             √ มีรหัสผู้ใช้ (user) และรหัสผ่าน (password) ในการเข้าใช้งานฐานข้อมูลสำหรับผุ้ใช้แต่ละคน
             √ ผู้บริหารฐานข้อมูล (Database Administrator; DBA) สามารถสร้างและจัดการตารางข้อมูลทั้ง
หมดในฐานข้อมูล ทั้งการเพิ่มผู้ใช้ ระงับการใช้งานของผู้ใช้ อนุญาตให้ผู้ใช้สามารถเรียกดู เพิ่มเติม ลบและแก้ไขข้อมูล หรือบางส่วนของข้อมูลได้ในตารางที่ได้รับอนุญาต
             √ ผู้บริหารฐานข้อมูล (DBA) สามารถใช้วิว (view) เพื่อประโยชน์ในการรักษาความปลอดภัยของข้อมูลได้เป็นอย่างดี โดยการสร้างวิวที่เสมือนเป็นตารางของผู้ใช้จริงๆ และข้อมูลที่ปรากฏในวิวจะเป็นข้อมูลที่เกี่ยวข้องกับงานของผู้ใช้เท่านั้น ซึ่งจะไม่กระทบกับข้อมูลจริงในฐานข้อมูล
             √ ระบบฐานข้อมูลจะไม่ยอมให้โปรแกรมใดๆ เข้าถึงข้อมูลในระดับกายภาพ (physical) โดยไม่ผ่าน DBMS
             √ มีการเข้ารหัสและถอดรหัส (encryption/decryption) เพื่อปกปิดข้อมูลแก่ผู้ที่ไม่เกี่ยวข้อง เช่น มีการเข้ารหัสข้อมูลรหัสผ่าน ซึ่งในส่วนต่างๆเหล่านี้ในระบบแฟ้มข้อมูลจะไม่มี

             6. ไม่มีการควบคุมจากศูนย์กลาง

             ระบบแฟ้มข้อมูลจะไม่มีการควบคุมการใช้ข้อมูลจากศูนย์กลาง เนื่องจากข้อมูลที่หน่วยงานย่อยใช้สามารถใช้ข้อมูลได้อย่างเสรีโดยไม่มีศูนย์กลางในการควบคุม ทำให้ไม่ทราบว่าหน่วยงานใดใช้ข้อมูลในระดับใดบ้าง ใครเป็นผู้นำข้อมูลเข้า ใครมีสิทธิแก้ไขข้อมูล และใครมีสิทธิเพียงเรียกใช้ข้อมูล


         

            เรื่องที่ 1.2.2 ฐานข้อมูล และระบบจัดการฐานข้อมูล

             ในปัจจุบันการจัดโครงสร้างข้อมูลให้เป็นแบบฐานข้อมูลกำลังเป็นที่นิยม เกือบทุกหน่วยงานที่มีการใช้ระบบสารสนเทศจะจัดทำข้อมูลให้เป็นแบบฐานข้อมูล เนื่องจากปริมาณข้อมูลมีมากถ้าจัดข้อมูลเป็นแบบแฟ้มข้อมูลจะทำให้มีแฟ้มข้อมูลเป็นจำนวนมาก ซึ่งจะทำให้เกิดข้อมูลที่ซ้ำซ้อนกันได้ ข้อมูลที่ซ้ำซ้อนนี้จะก่อให้เกิดปัญหามากมายแฟ้มข้อมูลจะทำให้มีแฟ้มข้อมูลเป็นจำนวนมาก ซึ่งจะทำให้เกิดข้อมูลที่ซ้ำซ้อนกันได้ ข้อมูลที่ซ้ำซ้อนนี้จะก่อให้เกิดปัญหามากมาย

            1.ความหมายของระบบฐานข้อมูล

            ฐานข้อมูล (database) หมายถึง กลุ่มของข้อมูลที่ถูกเก็บรวบรวมไว้ โดยมีความสัมพันธ์ซึ่งกันและกัน โดยไม่ได้บังคับว่าข้อมูลทั้งหมดนี้จะต้องเก็บไว้ในแฟ้มข้อมูลเดียวกันหรือแยกเก็บหลาย ๆ แฟ้มข้อมูลนั่นก็คือการเก็บข้อมูลในฐานข้อมูลนั้นเราอาจจะเก็บทั้งฐานข้อมูล โดยใช้แฟ้มข้อมูลเพียงแฟ้มข้อมูลเดียวกันได้ หรือจะเก็บไว้ในหลาย ๆ แฟ้มข้อมูล ที่สำคัญคือจะต้องสร้างความสัมพันธ์ระหว่างระเบียนและเรียกใช้ความสัมพันธ์นั้นได้ มีการกำจัดความซ้ำซ้อนของข้อมูลออกและเก็บแฟ้มข้อมูลเหล่านี้ไว้ที่ศูนย์กลาง เพื่อที่จะนำข้อมูลเหล่านี้มาใช้ร่วมกัน ควบคุมดูแลรักษาเมื่อผู้ต้องการใช้งานและผู้มีสิทธิ์จะใช้ข้อมูลนั้นสามารถดึงข้อมูลที่ต้องการออกไปใช้ได้ ข้อมูลบางส่วนอาจใช้ร่วมกับผู้อื่นได้แต่บางส่วนผู้มีสิทธิ์เท่านั้นจึงจะสามารถใช้ได้โดยทั่วไปองค์กรต่าง ๆ จะสร้างฐานข้อมูลไว้ เพื่อเก็บข้อมูลต่าง ๆ ของตัวองค์กร โดยเฉพาะอย่างยิ่งข้อมูลในเชิงธุรกิจ เช่น ข้อมูลของลูกค้า ข้อมูลของสินค้าข้อมูลของลูกจ้าง และการจ้างงาน เป็นต้น การควบคุมดูแลการใช้ฐานข้อมูลนั้น เป็นเรื่องที่ยุ่งยากกว่าการใช้แฟ้มข้อมูลมาก เพราะเราจะต้องตัดสินใจว่าโครงสร้างในการจัดเก็บข้อมูลควรจะเป็นเช่นไร การเขียนโปรแกรมเพื่อสร้างและเรียกใช้ข้อมูลจากโครงสร้างเหล่านี้ ถ้าโปรแกรมเหล่านี้เกิดทำงานผิดพลาดขึ้นมา ก็จะเกิดความเสียหายต่อโครงสร้างของข้อมูลทั้งหมดได้ เพื่อเป็นการลดภาวะการทำงานของผู้ใช้ จึงได้มีส่วนของฮาร์ดแวร์และโปรแกรมต่าง ๆ ที่สามารถเข้าถึงและจัดการข้อมูลในฐานข้อมูลนั้นเรียกว่า ระบบจัดการฐานข้อมูล หรือDBMS (data base management system) ระบบจัดการฐานข้อมูล คือซอฟต์แวร์ที่เปรียบเสมือนสื่อกลางระหว่างผู้ใช้และโปรแกรมต่าง ๆ ที่เกี่ยวข้องกับการใช้ฐานข้อมูล ซึ่งมีหน้าที่ช่วยให้ผู้ใช้เข้าถึงข้อมูลได้ง่ายสะดวกและมีประสิทธิภาพ การเข้าถึงข้อมูลของผู้ใช้อาจเป็นการสร้างฐานข้อมูล การแก้ไขฐานข้อมูล หรือการตั้งคำถามเพื่อให้ข้อมูลมา โดยผู้ใช้ไม่จำเป็นต้องรับรู้เกี่ยวกับรายละเอียดภายในโครงสร้างของฐานข้อมูล เปรียบเสมือนเป็นสื่อกลางระหว่างผู้ใช้และโปรแกรมต่างๆ ที่เกี่ยวข้องกับการใช้ฐานข้อมูล


            2.ความสำคัญของระบบฐานข้อมูล

            การจัดข้อมูลให้เป็นระบบฐานข้อมูลทำให้ข้อมูลมีส่วนดีกว่าการเก็บข้อมูลในรูปของแฟ้มข้อมูลเพราะการจัดเก็บข้อมูลในระบบฐานข้อมูล จะมีส่วนที่สำคัญกว่าการจัดเก็บข้อมูลในรูปของแฟ้มข้อมูลดังนี้
         
           2.1 ลดการเก็บข้อมูลที่ซ้ำซ้อน ข้อมูลบางชุดที่อยู่ในรูปของแฟ้มข้อมูลอาจมีปรากฏอยู่หลาย ๆ แห่งเพราะมีผู้ใช้ข้อมูลชุดนี้หลายคน เมื่อใช้ระบบฐานข้อมูลแล้วจะช่วยให้ความซ้ำซ้อนของข้อมูลลดน้อยลง เช่น ข้อมูลอยู่ในแฟ้มข้อมูลของผู้ใช้หลายคน ผู้ใช้แต่ละคนจะมีแฟ้มข้อมูลเป็นของตนเองระบบฐานข้อมูลจะลดการซ้ำซ้อนของข้อมูลเหล่านี้ให้มากที่สุด โดยจัดเก็บในฐานข้อมูลไว้ที่เดียวกัน ผู้ใช้ทุกคนที่ต้องการใช้ข้อมูลชุดนี้จะใช้โดยผ่านระบบฐานข้อมูล ทำให้ไม่เปลืองเนื้อที่ในการเก็บข้อมูลและลดความซ้ำซ้อนลงได้
            2.2 รักษาความถูกต้องของข้อมูล เนื่องจากฐานข้อมูลมีเพียงฐานข้อมูลเดียว ในกรณีที่มีข้อมูลชุดเดียวกันปรากฏอยู่หลายแห่งในฐานข้อมูล ข้อมูลเหล่านี้จะต้องตรงกัน ถ้ามีการแก้ไขข้อมูลนี้ทุก ๆแห่งที่ข้อมูลปรากฏอยู่จะแก้ไขให้ถูกต้องตามกันหมดโดยอัตโนมัติด้วยระบบจัดการฐานข้อมูล

            2.3 การป้องกันและรักษาความปลอดภัยให้กับข้อมูลทำได้อย่างสะดวก การป้องกันและรักษาความปลอดภัยกับข้อมูลระบบฐานข้อมูลจะให้เฉพาะผู้ที่เกี่ยวข้องเท่านั้นจึงจะมีสิทธิ์เข้าไปใช้ฐานข้อมูลได้เรียกว่ามีสิทธิส่วนบุคคล (privacy) ซึ่งก่อให้เกิดความปลอดภัย (security) ของข้อมูลด้วย ฉะนั้นผู้ใดจะมีสิทธิ์ที่จะเข้าถึงข้อมูลได้จะต้องมีการกำหนดสิทธิ์กันไว้ก่อนและเมื่อเข้าไปใช้ข้อมูลนั้น ๆ ผู้ใช้จะเห็นข้อมูลที่ถูกเก็บไว้ในฐานข้อมูลในรูปแบบที่ผู้ใช้ออกแบบไว้
             ตัวอย่างเช่น ผู้ใช้สร้างตารางข้อมูลขึ้นมาและเก็บลงในระบบฐานข้อมูล ระบบจัดการฐานข้อมูลจะเก็บข้อมูลเหล่านี้ลงในอุปกรณ์เก็บข้อมูลในรูปแบบของระบบจัดการฐานข้อมูลซึ่งอาจเก็บข้อมูลเหล่านี้ลงในแผ่นจานบันทึกแม่เหล็กเป็นระเบียนบล็อกหรืออื่น ๆ ผู้ใช้ไม่จำเป็นต้องรับรู้ว่าโครงสร้างของแฟ้มข้อมูลนั้นเป็นอย่างไร ปล่อยให้เป็นหน้าที่ของระบบจัดการฐานข้อมูล
             ดังนั้นถ้าผู้ใช้เปลี่ยนแปลงลักษณะการเก็บข้อมูล เช่น เปลี่ยนแปลงรูปแบบของตารางเสียใหม่ ผู้ใช้ก็ไม่ต้องกังวลว่าข้อมูลของเขาจะถูกเก็บลงในแผ่นจานบันทึกแม่เหล็กในลักษณะใดระบบการจัดการฐานข้อมูลจะจัดการให้ทั้งหมด ในทำนองเดียวกันถ้าผู้ออกแบบระบบฐานข้อมูลเปลี่ยนวิธีการเก็บข้อมูลลงบนอุปกรณ์จัดเก็บข้อมูล ผู้ใช้ก็ไม่ต้องแก้ไขฐานข้อมูลที่เขาออกแบบไว้แล้ว ระบบการจัดการฐานข้อมูลจะจัดการให้ ลักษณะ เช่นนี้เรียกว่า ความไม่เกี่ยวข้องกันของข้อมูล (data independent)
            2.4 สามารถใช้ข้อมูลร่วมกันได้ เนื่องจากในระบบฐานข้อมูลจะเป็นที่เก็บรวบรวมข้อมูลทุกอย่างไว้ ผู้ใช้แต่ละคนจึงสามารถที่จะใช้ข้อมูลในระบบได้ทุกข้อมูล ซึ่งถ้าข้อมูลไม่ได้ถูกจัดให้เป็นระบบฐานข้อมูลแล้ว ผู้ใช้ก็จะใช้ได้เพียงข้อมูลของตนเองเท่านั้น เช่น ดังภาพที่ 4.9 ข้อมูลของระบบเงินเดือนข้อมูลของระบบงานบุคคลถูกจัดไว้ในระบบแฟ้มข้อมูลผู้ใช้ที่ใช้ข้อมูลระบบเงินเดือน จะใช้ข้อมูลได้ระบบเดียว แต่ถ้าข้อมูลทั้ง 2 ถูกเก็บไว้เป็นฐานข้อมูลซึ่งถูกเก็บไว้ในที่ที่เดียวกัน ผู้ใช้ทั้ง 2 ระบบก็จะสามารถเรียกใช้ฐานข้อมูลเดียวกันได้ไม่เพียงแต่ข้อมูลเท่านั้นสำหรับโปรแกรมต่าง ๆ ถ้าเก็บไว้ในฐานข้อมูลก็จะสามารถใช้ร่วมกันได้
           2.5 มีความเป็นอิสระของข้อมูล เมื่อผู้ใช้ต้องการเปลี่ยนแปลงข้อมูลหรือนำข้อมูลมาประยุกต์ใช้ให้เหมาะสมกับโปรแกรมที่เขียนขึ้นมา จะสามารถสร้างข้อมูลนั้นขึ้นมาใช้ใหม่ได้ โดยไม่มีผลกระทบต่อระบบฐานข้อมูล เพราะข้อมูลที่ผู้ใช้นำมาประยุกต์ใช้ใหม่นั้นจะไม่กระทบต่อโครงสร้างที่แท้จริงของการจัดเก็บข้อมูลนั่นคือ การใช้ระบบฐานข้อมูลจะทำให้เกิดความเป็นอิสระระหว่างการจัดเก็บข้อมูลและการประยุกต์ใช้
          2.6 สามารถขยายงานได้ง่าย เมื่อต้องการจัดเพิ่มเติมข้อมูลที่เกี่ยวข้องจะสามารถเพิ่มได้อย่างง่ายไม่ซับซ้อน เนื่องจากมีความเป็นอิสระของข้อมูล จึงไม่มีผลกระทบต่อข้อมูลเดิมที่มีอยู่
          2.7 ทำให้ข้อมูลบูรณะกลับสู่สภาพปกติได้เร็วและมีมาตรฐาน เนื่องจากการจัดพิมพ์ข้อมูลในระบบที่ไม่ได้ใช้ฐานข้อมูล ผู้เขียนโปรแกรมแต่ละคนมีแฟ้มข้อมูลของตนเองเฉพาะ ฉะนั้นแต่ละคนจึงต่างก็สร้างระบบ การบูรณะข้อมูลให้กลับสู่สภาพปกติในกรณีที่ข้อมูลเสียหายด้วยตนเองและด้วยวิธีการของตนเอง จึงขาดประสิทธิภาพและมาตรฐาน แต่เมื่อมาเป็นระบบฐานข้อมูลแล้ว การบูรณะข้อมูลให้กลับคืนสู่สภาพปกติจะมีโปรแกรมชุดเดียวและมีผู้ดูแลเพียงคนเดียวที่ดูแลทั้งระบบ ซึ่งย่อมต้องมีประสิทธิภาพและเป็นมาตรฐานเดียวกันแน่นอน



               3.การบริหารฐานข้อมูล

              ในระบบฐานข้อมูลนอกจากจะมีระบบการจัดการฐานข้อมูล ซึ่งเป็นซอฟต์แวร์ที่สร้างขึ้นเพื่อจัดการกับข้อมูลให้เป็นระบบ จะได้นำไปเก็บรักษา เรียกใช้ หรือนำมาปรับปรุงให้ทันสมัยได้ง่ายแล้ว ในระบบฐานข้อมูลยังต้องประกอบด้วยบุคคลที่มีหน้าที่ควบคุมดูแลระบบฐานข้อมูล คือ ผู้บริหารฐานข้อมูล            
              เหตุผลสำหรับประการหนึ่งของการจัดทำระบบจัดการฐานข้อมูล คือ การมีศูนย์กลางควบคุมทั้งข้อมูลและโปรแกรมที่เข้าถึงข้อมูลเหล่านั้น บุคคลที่มีอำนาจหน้าที่ดูแลการควบคุมนี้ เรียกว่า ผู้บริหารฐานข้อมูล หรือ DBA (data base administor) คือ ผู้มีหน้าที่ควบคุมการบริหารงานของฐานข้อมูลทั้งหมด
           

              4. หน้าที่ของผู้บริหารฐานข้อมูล

              4.1 กำหนดโครงสร้างหรือรูปแบบของฐานข้อมูล โดยทำการวิเคราะห์และตัดสินใจว่าจะรวมข้อมูลใดเข้าไว้ในระบบใดบ้าง ควรจะจัดเก็บข้อมูลด้วยวิธีใด และใช้เทคนิคใดในการเรียกใช้ข้อมูลอย่างไร
              4.2 กำหนดโครงสร้างของอุปกรณ์เก็บข้อมูลและวิธีการเข้าถึงข้อมูล โดยกำหนดโครงสร้างของอุปกรณ์เก็บข้อมูลและวิธีการเข้าถึงข้อมูล พร้อมทั้งกำหนดแผนการในการสร้างระบบข้อมูลสำรองและการฟื้นสภาพ โดยการจัดเก็บข้อมูลสำรองไว้ทุกระยะ และจะต้องเตรียมการไว้ว่าถ้าเกิดความผิดพลาดขึ้นแล้วจะทำการฟื้นสภาพได้อย่างไร
             4.3 มอบหมายขอบเขตอำนาจหน้าที่ของการเข้าถึงข้อมูลของผู้ใช้ โดยการประสานงานกับผู้ใช้ให้คำปรึกษา ให้ความช่วยเหลือแก่ผู้ใช้ และตรวจตราความต้องการของผู้ใช้
           

             5.ระบบการจัดการฐานข้อมูล (data base management system, DBMS)


             หน้าที่ของระบบการจัดการฐานข้อมูล
             5.1ระบบจัดการฐานข้อมูลเป็นซอฟต์แวร์ที่ทำหน้าที่ดังต่อไปนี้ ดูแลการใช้งานให้กับผู้ใช้ในการติดต่อกับตัวจัดการระบบแฟ้มข้อมูลได้ ในระบบฐานข้อมูลนี้ข้อมูลจะมีขนาดใหญ่ ซึ่งจะถูกจัดเก็บไว้ในหน่วยความจำสำรองเมื่อผู้ใช้ต้องการจะใช้ฐานข้อมูล ระบบการจัดการฐานข้อมูลจะทำหน้าที่ติดต่อกับระบบแฟ้มข้อมูลซึ่งเสมือนเป็นผู้จัดการแฟ้มข้อมูล (file manager) นำข้อมูลจากหน่วยความจำสำรองเข้าสู่หน่วยความจำหลักเฉพาะส่วนที่ต้องการใช้งาน และทำหน้าที่ประสานกับตัวจัดการระบบแฟ้มข้อมูลในการจัดเก็บ เรียกใช้ และแก้ไขข้อมูล
            5.2 ควบคุมระบบความปลอดภัยของข้อมูลโดยป้องกันไม่ให้ผู้ที่ไม่ได้รับอนุญาตเข้ามาเรียกใช้หรือ แก้ไขข้อมูลในส่วนป้องกันเอาไว้ พร้อมทั้งสร้างฟังก์ชันในการจัดทำข้อมูลสำรอง โดยเมื่อเกิดมีความขัดข้องของระบบแฟ้มข้อมูลหรือของเครื่องคอมพิวเตอร์เกิดการเสียหายนั้น ฟังก์ชันนี้จะสามารถทำการฟื้นสภาพของระบบข้อมูลกลับเข้าสู่สภาพที่ถูกต้องสมบูรณ์ได้
            5.3 ควบคุมการใช้ข้อมูลในสภาพที่มีผู้ใช้พร้อม ๆ กันหลายคน โดยจัดการเมื่อมีข้อผิดพลาดของข้อมูลเกิดขึ้น



     

         

           

           

                   เรื่องที่ 1.2.3 ประโยชน์ของระบบจัดการฐานข้อมูล

             ในปัจจุบันองค์กรส่วนใหญ่หันมาให้ความสนใจกับระบบฐานข้อมูลกันมาก เนื่องจากระบบฐานข้อมูลมีประโยชน์ดังต่อไปนี้


             1.ลดความซ้ำซ้อนของข้อมูล

             เนื่องจากการใช้งานระบบฐานข้อมูลนั้นต้องมีการออกแบบฐานข้อมูลเพื่อให้มีความซ้ำซ้อนของข้อมูลน้อยที่สุด จุดประสงค์หลักของการออกแบบฐานข้อมูลเพื่อการลดความซ้ำซ้อน สาเหตุที่ต้องลดความซ้ำซ้อน เนื่องจากความยากในการปรับปรุงข้อมูล กล่าวคือถ้าเก็บข้อมูลซ้ำซ้อนกันหลายแห่ง เมื่อมีการปรับปรุงข้อมูลแล้วปรับปรุงข้อมูลไม่ครบทำให้ข้อมูลเกิดความขัดแย้งกันของข้อมูลตามมา และยังเปลืองเนื้อที่การจัดเก็บข้อมูลด้วย เนื่องจากข้อมูลชุดเดียวกันจัดเก็บซ้ำกันหลายแห่งนั่นเอง


            ถึงแม้ว่าความซ้ำซ้อนช่วยให้ออกรายงานและตอบคำถามได้เร็วขึ้น แต่ข้อมูลจะเกิดความขัดแย้งกันในกรณีที่ต้องมีการปรับปรุงข้อมูลหลายแห่ง การออกรายงานจะทำได้เร็วเท่าใดนั้นจึงไม่มีความหมายแต่อย่างใด และเหตุผลที่สำคัญอีกประการหนึ่งคือปัญหาเรื่องความขัดแย้งกันของข้อมูลแก้ไขไม่ได้ด้วยฮาร์ดแวร์ขณะที่การออกรายงานช้านั้นใช้ความสามารถของฮาร์ดแวร์ช่วยได้



         

             2.รักษาความถูกต้องของข้อมูล

             เนื่องจากระบบจัดการฐานข้อมูลสามารถตรวจสอบกฎบังคับความถูกต้องของข้อมูลให้ได้ โดยนำกฎเหล่านั้นมาไว้ที่ฐานข้อมูล ซึ่งถือเป็นหน้าที่ของระบบจัดการฐานข้อมูลที่จะจัดการเรื่องความถูกต้องของข้อมูลให้แทน แต่ถ้าเป็นระบบแฟ้มข้อมูลผู้พัฒนาโปรแกรมต้องเขียนโปรแกรมเพื่อควบคุมกฎระเบียบต่างๆ(data integrity) เองทั้งหมด ถ้าเขียนโปรแกรมครอบคลุมกฎระเบียบใดไม่ครบหรือขาดหายไปบางกฎอาจทำให้ข้อมูลผิดพลาดได้ และยังช่วยลดค่าใช้จ่ายในการบำรุงรักษาและพัฒนาโปรแกรมด้วย เนื่องจากระบบจัดการฐานข้อมูลจัดการให้นั่นเอง เนื่องจากระบบจัดการฐานข้อมูลสามารถรองรับการใช้งานของผู้ใช้หลายคนพร้อมกันได้ ดังนั้นความคงสภาพและความถูกต้องของข้อมูลจึงมีความสำคัญมากและต้องควบคุมให้ดีเนื่องจากผู้ใช้อาจเปลี่ยนแปลงแก้ไขข้อมูลได้ ซึ่งจะทำให้เกิดความผิดพลาดกระทบต่อการใช้ข้อมูลของผู้ใช้อื่นทั้งหมดได้ ดังนั้นประโยชน์ของระบบฐานข้อมูลในเรื่องนี้จึงมีความสำคัญมาก

       

            3. มีความเป็นอิสระของข้อมูล

           เนื่องจากมีแนวคิดที่ว่าทำอย่างไรให้โปรแกรมเป็นอิสระจากการเปลี่ยนแปลงโครงสร้างข้อมูล ในปัจจุบันนี้ถ้าไม่ใช้ระบบฐานข้อมูลการแก้ไขโครงสร้างข้อมูลจะกระทบถึงโปรแกรมด้วย เนื่องจากในการเรียกใช้ข้อมูลที่เก็บอยู่ในระบบแฟ้มข้อมูลนั้น ต้องใช้โปรแกรมที่เขียนขึ้นเพื่อเรียกใช้ข้อมูลในแฟ้มข้อมูลนั้นโดยเฉพาะ เช่น เมื่อต้องการรายชื่อพนักงานที่มีเงินเดือนมากกว่า 100,000 บาทต่อเดือนโปรแกรมเมอร์ต้องเขียนโปรแกรมเพื่ออ่านข้อมูลจากแฟ้มข้อมูลพนักงานและพิมพ์รายงานที่แสดงเฉพาะข้อมูลที่ตรงตามเงื่อนไขที่กำหนด กรณีที่มีการเปลี่ยนแปลงโครงสร้างของแฟ้มข้อมูลข้อมูลเช่นให้มีดัชนี (index) ตามชื่อพนักงานแทนรหัสพนักงาน ส่งผลให้รายงานที่แสดงรายชื่อพนักงานที่มีเงินเดือนมากกว่า 100,000 บาทต่อเดือนซึ่งแต่เดิมกำหนดให้เรียงตามรหัสพนักงานนั้นไม่สามารถพิมพ์ได้ทำให้ต้องมีการแก้ไขโปรแกรมตามโครงสร้างดัชนี (index) ที่เปลี่ยนแปลงไป ลักษณะแบบนี้เรียกว่าข้อมูลและโปรแกรมไม่เป็นอิสระต่อกัน

           สำหรับระบบฐานข้อมูลนั้นข้อมูลภายในฐานข้อมูลจะเป็นอิสระจากโปรแกรมที่เรียกใช้(data independence) สามารถแก้ไขโครงสร้างทางกายภาพของข้อมูลได้ โดยไม่กระทบต่อโปรแกรมที่เรียกใช้ข้อมูลจากฐานข้อมูล เนื่องจากระบบฐานข้อมูลมีระบบจัดการฐานข้อมูลทำหน้าที่แปลงรูป (mapping) ให้เป็นไปตามรูปแบบที่ผู้ใช้ต้องการ เนื่องจากในระบบแฟ้มข้อมูลนั้นไม่มีความเป็นอิสระของข้อมูล ดังนั้นระบบฐานข้อมูลได้ถูกพัฒนาขึ้นมาเพื่อแก้ปัญหาด้านความเป็นอิสระของข้อมูล นั่นคือระบบฐานข้อมูลมีการทำงานไม่ขึ้นกับรูปแบบของฮาร์ดแวร์ที่นำมาใช้กับระบบฐานข้อมูลและไม่ขึ้นกับโครงสร้างทางกายภาพของข้อมูล และมีการใช้ภาษาสอบถามในการติดต่อกับข้อมูลภายในฐานข้อมูลแทนคำสั่งของภาษาคอมพิวเตอร์ในยุคที่ 3 ทำให้ผู้ใช้เรียกใช้ข้อมูลจากฐานข้อมูลโดยไม่จำเป็นต้องทราบรูปแบบการจัดเก็บข้อมูล ประเภทหรือขนาดของข้อมูลนั้นๆ


            4. มีความปลอดภัยของข้อมูลสูง

            ถ้าหากทุกคนสามารถเรียกดูและเปลี่ยนแปลงข้อมูลในฐานข้อมูลทั้งหมดได้ อาจก่อให้เกิดความเสียหายต่อข้อมูลได้ และข้อมูลบางส่วนอาจเป็นข้อมูลที่ไม่อาจเปิดเผยได้หรือเป็นข้อมูลเฉพาะของผู้บริหาร หากไม่มีการจัดการด้านความปลอดภัยของข้อมูล ฐานข้อมูลก็จะไม่สามารถใช้เก็บข้อมูลบางส่วนได้
             ระบบฐานข้อมูลส่วนใหญ่จะมีการรักษาความปลอดภัยของข้อมูล ดังนี้
           √ มีรหัสผู้ใช้ (user) และรหัสผ่าน (password) ในการเข้าใช้งานฐานข้อมูลสำหรับผู้ใช้แต่ละคนระบบฐานข้อมูลมีระบบการสอบถามชื่อพร้อมรหัสผ่านของผู้เข้ามาใช้ระบบงานเพื่อให้ทำงานในส่วนที่เกี่ยวข้องเท่านั้น โดยป้องกันไม่ให้ผู้ที่ไม่ได้รับอนุญาตเข้ามาเห็นหรือแก้ไขข้อมูลในส่วนที่ต้องการปกป้องไว้
           √ ในระบบฐานข้อมูลสามารถสร้างและจัดการตารางข้อมูลทั้งหมดในฐานข้อมูล ทั้งการเพิ่มผู้ใช้ระงับการใช้งานของผู้ใช้ อนุญาตให้ผู้ใช้สามารถเรียกดู เพิ่มเติม ลบและแก้ไขข้อมูล หรือบางส่วนของข้อมูลได้ในตารางที่ได้รับอนุญาต) ระบบฐานข้อมูลสามารถกำหนดสิทธิการมองเห็นและการใช้งานของผู้ใช้ต่างๆตามระดับสิทธิและอำนาจการใช้งานข้อมูลนั้นๆ
          √ ในระบบฐานข้อมูล (DBA) สามารถใช้วิว (view) เพื่อประโยชน์ในการรักษาความปลอดภัยของข้อมูลได้เป็นอย่างดี โดยการสร้างวิวที่เสมือนเป็นตารางของผู้ใช้จริงๆ และข้อมูลที่ปรากฏในวิวจะเป็นข้อมูลที่เกี่ยวข้องกับงานของผู้ใช้เท่านั้น ซึ่งจะไม่กระทบกับข้อมูลจริงในฐานข้อมูล
           √ ระบบฐานข้อมูลจะไม่ยอมให้โปรแกรมใดๆ เข้าถึงข้อมูลในระดับกายภาพ (physical) โดยไม่ผ่านระบบการจัดการฐานข้อมูล และถ้าระบบเกิดความเสียหายขึ้นระบบจัดการฐานข้อมูลรับรองได้ว่าข้อมูลที่ยืนยันการทำงานสำเร็จ (commit) แล้วจะไม่สูญหาย และถ้ากลุ่มงานที่ยังไม่สำเร็จ (rollback) นั้นระบบจัดการฐานข้อมูลรับรองได้ว่าข้อมูลเดิมก่อนการทำงานของกลุ่มงานยังไม่สูญหาย
          √ มีการเข้ารหัสและถอดรหัส (encryption/decryption) เพื่อปกปิดข้อมูลแก่ผู้ที่ไม่เกี่ยวข้อง เช่น มี
การเข้ารหัสข้อมูลรหัสผ่าน


          5. ใช้ข้อมูลร่วมกันโดยมีการควบคุมจากศูนย์กลาง

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

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


              เนื่องจากระบบจัดการฐานข้อมูลนั้นสามารถจัดการให้ผู้ใช้ทำงานพร้อมๆ กันได้หลายคน ดังนั้นโปรแกรมที่พัฒนาภายใต้การดูแลของระบบจัดการฐานข้อมูลจะสามารถใช้ข้อมูลร่วมกันในฐานข้อมูลเดียวกันระบบฐานข้อมูลจะแบ่งเบาภาระในการพัฒนาระบบงานถ้าการพัฒนาระบบงานไม่ใช้ระบบฐานข้อมูล (ใช้ระบบแฟ้มข้อมูล) ผู้พัฒนาโปรแกรมจะต้องจัดการสิ่งเหล่านี้เองทั้งหมด นั่นคือระบบฐานข้อมูลทำให้การใช้ข้อมูลเกิดความเป็นอิสระระหว่างการจัดเก็บข้อมูลและการประยุกต์ใช้ เพราะส่วนของการจัดเก็บข้อมูลจริงถูกซ่อนจากการใช้งานจริงนั่นเอง



ขอบคุณทุกท่านที่ติดตามอ่านครับผม

















วันพฤหัสบดีที่ 28 มีนาคม พ.ศ. 2556

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

ตอนที่ 1.1 แนวคิดเกี่ยวกับการจัดเก็บข้อมูล


เรื่องที่ 1.1.1ความรู้พื้นฐานเรื่องเขตข้อมูล ระเบียน และแฟ้มข้อมูล


          การประมวลผลด้วยเครื่องคอมพิวเตอร์ ข้อมูลนับเป็นส่วนที่สำคัญยิ่งของการประมวลผลเพราะถ้าปราศจากข้อมูล การประมวลผลก็ไม่อาจทำได้ ข้อมูลที่ใช้ในการประมวลผลด้วยเครื่องคอมพิวเตอร์จะเป็นข้อมูลที่จัดเก็บเป็นแฟ้มข้อมูล (File) โดยแบ่งอกเป็นเรื่องตามชื่อแฟ้มข้อมูลนั้น เช่น แฟ้มข้อมูลเรื่องลูกค้า แฟ้มข้อมูลเรื่องสินค้า แฟ้มข้อมูลเรื่องการขาย แฟ้มข้อมูลเรื่องเช็คธนาคาร เป็นต้น ในการแบ่งเช่นนี้ แต่ละแฟ้มข้อมูลก็จะประกอบด้วยข้อมูลในเรื่องเดียวกัน เช่น เมื่อหยิบแฟ้มข้อมูลลูกค้า จะมีรายละเอียดของลูกค้าทุกคนโดยทั่วไปกิจการจะมีการจัดข้อมูลให้ง่ายต่อการใช้ (File organization) โดยจัดเป็นโครงสร้างของแฟ้มข้อมูลที่ถูกจัดเก็บบนอุปกรณ์เก็บข้อมูลของเครื่องคอมพิวเตอร์ เช่น การจัดเก็บข้อมูลแบบเรียงลำดับตัวอักษรชื่อเป็นต้น เมื่อมีความต้องการรายละเอียดของลูกค้าคนใด ก็จะนำแฟ้มข้อมูลลูกค้าออกมาเปิด และดึงเอารายละเอียดของลูกค้านั้นออกมา ซึ่งรายละเอียดของลูกค้าแต่ละคนอาจประกอบด้วยข้อมูลเกี่ยวกับ ชื่อ ที่อยู่ เบอร์โทรศัพท์ เป็นต้น รายละเอียดของลูกค้าแต่ละคนนี้ เรียกว่า ระเบียนหรือเรคอร์ด แฟ้มข้อมูลหนึ่ง ๆ จะประกอบด้วยระเบียนหลาย ๆ ระเบียน

      1.เขตข้อมูล

           การประมวลผลข้อมูลเพื่อให้ได้สารสนเทศ จะมีองค์ประกอบที่สำคัญอย่างหนึ่งคือ แฟ้มข้อมูล ความหมายของแฟ้มข้อมูลหนึ่ง ๆ นั้น มักจะเป็นเอกสารที่เป็นเรื่องเดียวกันและจัดเก็บรวบรวมไว้เป็นแฟ้มข้อมูลเพื่อสะดวกในการค้นหาข้อมูล เช่น แฟ้มข้อมูลประวัติพนักงาน การเก็บรวบรวมข้อมูลในรูปของเอกสารเพื่อประโยชน์ในการใช้งาน ถ้าข้อมูลที่เก็บรวบรวมไว้มีจำนวนน้อยความยุ่งยากในการค้นหาหรือในการจัดเก็บก็จะไม่เกิดขึ้น แต่ถ้าข้อมูลที่เก็บรวบรวมไว้มีจำนวนมากจะมีปัญหาเกิดขึ้นในเรื่องของการค้นหาข้อมูลนั้นและสิ้นเปลืองพื้นที่ในการจัดเก็บข้อมูลนั้น ๆ วิธีการแก้ปัญหาการจัดเก็บแฟ้มข้อมูลที่อยู่ในรูปของเอกสารเมื่อข้อมูลมีจำนวนมากขึ้นก็คือการนำข้อมูลเหล่านั้นเก็บไว้ในระบบคอมพิวเตอข้อมูลทั้งหมดจะถูกเก็บรวบรวมไว้เป็นแฟ้มข้อมูล เช่นเดียวกับการจัดเก็บเป็นเอกสารแต่จะเป็นแฟ้มข้อมูลที่ถูกจัดเก็บไว้ในอุปกรณ์ของคอมพิวเตอร์ เช่น แผ่นจานบันทึกแม่เหล็กหรือเทปแม่เหล็ก
       
         ข้อมูล หมายถึง กลุ่มของสารสนเทศที่สัมพันธ์กัน ความสัมพันธ์ของกลุ่มสารสนเทศหรือข้อมูลนั้นถูกกำหนดโดยผู้ใช้แฟ้มข้อมูล ข้อมูลเป็นส่วนประกอบสำคัญในการทำงานของคอมพิวเตอร์ เพราะข้อมูลเป็นวัตถุดิบในการประมวลผลข้อมูลทั้งหมดที่จัดการโดยคอมพิวเตอร์ประกอบด้วยบิต (bit) ซึ่งเป็นโครงสร้างที่เล็กที่สุดในแต่ละบิตจะเป็นตัวเลขในระบบเลขฐานสอง ประกอบด้วย 0 และ 1 ซึ่งนำมาใช้แทน ระหว่างสองสถานะ เช่น จริง-เท็จ เปิด-ปิด เป็นต้น เพื่อให้สามารถแสดงสารสนเทศได้มากขึ้น บิตจึงถูกรวมต่อกันเข้าเป็นสายเพื่อแสดงสารสนเทศ โดยนำบิตเหล่านั้นมาทำให้เป็นหน่วยที่ใหญ่ขึ้นเรียกว่าไบต์ (byte) ไบต์ ประกอบขึ้นมาจากบิตหลาย ๆ บิตมาเรียงต่อกัน แต่เนื่องจากคอมพิวเตอร์เข้าใจเพียงเลข 0 และเลข 1 เท่านั้นถ้าต้องการให้คอมพิวเตอร์รูปจักอักขระตัวอักษร A,B….,Z จะต้องมีการเอาเลข 0 และเลข 1 มาเรียงต่อกันเป็นรหัสแทนอักขระ โดยปกติ 1 ตัวอักขระจะมีความยาว 8 บิต ซึ่งเท่ากับ 1 ไบต์ จำนวนบิตที่ นำมาเรียงต่อกันเป็นไบต์นี้แตกต่างกันไปตามรหัสแทนข้อมูล รหัสแทนข้อมูลที่ใช้กันแพร่หลายมี 2 ระบบคือ รหัสเอบซีดิก (EBCDIC) และรหัสแอสกี (ASCII) ใช้ 8 บิต รวมกันเป็น 1 ไบต์ โดย 1 ไบต์ จะใช้แทนอักขระ 1 ตัว

         เมื่อเรานำอักขระหลายๆตัวรวมกันโดยมีความหมายอย่างใดอย่างหนึ่งเราจะเรียกว่า เขตข้อมูลหรือฟิลด์ (filed) เช่น การรวมของตัวอักษรและตัวเลขเพื่อใช้แทนรหัสลูกค้า เช่น ‘C0100001’ เป็นต้น ฟิลด์คือ กลุ่มของอักขระที่สัมพันธ์กันตั้งแต่ 1 ตัวขึ้นไปที่นำมารวมกันแล้วแสดงลักษณะหรือความหมายอย่างใดอย่างหนึ่ง
     ฟิลด์ คือ กลุ่มของอักขระทีสัมพันธ์กัน ตั้งแต่ 1 ตัวขึ้นไปที่นำมารวมกันแล้วแสดงลักษณะหรือความหมายอย่างใดอย่างหนึ่ง ฟิลด์แต่ละฟิลด์ยังแยกออกเป็นประเภทข้อมูล ซึ่งจะบ่งบอกว่าในเขตฟิลด์นั้นบรรจุข้อ มูลประเภทใดไว้ สามารถแยกประเภทของฟิลด์ได้เป็น 3 ประเภทคือ

- ฟิลด์ตัวเลข (numeric field) ประกอบด้วย อักขระที่เป็นตัวเลข ซึ่งอาจเป็นเลขจำนวนเต็มหรือทศ
นิยมและอาจมีเครื่องหมายลบหรือบวก เช่น ยอดคงเหลือในบัญชีเป็นกลุ่มของตัวเลข

- ฟิลด์ตัวอักษร (alphabetic field) ประกอบด้วย อักขระที่เป็นตัวอักษรหรือช่องว่าง (blank) เช่น ชื่อ
ลูกค้าเป็นกลุ่มของตัวอักษร

- ฟิลด์อักขระ (character field หรือ alphanumeric field) ประกอบด้วย อักขระซึ่งอาจจะเป็นตัวเลข
หรือตัวอักษรก็ได้ เช่น ที่อยู่ของลูกค้า
     
      ข้อมูลที่ปรากฏอยู่ในฟิลด์ เป็นหน่วยย่อยของระเบียนที่บรรจุอยู่ในแฟ้มข้อมูล เช่น ฟิลด์เลขรหัสประจำตัวบุคลากร ฟิลด์เงินเดือนของลูกจ้าง หรือฟิลด์เลขหมายโทรศัพท์ของพนักงาน ตัวอย่าง เช็คของธนาคารแห่งหนึ่งประกอบด้วย ชื่อที่อยู่ธนาคาร เช็คเลขที่ จ่ายจำนวนเงินเป็นตัวเลข จำนวนเงินเป็นตัวอักษร สาขาเลขที่ เลขที่บัญชี และลายเซ็น
        ฟิลด์บางฟิลด์อาจจะประกอบด้วยข้อมูลหลาย ๆ ประเภทรวมกันในฟิลด์ เช่น ฟิลด์วันที่ประกอบ
ด้วย 3 ฟิลด์ย่อย ๆ คือ วันที่ เดือน และปี หรือในฟิลด์ชื่อธนาคาร ยังประกอบด้วยหลายฟิลด์ย่อย ๆ คือ ชื่อ ธนาคาร ที่อยู่ เมือง ประเทศ และรหัสไปรษณีย์


       2.ระเบียน

         ระเบียนหรือเรคอร์ด (record) คือ กลุ่มของฟิลด์ที่สัมพันธ์กัน ประกอบขึ้นมาจากข้อมูลพื้นฐานต่างประเภทกันรวมขึ้นมาเป็น 1 ระเบียน ระเบียนจะประกอบด้วย ฟิลด์ ต่างประเภทกันอยู่รวมกันเป็นชุด เช่นระเบียนของเช็คแต่ละระเบียน จะประกอบด้วยฟิลด็ ชื่อธนาคาร เช็คเลขที่ วันที่ สั่งจ่าย จำนวนเงิน สาขาเลขที่ เลขที่บัญชี ข้อมูลเช็คธนาคารประกอบด้วยฟิลด์ต่าง ๆ
         ระเบียนแต่ละระเบียนจะมีฟิลด์ที่ใช้อ้างอิงถึงข้อมูลในระเบียนนั้น ๆ อย่างน้อย 1 ฟิลด์เสมอ ฟิลด์ที่ใช้อ้างอิงนี้เรียกว่าคีย์ฟิลด์ (key field) ในทุกระเบียนจะมีฟิลด์หนึ่งที่ถูกใช้เป็นคีย์ฟิลด์ ฟิลด์ที่ถูกใช้เป็นคีย์จะเป็นฟิลด์ที่มีค่าไม่ซ้ำกันในแต่ละระเบียน (unique) เพื่อสะดวกในการจัดเรียงระเบียนในแฟ้มข้อมูลและการจัดโครงสร้างของแฟ้มข้อมูล เช่น ระเบียนของเช็คธนาคาร จะใช้เลขที่บัญชีเป็นคีย์ฟิลด์ ระเบียนแฟ้มข้อมูลพนักงานใช้เลขประจำตัวพนักงานเป็นคีย์ฟิลด์สามารถสรุปโครงสร้างของแฟ้มข้อมูลได้ดังนี้



ภาพที่ 1.1 แสดงโครงสร้างของแฟ้มข้อมูล

          3.ชนิดของข้อมูล

          ข้อมูลที่ต้องการจัดเก็บนั้นอาจจะมีรูปแบบได้หลายอย่าง รูปแบบสำคัญ ๆ ได้แก่
          3.1 ข้อมูลแบบรูปแบบ (formatted data) เป็นข้อมูลที่รวมอักขระซึ่งอาจหมายถึงตัวอักษร ตัวเลขซึ่งเป็นรูปแบบที่แน่นอน ในแต่ละระเบียน ทุกระเบียนที่อยู่ในแฟ้มข้อมูลจะมีรูปแบบที่เหมือนกันหมดข้อมูลที่เก็บนั้นอาจเก็บในรูปของรหัสโดยเมื่ออ่านข้อมูลออกมาอาจจะต้องนำรัหสนั้นมาตีความหมายอีกครั้ง เช่น แฟ้มข้อมูลประวัตินักศึกษา
         3.2 ข้อมูลแบบข้อความ (text)เป็นข้อมูลที่เป็นอักขระในแบบข้อความ ซึงอาจหมายถึงตัวอักษร ตัวเลข สมการฯ แต่ไม่รวมภาพต่าง ๆ นำมารวมกันโดยไม่มีรูปแบบที่แน่นอนในแต่ละระเบียน เช่น ระบบการจัดเก็บข้อความต่าง ๆ ลักษณะการจัดเก็บแบบนี้จะไม่ต้องนำข้อมูลที่เก็บมาตีความหมายอีก ความหมายจะถูกกำหนดแล้วในข้อความ
        3.3 ข้อมูลแบบภาพลักษณ์ (images) เป็นข้อมูลที่เป็นภาพ ซึ่งอาจเป็นภาพกราฟที่ถูกสร้างขึ้นจากข้อมูลแบบรูปแบบรูปภาพ หรือภาพวาด คอมพิวเตอร์สามารถเก็บภาพและจัดส่งภาพเหล่านี้ไปยังคอมพิวเตอร์อื่นได้ เหมือนกับการส่งข้อความ โดยคอมพิวเตอร์จะทำการแปลงภาพเหล่านี้ ซึ่งจะทำให้คอมพิวเตอร์สามารถที่จะปรับขยายภาพและเคลื่อนย้ายภาพเหล่านั้นได้เหมือนกับข้อมูลแบบข้อความ
       3.4 ข้อมูลแบบเสียง (audio) เป็นข้อมูลที่เป็นเสียง ลักษณะของการจัดเก็บก็จะเหมือนกับการจัดเก็บข้อมูลแบบภาพ คือ คอมพิวเตอร์จะทำการแปลงเสียงเหล่านี้ให้คอมพิวเตอร์สามารถนำไปเก็บได้ตัวอย่างได้แก่ การตรวจคลื่นหัวใจ จะเก็บเสียงเต้นของหัวใจ
       3.5 ข้อมูลแบบภาพและเสียง (video) เป็นข้อมูลที่เป็นเสียงและรูปภาพ ที่ถูกจัดเก็บไว้ด้วยกัน เป็นการผสมผสานรูปภาพและเสียงเข้าด้วยกัน ลักษณะของการจัดเก็บข้อมูล คอมพิวเตอร์จะทำการแปลงเสียงและรูปภาพนี้ เช่นเดียวกับข้อมูลแบบเสียงและข้อมูลแบบภาพลักษณะซึ่งจะนำมารวมเก็บไว้ในแฟ้มข้อมูลเดียวกัน


         4. ลักษณะของระบบแฟ้มข้อมูล

         การจัดการแฟ้มข้อมูลอย่างถูกต้องมีความสำคัญอย่างยิ่งต่อความมั่นคงปลอดภัย (security) ของข้อมูลที่อยู่ในแฟ้มข้อมูลและในแฟ้มข้อมูลเอง แนวคิดในการจัดการแฟ้มข้อมูลเริ่มจากการออกแบบแฟ้มข้อมูลให้เหมาะสมกับการเรียกค้นเรคอร์ดข้อมูลมาใช้ ไปจนถึงการสำรองแฟ้มข้อมูลและการกู้แฟ้มข้อมูล แฟ้มข้อมูลอาจจะมีได้สองลักษณะ คือ
        4.1 ระเบียนขนาดคงที่ (fixed length record)โดยปกติแล้วภายในแฟ้มข้อมูลจะจัดเก็บระเบียนอยู่ในรูปแบบใดแบบหนึ่งโดยเฉพาะ ทุกระเบียนจะประกอบด้วยหน่วยข้อมูลย่อยที่เหมือน ๆ กัน นั่นคือ โครงสร้างของทุกระเบียนในแฟ้มข้อมูลจะเป็นแบบเดียวกันหมด ถ้าขนาดของระเบียนมี จำนวนตัวอักขระเท่ากันหมดในทุก ๆ ระเบียนของแฟ้มข้อมูล ระเบียนนั้นจะถูกเรียกว่าระเบียนขนาดคงที่ (fixed length record)
      4.2 ระเบียนที่มีความยาวแปรได้ (variable length record) คือทุกเรคอร์ดอาจจะมีจำนวนฟิลด์ต่างกัน และแต่ละฟิลด์ก็อาจจะมีความยาวต่างกันได้ แฟ้มข้อมูลประเภทนี้มีลักษณะโครงสร้างแบบพิเศษทีช่วยให้คอมพิวเตอร์สามารถบอกได้ว่าแต่ละเรคอร์ดมีความยาวเท่าใด และแต่ละฟิลด์เริ่มต้นตรงไหนและจบตรงไหน ตัวอย่างของแฟ้มประเภทนี้ได้แก่ แฟ้มบันทึกรายการใบสั่งซื้อสินค้า แต่ละเรคอร์ดจะแทนใบสั่งสินค้าหนึ่งใบ และใบสั่งสินค้าแต่ละใบอาจจะมีรายการสินค้าที่สั่งซื้อไม่เท่ากัน


        5. การจัดการแฟ้มข้อมูล

        กิจกรรมที่เกี่ยวข้องกับการจัดการแฟ้มข้อมูล (file manipulation) จะแตกต่างกันออกไปในแต่ละระบบงาน แต่จะมีกิจกรรมหลักในการใช้ข้อมูล ได้แก่
        5.1 การสร้างแฟ้มข้อมูล (file creating) คือ การสร้างแฟ้มข้อมูลเพื่อนำมาใช้ในการประมวลผล ส่วนใหญ่จะสร้างจากเอกสารเบื้องต้น (source document) การสร้างแฟ้มข้อมูลจะต้องเริ่มจากการพิจารณากำหนดสื่อข้อมูลการออกแบบฟอร์มของระเบียน การกำหนดโครงสร้างการจัดเก็บแฟ้มข้อมูล (file organization) บนสื่ออุปกรณ์
      5.2 การปรับปรุงรักษาแฟ้มข้อมูลแบ่งออกได้ 2 ประเภท คือ
             1) การค้นคืนระเบียนในแฟ้มข้อมูล (retrieving) คือ การค้นหาข้อมูลที่ต้องการหรือเลือกข้อมูลบางระเบียนมาใช้เพื่องานใดงานหนึ่ง การค้นหาระเบียนจะทำได้ ด้วยการเลือกคีย์ฟิลด์ เป็นตัวกำหนดเพื่อที่จะนำไปค้นหาระเบียนที่ต้องการในแฟ้มข้อมูล ซึ่งอาจจะมีการกำหนเงื่อนไขของการค้นหา เช่นต้องการหาว่าพนักงานที่ชื่อสมชายมีอยู่กี่คน
           2) การปรับเปลี่ยนข้อมูล (updating) เมื่อมีแฟ้มข้อมูลที่จะนำมาใช้ในการประมวลผลก็จำเป็นที่จะต้องทำหรือรักษาแฟ้มข้อมูลนั้นให้ทันสมัยอยู่เสมอ อาจจะต้องมีการเพิ่มบางระเบียนเข้าไป (adding) แก้ไขเปลี่ยนแปลงค่าฟิลด์ใดฟิลด์หนึ่ง (changing) หรือลบบางระเบียนออกไป (deleting)


          6. ประเภทของแฟ้มข้อมูล

           ประเภทของแฟ้มข้อมูลจำแนกตามลักษณะของการใช้งานได้ดังนี้
           6.1แฟ้มข้อมูลหลัก (master file)แฟ้มข้อมูลหลักเป็นแฟ้มข้อมูลที่บรรจุข้อมูลพื้นฐานที่จำเป็นสำหรับระบบงาน และเป็นข้อมูลหลักที่เก็บไว้ใช้ประโยชน์ข้อมูลเฉพาะเรื่องไม่มีรายการเปลี่ยนแปลงในช่วงปัจจุบัน มีสภาพค่อนข้างคงที่ไม่เปลี่ยนแปลงหรือเคลื่อนไหวบ่อยแต่จะถูกเปลี่ยนแปลงเมื่อมีการสิ้นสุดของข้อมูล เป็นข้อมูลที่สำคัญที่เก็บไว้ใช้ประโยชน์ ตัวอย่าง เช่น แฟ้มข้อมูลหลักของนักศึกษาจะแสดงรายละเอียดของนักศึกษา ซึ่งมี ชื่อนามสกุล ที่อยู่ ผลการศึกษา แฟ้มข้อมูลหลักของลูกค้าในแต่ละระเบียนของแฟ้มข้อมูลนี้จะแสดงรายละเอียดของลูกค้า เช่น ชื่อสกุล ที่อยู่ หรือ ประเภทของลูกค้า
        6.2 แฟ้มข้อมูลรายการเปลี่ยนแปลง (transaction file)แฟ้มข้อมูลรายการเปลี่ยนแปลงเป็นแฟ้มข้อมูลที่ประกอบด้วยระเบียนข้อมูลที่มีการเคลื่อนไหว ซึ่งจะถูกรวบรวมเป็นแฟ้มข้อมูลรายการเปลี่ยนแปลงที่เกิดขึ้นในแต่ละงวดในส่วนที่เกี่ยวข้องกับข้อมูลนั้น แฟ้มข้อมูลรายการเปลี่ยนแปลงนี้จะนำไปปรับรายการในแฟ้มข้อมูลหลัก ให้ได้ยอดปัจจุบัน ตัวอย่างเช่น แฟ้มข้อมูลลงทะเบียนเรียนของนักศึกษา
       6.3 แฟ้มข้อมูลตาราง (table file)แฟ้มข้อมูลตารางเป็นแฟ้มข้อมูลที่มีค่าคงที่ ซึ่งประกอบด้วยตารางที่เป็นข้อมูลหรือชุดของข้อมูลที่มีความเกี่ยวข้องกันและถูกจัดให้อยู่รวมกันอย่างมีระเบียบ โดยแฟ้มข้อมูลตารางนี้จะถูกใช้ในการประมวลผลกับแฟ้มข้อมูลอื่นเป็นประจำอยู่เสมอ เช่น ตารางอัตราภาษีตารางราคาสินค้า ตัวอย่าง เช่น ตารางราคาสินค้าของบริษัทขายอะไหล่เครื่องคอมพิวเตอร์ดังนี้




            ในแฟ้มข้อมูลนี้จะประกอบด้วยระเบียนแฟ้มข้อมูลตารางของสินค้าที่มีฟิลด์ต่าง ๆ ได้แก่ รหัสสินค้า รายชื่อ สินค้า และราคาสินค้าต่อหน่วย แฟ้มข้อมูลตารางรายการสินค้า จะใช้ร่วมกับแฟ้มข้อมูลหลายแฟ้มข้อมูลในระบบสินค้า ได้แก่ แฟ้มข้อมูลคลังสินค้า (inventory master file) แฟ้มข้อมูลใบสั่งซื้อของลูกค้า (customer order master file) และแฟ้มข้อมูลรายการสิตค้าของฝ่ายผลิต (production master file) มีข้อควรสังเกตว่าแฟ้มข้อมูลตาราง แฟ้มข้อมูลรายการเปลี่ยนแปลง และแฟ้มข้อมูลหลัก ทั้ง 3 แฟ้ม จะมีฟิลด์ที่เกี่ยวกับตัวสินค้าร่วมกัน คือ ฟิลด์รหัสสินค้า (product code) ฟิลด์ร่วมกันนี้จะเป็นตัวเชื่องโยงระหว่างแฟ้มข้อมูลตารางกับฟ้มข้อมูลอื่น ๆ ทั้งหมดที่ต้องการจะใช้ค่าของฟิดล์รายชื่อสินค้า (product description) และราคาสินค้า (product price) จากแฟ้มข้อมูลตาราง การจัดแฟ้มข้อมูลแบบนี้จะทำให้ประหยัดเนื้อที่ในอุปกรณ์เก็บข้อมูลของแฟ้มข้อมูลหลัก กล่าวคือในแฟ้มข้อมูลหลักไม่ต้องมี 2 ฟิลด์ คือฟิลด์รายการสินค้าและฟิลด์ราคาสินค้า มีแต่เพียงฟิลด์รหัสสินค้าก็เพียงพอแล้ว เมื่อใดที่ต้องการใช้ฟิลด์รายการสินค้าในการแสดงผลก็อ่านค่าออกมาจากแฟ้มข้อมูลตารางได้ นอกจากนั้นยังเป็นการลดความซ้ำซ้อนของข้อมูลและเมื่อผู้ใช้ระบบต้องการเปลี่ยนแปลงรายการสินค้าหรือราคาสินค้าก็จะเปลี่ยนในแฟ้มข้อมูลตารางทีเดียว โดยไม่ต้องไปเปลี่ยนแปลง
ในแฟ้มข้อมูลอื่น
           6.4 แฟ้มข้อมูลเรียงลำดับ (sort file)แฟ้มข้อมูลเรียงลำดับเป็นการจัดเรียงระเบียนที่จะบรรจุในแฟ้มข้อมูลนั้นใหม่ โดยเรียงตามลำดับค่าของฟิลด์ข้อมูลหรือค่าของข้อมูลค่าใดค่าหนึ่งในระเบียนนั้นก็ได้เช่น จัดเรียงลำดับตาม วันเดือนปี ตามลำดับตัวอักขระเรียงลำดับจากมากไปหาน้อยหรือจากน้อยไปหามาก เป็นต้น แฟ้มข้อมูลรายงาน (report file)เป็นแฟ้มข้อมูลที่ถูกจัดเรียงระเบียบตามรูปแบบของรายงานที่ต้องการแล้วจัดเก็บไว้ในรูปของแฟ้มข้อมูล ตัวอย่าง เช่น แฟ้มข้อมูลรายงานควบคุมการปรับเปลี่ยนข้อมูลที่เกิดขึ้นในขณะปฏิบัติงานแต่ละวัน


           7.การจัดโครงสร้างแฟ้มข้อมูล (file organization)

           เป็นการกำหนดวิธีการที่ระเบียนถูกจัดเก็บอยู่ในแฟ้มข้อมูลบนอุปกรณ์ที่ใช้เก็บข้อมูล ซึ่งลักษณะโครงสร้างของระเบียนจะถูกจัดเก็บไว้เป็นระบบ โดยมีวัตถุประสงค์เพื่อให้การจัดเก็บข้อมูลและการเข้าถึงข้อมูลมีความสะดวกรวดเร็ว การจัดโครงสร้างของแฟ้มข้อมูลอาจแบ่งได้เป็น 3 ลักษณะคือ
            7.1 โครงสร้างของแฟ้มข้อมูลแบบลำดับ (sequential file) เป็นการจัดแฟ้มข้อมูซึ่งระเบียนภายในแฟ้มข้อมูลจะถูกบันทึกโดยเรียงตามลำดับคีย์ฟิลด์ หรืออาจจะไม่เรียงลำดับตามคีย์ฟิลด์ก็ได้ ข้อมูลจะถูกบันทึกลงในสื่อบันทึกข้อมูลโดยจะถูกบันทึกไว้ในตำแหน่งที่อยู่ติด ๆ กัน การนำข้อมูลมาใช้ของโครงสร้างแฟ้มข้อมูลแบบลำดับจะต้องอ่านข้อมูลไปตามลำดับจะเข้าถึงข้อมูลโดยตรงไม่ได้ ส่วนการจัดโครงสร้างแฟ้มข้อมูลแบบลำดับตามดัชนี เป็นการจัดข้อมูลแบ่งตามหมวดหมู่ สรุปเป็นตารางซึ่งมีลักษณะคล้ายสารบาญของหนังสือ การจัดข้อมูลแบบนี้ทำให้สามารถเข้าถึงข้อมูลได้ง่าย โดยตรงไปที่ตารางซึ่งเป็นดัชนี จะทำให้ทราบตำแหน่งของข้อมูลนั้น โดยไม่ต้องอานข้อมูลทีละระเบียน การจัดโครงสร้างของแฟ้มข้อมูลแบบสัมพัทธ์ แฟ้มข้อมูลแบบสัมพัทธ์นี้ข้อมูลจะถูกบันทึกโดยอาศัยกลไกการกำหนดตำแหน่งของข้อมูล ซึ่งจะช่วยให้สามารถตรงไปถึงหรือบันทึกข้อมูลที่ต้องการได้โดยไม่ต้องอ่านหรือผ่านข้อมูลที่อยู่ในลำดับก่อนหน้าระเบียนที่ต้องการ การดึงหรือการบันทึกข้อมูลจะสามารถทำได้อย่างรวดเร็ว
             ในโครงสร้างแฟ้มข้อมูลแบบลำดับประกอบด้วยระเบียนที่จัดเรียงไปตามลำดับอย่างต่อเนื่องเมื่อจัดสร้างแฟ้มข้อมูลโดยจะบันทึกระเบียนเรียงตามลำดับการบันทึกระเบียนจะถูกเขียนต่อเนื่องไปตามลำดับจากระเบียนที่ 1 ถึงระเบียน n และการอ่านระเบียนภายในแฟ้มข้อมูลก็ต้องใช้วิธีการอ่านแบบต่อเนื่องตามลำดับคือ อ่านตั้งแต่ต้นแฟ้มข้อมูลไปยังท้ายแฟ้มข้อมูล โดยอ่านระเบียนที่ 1,2,3 และ 4 มก่อน ตัวอย่างเช่น ถ้าต้องการอ่านระเบียนที่ 8 ก็ต้องอ่านระเบียนลำดับที่ 1,2,3,4,5,6,7 ก่อน
           7.2 โครงสร้างของแฟ้มข้อมูลแบบลำดับตามดัชนี (index sequential file) เป็นวิธีการเก็บข้อมูลโดยแต่ละระเบียนในแฟ้มข้อมูลจะมีค่าของคีย์ฟิลด์ที่ใช้เป็นตัวระบุระเบียนนั้น ค่าคีย์ฟิลด์ของแต่ละระเบียนจะต้องไม่ซ้ำกับค่าคีย์ฟิลด์ในระบบอื่น ๆ ในแฟ้มข้อมูลเดียวกัน เพราะการจัดโครงสร้างแฟ้มข้อมูลแบบนีจะใช้คีย์ฟิลด์เป็นตัวเข้าถึงข้อมูล การเข้าถึงข้อมูลหรือการอ่านระเบียนใด ๆ จะเข้าถึงได้อย่างสุ่ม การจัดโครงสร้างแฟ้มข้อมูลต้องบันทึกลงสื่อข้อมูลที่เข้าถึงข้อมูลได้โดยตรง เช่น จานแม่เหล็ก การสร้างแฟ้มข้อมูลประเภทนี้ไม่ว่าจะสร้างครั้งแรกหรือสร้างใหม่ ข้อมูลแต่ละระเบียนต้องมีฟิลด์หนึ่งใช้เป็นคีย์ฟิลด์ของข้อมูล ระบบปฏิบัติการจะนำคีย์ฟิลด์ของข้อมูลไปสร้างเป็นตารางดัชนีทำให้สามารถเข้าถึงระเบียนได้เร็ว นอกจากจะเข้าถึงระเบียนใด ๆ ได้เร็วขึ้นแล้วยังมีประโยชน์สามารถเพิ่มระเบียนเข้าในส่วนใด ๆของแฟ้มข้อมูลได้ ในแต่ละแฟ้มข้อมูลที่ถูกบันทึกลงสื่อข้อมูลจะมีตารางดัชนีทำให้เข้าถึงระเบียนใด ๆได้รวดเร็วขึ้น โครงสร้างแฟ้มข้อมูลแบบลำดับตามดัชนีประกอบด้วย
           
            1)ดัชนี (index) ของแฟ้มข้อมูลจะเก็บค่าคีย์ฟิลด์ของข้อมูล และที่อยู่ในหน่วยความจำ(address) ที่ระเบียนนั้นถูกนำไปบันทึกไว้ ซึ่งดัชนีนี้จะต้องเรียงลำดับจากน้อยไปมาก หรือจากมากไปน้อยโดยที่ส่วนของดัชนีจะมีตัวบ่งชี้ไปยังที่อยู่ในหน่วยความจำ เพื่อจะได้นำไปถึงระเบียนข้อมูลในข้อมูลหลัก
             2)ข้อมูลหลัก (data area) จะเก็บระเบียนข้อมูล ซึ่งระเบียนนั้นอาจจะเรียงตามลำดับจากน้อยไปมากหรือจากมากไปน้อย ในการจัดลำดับของข้อมูลหลักอาจจะจัดข้อมูลออกไปกลุ่ม ๆ โดยจะเว้นที่ไว้เพื่อให้มีการปรับปรุงแฟ้มข้อมูลได้

           7.3 โครงสร้างของแฟ้มข้อมูลแบบสัมพัทธ์ (relative file) เป็นโครงสร้างที่สามารถเข้าถึงข้อมูลหรืออ่านระเบียนใด ๆ ได้โดยตรง วิธีนี้เป็นการจัดเรียงข้อมูลเข้าไปในแฟ้มข้อมูลโดยอาศัยฟิลด์ข้อมูลเป็นตัวกำหนดตำแหน่งของระเบียนนั้น ๆ โดยค่าของคีย์ฟิลด์ข้อมูลในแต่ละระเบียนของแฟ้มข้อมูลจะมีความสัมพัทธ์กับตำแหน่งที่ระเบียนนั้นถูกจัดเก็บไว้ในหน่วยความจำ ค่าความสัมพัทธ์นี้ เป็นการกำหนดำแหน่ง (mapping function) ซึ่งเป็นฟังก์ชั่นที่ใช้ในการเปลี่ยนแปลงคีย์ฟิลด์ของระเบียนให้เป็นตำแหน่งในหน่วยความจำ โดยที่การจัดเรียงลำดับที่ของระเบียนไม่จำป็นต้องมีความสัมพันธ์กับการจัดลำดับที่ของระเบียนที่ถูกจัดเก็บไว้ในหน่วยความ



          การจัดเก็บข้อมูลลงแฟ้มข้อมูลแบบสัมพัทธ์ (relative file) จะถูกจัดเก็บอยู่บนสื่อที่สามารถเข้าถึงได้โดยตรง เช่น แผ่นจานแม่เหล็ก ลักษณะโครงสร้างแฟ้มข้อมูลแบบสัมพัทธ์จะประกอบด้วยตำแหน่งในหน่วยความจำ ซึ่งเกิดจากนำคีย์ฟิลด์ของระเบียนมาทำการกำหนดตำแหน่ง ซึ่งการกำหนดตำแหน่งนี้จะทำการปรับเปลี่ยนค่าคีย์ฟิลด์ของระเบียนให้เป็นตำแหน่งในหน่วยความจำที่คำนวณได้ แฟ้มข้อมูลหลักแฟ้มข้อมูลนี้ประกอบด้วยระเบียนที่จัดเรียงตามตำแหน่งในหน่วยความจำโดยจะเรียงจากระเบียนที่ 1 จนถึง N แต่จะไม่เรียงลำดับตามค่าของคีย์ฟิลด์



     เรื่องที่ 1.1.2 ชนิดและคุณสมบัติของหน่วยเก็บข้อมูลสำรองและหน่วยความจำหลัก

                 1.ชนิดของหน่วยความจำหลัก

                โดยปกติแล้วหน่วยความจำโดยทั่วไปจะถูกแบ่งออกเป็นสองพวกใหญ่ ๆ คือ หน่วยความจำแบบหน่วยเก็บลบเลือนได้ (volatile storage) และหน่วยความจำประเภทหน่วยเก็บลบเลือนไม่ได้(nonvolatilestorage) หน่วยความจำประเภทหน่วยเก็บลบเลือนได้เป็นหน่วยความจำที่รักษาข้อมูลได้เฉพาะเมื่อมีกระแสไฟฟ้าเท่านั้นไหลเวียนอยู่ ตัวอย่างเช่น หน่วยความจำหลัก (main memory) เท่านั้น
                 หน่วยความจำประเภทหน่วยเก็บลบเลือนไม่ได้คือ หน่วยความจำที่สามารถรักษาข้อมูลได้อย่างถาวรแม้เมื่อไม่มีกระแสไฟฟ้าไหลผ่าน ตัวอย่างเช่น หน่วยความจำสำรองและหน่วยความจำหลักบางประเภท หน่วยความจำหลักที่ที่ใช้ในปัจจุบันมี 2 ประเภท คือ หน่วยความจำหลักประเภทแรม (Random Access Memory, RAM) และหน่วยความจำหลักประเภทรอม (Read Only Memory, ROM)
                1.1 หน่วยความจำประเภทแรม เป็นหน่วยความจำหลักประเภทที่สามารถเข้าถึงคำสั่งและข้อมูลโดยตรงได้ แรมเป็นหน่วยความจำที่สามารถที่จะอ่านหรือเขียนข้อมูลและคำสั่งลงไปได้หลายครั้ง แรมแบ่งออกเป็นสองประเภทคือ ไดนามิกแรม (dynamic RAM) และสแตติกแรม (static RAM)
              1) ไดนามิกแรม คือหน่วยความจำหลักที่ต้องการกระแสไฟฟ้าไหลผ่านในขณะเก็บข้อมูล ไดนามิกแรมจะถูกนำมาสร้างเป็นหน่วยความจำหลักของคอมพิวเตอร์ทุกระบบ ไดนามิกแรมจะมีความแตกต่างกัน บางชนิดมีความเร็วกว่าอีกชนิดหนึ่ง การวัดความเร็วของไดนามิกแรมจะวัดกันด้วยความสามารถในการส่งผ่านข้อมูลระหว่างตัวมันกับหน่วยต่าง ๆ มีหน่วยเป็นวินาที (nanoseconds) ยังมีความเร็วในการส่งผ่านมากเท่าไดนามิกแรมชนิดนั้นก็ยิ่งมีราคาสูงขึ้นมากเท่านั้น ไดนามิกแรมที่มีความเร็วมากจะเรียกว่าหน่วยความจำแคช (cash memory) มีราคาสูงมากกว่าไดนามิกแรมทั่วไป ผู้ผลิตคอมพิวเตอร์จะใช้หน่วยความจำแคชเป็นส่วนประกอบร่วมกับไดนามิกแรม
            2)สแตติกแรม เป็นหน่วยความจำหลักที่ต้องการแบตเตอรี่เลี้ยงอยู่ตลอดเวลา ทำให้แรมชนิดนี้สามารถเก็บข้อมูลได้ตลอดไปตราบที่ยังมีแบตเตอรี่เลี้ยงอยู่ สแตติกแรมจะมีขนาดน้อยกว่าไดนามิกแรมโดยปกติ จะถูกใช้เพื่อเก็บโปรแกรมและข้อมูลบางอย่างที่จำเป็นต่อเครื่องคอมพิวเตอร์ แม้ว่าเครื่องคอมพิวเตอร์จะถูกปิดแล้วก็ตาม


          1.2 หน่วยความจำหลักชนิดรอม หน่วยความจำชนิดรอมเป็นหน่วยความจำประเภทแบบลบเลือนไม่ได้ สามารถเก็บข้อมูลได้ตลอดไปแม้จะปิดเครื่องคอมพิวเตอร์แล้ว หน่วยความจำชนิดรอมเป็นหน่วยความจำที่อ่านข้อมูลออกมาใช้ได้อย่างเดียว แต่ไม่สามารถเปลี่ยนแปลงแก้ไขข้อมูลที่เก็บอยู่ในรอมได้หน่วยความจำรอมจะถูกสร้างโดยบริษัทผู้ผลิตเครื่องคอมพิวเตอร์เพื่อใช้เก็บโปรแกรมที่จำเป็นต่อการใช้งานคอมพิวเตอร์เอาไว้อย่างถาวร และไม่ต้องการเปลี่ยนแปลง เช่น โปรแกรมที่ใช้ในการทำงานของเครื่องคอมพิวเตอร์ เมื่อเราทำการเปิดเครื่อง หรือโปรแกรมที่ใช้ควบคุมการทำงานของอุปกรณ์ที่อยู่ในรถยนต์หรือโปรแกรมเล่นเกมต่าง ๆ เป็นต้น รอมยังถูกแบ่งออกเป็นหลายชนิดได้แก่พรอม (ProgrammableROM, PROM) อีพรอม (Erasable PROM,EPROM) และอีอีพรอม (Electrically Erasable PROM, EEPROM)
       - หน่วยความจำหลักชนิดพรอม เนื่องจากรอมถูกผลิตโดยบริษัทผู้ที่ผลิตรอมโดยเฉพาะ การสั่งซื้อรอมจะใช้เวลานาน และเมื่อผลิตออกมาแล้วจะไม่สามารถเปลี่ยนแปลงแก้ไขได้ ทำให้ต่อมาได้มีการผลิตชิปของรอมให้สามารถนำมาบันทึกข้อมูลได้โดยบริษัทผู้ที่ใช้ภาษานั้นเรียกว่าพรอม โดยที่ตอนแรกของ รอมจะเท่าและเมื่อทำการนำโปรแกรมหรือข้อมูลเข้าไปเก็บในพรอมโดยเครื่องมือที่เขียนโปรแกรมพิเศษแล้วจะไม่สามารถแก้ไขหรือเปลี่ยนแปลงได้
     - หน่วยความจำหลักชนิดอีพรอม เป็นรอมที่ได้ถูกพัฒนาให้สามารถทั้งอ่านและเขียนข้อมูลไป
ใหม่ได้หลายครั้งและเรียกรอมชนิดนี้ว่าอีพรอมกล่าวคือ สามารถที่จะนำโปรแกรมเข้าไปในในชิปของอีพรอมได้ และสามารถที่จะลบโปรแกรมหรือข้อมูลแล้วเขียนเข้าไปใหม่ได้โดยเครื่องมือที่เขียนโปรแกรมพิเศษที่ใช้แสงอุลตร้าไวโอเลต การใช้อีพรอมจะประหยัดมากกว่ารอมชนิดอื่น เพราะสามารถนำกลับมาใช้งานใหม่ได้
       - หน่วยความจำหลักชนิดอีพรอมเป็นหน่วยความจำหลักเหมือนกับอีพรอมแต่จะต่างกันตรงที่
สามารถจะเขียนโปรแกรมใหม่ลงในอีพรอมได้ง่ายกว่าโดยใช้กระแสไฟฟ้าธรรมดาที่มีโปรแกรมใหม่ลงในอีพรอมได้ง่ายกว่า โดยใช้กระแสไฟฟ้าธรรมดาที่มีโปรแกรมเป็นตัวควบคุมโดยไม่ต้องใช้เครื่องมือพิเศษ เช่น แสงอุลตร้าไวโอเลตเหมือนกับอีพรอม อีอีพรอมจะต่างกับหน่วยความจำประเภทแรมอีกประการหนึ่งคือ การเขียนและการลบข้อมูลบนอีอีพรอมจะใช้เวลามากกว่าแรมหลายเท่า ทำให้อีอีพรอมมีใช้มากกับงานที่ไม่ต้องการแก้ไขข้อมูลบ่อยครั้งนัก และเมื่อต้องการแก้ไขข้อมูลก็สามารถทำได้ บวกกับข้อมูลที่เก็บอยู่ในอีอีพรอมยังคงอยู่เมื่อทำการปิดเครื่องคอมพิวเตอร์แล้ว และความเร็วของอีอีพรอมมีความใกล้เคียงกับแรมมาก อีอีพรอมจึงถูกใช้ในเครื่องคอมพิวเตอร์ตามห้างสรรพสินค้าที่เก็บรายละเอียดราคาของสินค้า ผู้ใช้งานสามารถเปลี่ยนแปลงราคาสินค้าได้เมื่อมีการเปลี่ยนแปลง


         2.ชนิดของหน่วยความจำสำรอง

         หน่วยความจำสำรองเป็นหน่วยความจำที่สามารถรักษาข้อมูลได้ตลอดไป หลังจากได้ทำการปิดเครื่องคอมพิวเตอร์แล้ว หน่วยความจำสำรองมีประโยชน์ต่อระบบฐานข้อมูลเป็นอย่างมาก ถ้าปราศจากหน่วยความจำสำรองแล้วเราจะไม่สามารถเก็บรักษาข้อมูลเอาไว้ใช้ด้ในอนาคต หน่วจยความจำสำรองใช้เก็บรักษาข้อมูลและโปรแกรมเอาไว้อย่างถาวรจึงทำให้หน่วยความจำสำรองถูกใช้เป็นสื่อในการนำข้อมูลและโปรแกรมจากเครื่องคอมพิวเตอร์หนีงไปใช้ยังคอมพิวเตอร์อีกเครื่องหนึ่งได้ และนอกจากนี้หน่วยความจำสำรองยังใช้เป็นหน่วยเสริมหน่วยความจำหลัก โดยทำหน้าที่เป็นเสมือนหน่วยความจำหลัก ชื่อเรียกว่าหน่วยความจำเสมือน (virtual memory) กล่าวคือแทนที่จะดึงโปรแกรมทั้งหมดเข้าหน่วยความจำหลักที่มีจำนวนจำกัดพร้อมกันหมด คอมพิวเตอร์จะทำการจัดเก็บโปรแกรมไว้ยังหน่วยความจำเสมือนก่อน และเมื่อต้องการจึงจะดึงคำสั่งจากหน่วยความจำเสมือนเข้าหน่วยความจำหลักเพื่อทำการประมวลผล ดังนั้น จึงสามารถประมวลผลโปรแกรมแรมที่มีขนาดใหญ่กว่าหน่วยความจำหลักได้

           หน่วยความจำสำรอง สามารถแบ่งตามลักษณะที่คอมพิวเตอร์สามารถเข้าถึงข้อมูลได้ 2 ชนิด คือ
        
           2.1 หน่วยความจำสำรองประเภทที่สามารถเข้าถึงข้อมูลโดยตรง เป็นหน่วยความจำสำรองที่คอมพิวเตอร์สามารถที่จะเข้าไปกระทำกับข้อมูลที่เก็บในอุปกรณ์ชนิดนั้นตรงส่วนใดก็ได้ในทันที ซึ่งเรียกการเข้าถึงข้อมูลดังกล่าวว่าการเข้าถึงโดยตรงส่วนใดก็ได้ในทันที ซึ่งเรียกการเข้าถึงข้อมูลดังกล่าวว่าการเข้าถึงโดยตรง หรือการเข้าถึงแบบสุ่ม (direct access หรือ random access) อุปกรณ์ชนิดที่สามารถเลื่อนหัวอ่านหรือบันทึกข้อมูลหน่วยความจำประเภทดิสก์ต่าง ๆ ดิสก์ที่นิยมใช้ในปัจจุบันมีหลายประเภทได้แก่
        - จานบันทึกแม่เหล็ก (magnetic disk) เป็นอุปกรณ์ที่นิยมใช้มาก และถูกใช้เป็นหน่วยเก็บข้อมูลที่ใช้
ภายในเครื่องไมโครคอมพิวเตอร์ จนถึงเครื่องคอมพิวเตอร์ขนาดใหญ่ แต่ถึงแม้จะใช้กับเครื่องต่างขนาดกัน โครงสร้างและการใช้งานจะเหมือนกัน จานบันทึกแม่เหล็กที่นิยมใช้กันได้แก่ ฟลอปปี้ดิสก์ (floppy disk) ฮาร์ดดิสก์ (hard disk) และไมโครดิสก์ (microdisk)
      - ออพติคัลดิสก์ (optical disk) เป็นอุปกรณ์ที่ถูกพัฒนาให้มีความจุมากยิ่งขึ้น ได้แก่ ซีดี-รอม (Compact Disk Read Only Memory, CDROM) วอร์ม (Write Once Read Many, WORM) และแมคนิโตออปติคัลดิสก์ (Magneto-optical disk, MO)





     -พีซีเอ็มซีไอเอ (Personal Computer Memory Card International Association, PCMCIA) เป็น
หน่วยความจำที่มีขนาดเล็ก มีขนาดความกว้าง 2 นิ้ว และยาวเพียง 3 นิ้ว คล้ายเครดิตการ์ด เป็นหน่วยความจำสำรองใช้เสียบเข้าเครื่องคอมพิวเตอร์ในเวลาใช้งาน และเป็นที่นิยมใช้ในเครื่องคอมพิวเตอร์ขนาดเล็ก

         2.2 หน่วยความจำสำรองประเภทที่สามารถเข้าถึงข้อมูลโดยเรียงลำดับเท่านั้น เป็นหน่วยความจำสำรองประเภทที่เก็บตัวข้อมูลแบบเรียงลำดับกันไป ตั้งแต่ตำแหน่งแรกจนถึงตำแหน่งสุดท้าย เมื่อต้องการเข้าถึงข้อมูลตรงส่วนใดนั้น หัวอ่านและบันทึกจะต้องทำการอ่านหรือบันทึกข้อมูลตั้งแต่ตำแหน่งแรก เรียงลำดับกันไปจนถึงตำแหน่งสุดท้าย ซึ่งเรียกการเข้าถึงข้อมูลดังกล่าวว่าการเข้าถึงแบบเรียงลำดับ (seguential access) หน่วยความจำสำรองประเภทนี้ส่วนใหญ่จะใช้งานสำรองข้อมูลของระบบอุปกรณ์ประเภทนี้ได้แก่ เทปแม่เหล็ก

       เทปแม่เหล็กถูกใช้กับงานที่ต้องการเข้าถึงข้อมูลในลักษณะของการเรียงลำดับกันไป เช่น งานสำรองข้อมูลบนหน่วยความจำประเภทแม่เหล็กเป็นหลัก เทปแม่เหล็กที่ใช้อยู่ปัจจุบันมี 2 ประเภทคือ เป็นลักษณะม้วนเรียกว่า เทปรีล (tape reel) และเทปตลับ (cartridge tape) เทปรีลถูกใช้มากในเครื่องคอมพิวเตอร์ระดับใหญ่ เช่น เครื่องเมนเฟรม และเครื่องมินิ ส่วนเทปตลับสามารถใช้กับเครื่องคอมพิวเตอร์มินิ เทปตลับมีราคาถูกและขนาดเล็กกว่าเทปรีลมาก จนสามารถพกพาติดตัวได้สะดวก แต่มีความจุมากกว่าและราคาถูกกว่าเทปรีล และถูกเรียกว่า ตลับข้อมูล (data Cartridges)