วันอาทิตย์ที่ 25 พฤศจิกายน พ.ศ. 2555

ระบบฐานข้อมูล


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

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



        มีคำอธิบายความหมายของ ฐานข้อมูล” อยู่มากมายหลายคามหมาย ตัวอย่างเช่น

        ฐานข้อมูลอาจถือได้ว่าเป็นตู้เก็บเอกสารอิเล็กทรอนิคส์ชนิดหนึ่ง เช่น  เป็นที่รวมหรือเป็นที่บรรจุแฟ้มข้อมูลคอมพิวเตอร์ชุดหนึ่ง เป็นต้น (A database can be regarded as a kind of electronic filing cabinet.)
        
        ฐานข้อมูลเป็นชุดของข้อมูลที่คงทน (Persistent Data) ซึ่งถูกเรียกใช้โดยระบบโปรแกรมของกิจการใดกิจการหนึ่ง (A database is a collection of persistent data that is used by the application systems of some given enterprise.) ข้อมูลจะคงทนอยู่ในฐานข้อมูลเพราะเมื่อระบบจัดการฐานข้อมูลรับข้อมูลนั้นเข้าสู่ฐานข้อมูลแล้ว ใครจะขจัดหรือเอาข้อมูลออกไปจากฐานข้อมูลได้ต้องมีการร้องขอต่อระบบจัดการฐานข้อมูลเท่านั้น ตัวอย่างข้อมูลที่คงทนในฐานข้อมูล เช่น 

  • กิจการ           =         ข้อมูลคงทน                                                              
  • ธนาคาร         =         ข้อมูลบัญชี 
  • โรงพยาบาล      =         ข้อมูลผู้ป่วย 
  • มหาวิทยาลัย     =         ข้อมูลนักศึกษา 
  • หน่วยราชการ    =         ข้อมูลการวางแผน



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

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

อ้างอิง https://sites.google.com/site/thaidatabase2

ประโยชน์ของการจัดทำระบบฐานข้อมูล
               การรวบรวมข้อมูลต่างๆ  เข้าเป็นระบบฐานข้อมูล โดยมีการออกแบบ การวิเคราะห์และสร้างความสัมพันธ์ของข้อมูล ซึ่งมีประโยชน์ต่อการใช้งานในสำนักงานทั่วไปอย่างมาก  ดังนี้   
 1.
ช่วยลดปัญหาของความซ้ำซ้อนของข้อมูลที่จัดเก็บเนื่องจากในขั้นตอนของการออกแบบฐานข้อมูล เมื่อพบข้อมูลบางส่วนที่ซ้ำซ้อนกันก็จะสามารถลดและปรับข้อมูลให้น้อยลง  ขณะที่ยังคงความสามารถในการเรียกดูข้อมูลได้ ดังเดิมโดยใช้การกำหนดความสัมพันธ์ระหว่างข้อมูล     
 2.
สามารถใช้ร่วมกันได้หลายคนและหลายหน่วยงานได้ ไม่จำกัดเฉพาะโปรแกรมในปัจจุบันเท่านั้นแต่สามารถใช้กับโปรแกรมที่จะพัฒนาในอนาคตด้วย 
 3.
สามารถหลีกเลี่ยงความขัดแย้งกันของข้อมูลได้ในระดับหนึ่ง  เนื่องจากความซ้ำซ้อนของข้อมูล ดังเหตุผลในข้อแรก เมื่อลดความซ้ำซ้อนของข้อมูลแล้ว ระบบฐานข้อมูลก็จะมีข้อมูลเรื่องใดๆ  อยู่น้อยชุดที่สุด  ซึ่งสะดวกในการแก้ไข ปรับปรุงต่างจากในกรณีที่มีข้อมูลอย่างเดียวกันหลายชุด ถ้ามีการแก้ไขแล้วไม่ได้แก้ไขข้อมูลครบทุกชุด เมื่อมีการเรียกใช้ข้อมูลจะ พบข้อมูลเรื่องเดียวกัน แต่มีเนื้อหาต่างกัน 
 4.
สามารถควบคุมความถูกต้องของข้อมูล ทั้งในเรื่องความถูกต้องของข้อมูลในแฟ้มข้อมูล (Relational Integrity)  และความถูกต้องของความสัมพันธ์ระหว่างข้อมูล (Referential Integrity)   สามารถควบคุมมาตรฐานของข้อมูลได้ ทั้งใน ลักษณะรูปแบบของข้อมูล (Format) การกำหนดรหัส (Coding) ในข้อมูลเรื่องเดียวกันให้เหมือนกัน
 5.
การจัดทำระบบฐานข้อมูล จะเป็นการวางแผนระบบข้อมูลขององค์กร หรือหน่วยงานอย่างมีประสิทธิภาพ ลดความสูญเสียและความขัดแย้งของข้อมูลที่อาจจะมีขึ้น  ถ้าแต่ละแผนกแยกกันพัฒนาระบบข้อมูลของตนเอง 
 6.
สามารถควบคุมและรักษาความปลอดภัยของข้อมูลได้ เนื่องจากข้อมูลต่างๆ ถูกนำเข้ามาจัดเก็บในระบบฐานข้อมูล ซึ่งอยู่ที่ส่วนกลาง  มีผู้ดูแลข้อมูลอย่างชัดเจน  ผู้บริหารระบบฐานข้อมูล (Database Administration) ก็จะสามารถควบคุมการเข้าใช้  การแก้ไขข้อมูลของผู้เข้าใช้ทุกคน 
 7.
ทำให้มีความเป็นอิสระในการจัดการฐานข้อมูล   ถ้าต้องการเปลี่ยนแปลงวิธีการจัดเก็บหรือการเรียกใช้ข้อมูล   การประยุกต์ใช้ทำได้ง่าย 
อ้างอิง http://www.comsrt.net63.net/1Database.htm
ตัวอย่างระบบฐานข้อมูลในองค์กร



สรุป
การจัดเก็บข้อมูลไว้ในฐานข้อมูลมีข้อดีมากกว่าการแยกเก็บข้อมูลไว้ในแฟ้มข้อมูลแต่ละแฟ้ม เพราะเมื่อข้อมูลมีปริมาณมากๆ ถ้าเก็บข้อมูลไว้ในแฟ้มข้อมูลอาจจะทำให้เกิดความซับซ้อนกันของข้อมูลเมื่อมีการแก้ไขข้อมูลที่มีอยู่หลายแฟ้มไม่ครบ จนทำให้ข้อมูลมีความขัดแย้งกันเอง แต่ถ้าเก็บข้อมูลไว้ในระบบการจัดการฐานข้อมูล ซึ่งมีการจัดเก็บข้อมูลเพียงชุดเดียว จะทำให้ลดความซ้ำซ้อนและความแตกต่างของข้อมูลได้ จึงทำให้ประหยัดพื้นที่ในการจัดเก็บข้อมูลและเกิดความรวดเร็วในการค้นหาข้อมูลด้วย ซึ่งโปรแกรมที่ได้รับความนิยมในการจัดการฐานข้อมูล ได้แก่ Microsoft Access, Oracle, Informix, dBase, FoxPro, และ Paradox เป็นต้น โดยมีการจำลองฐานข้อมูลเป็นแบบต่างๆ ได้แก่ แบบลำดับชั้น แบบเครือข่าย เชิงสัมพันธ์ เชิงวัตถุ และเชิงวัตถุ - สัมพันธ์ ซึ่งขึ้นอยู่กับจำนวนของข้อมูลและความสลับซับซ้อนของการจัดเก็บข้อมูล ในเอกสารประกอบการสอนนี้จะเน้นแบบจำลองฐานข้อมูลเชิงสัมพันธ์ เพราะเป็นแนวคิดพื้นฐานในการฝึกการออกแบบฐานข้อมูลเบื้องต้นได้