เมื่อกล่าวถึงฐานข้อมูลมีบุคคลจำนวนมากมีส่วนเกี่ยวข้อง และมีส่วนร่วมในการใช้ประโยชน์จากฐานข้อมูลซึ่งในปัจจุบันองค์กรเกือบทุกองค์กรนำเอาฐานข้อมูลมาใช้เพื่ออำนวยความสะดวกให้การทำงานเป็นไปด้วยความรวดเร็ว คล่องตัว หรือเพื่อลดค่าใช้จ่าย เช่น การถอนเงินจากเครื่องฝากถอนเงินอัตโนมัติ การทำบัตรประจำตัวประชาชน ณ ที่ว่าการอำเภอใด ๆ ก็ได้ หรือการซื้อสินค้าจากร้านค้าสะดวกซื้อทั่วไป ระบบคอมพิวเตอร์เป็นสิ่งจำเป็นและมีความสำคัญต่อหน่วยงานทั้งภาครัฐและเอกชน จะเห็นได้จาก การประมวลผลข้อมูล (Data Processing) แบบ Manual เช่น การใช้เครื่องคิดเลข การทำงานบนกระดาษ การทำงานด้วย Worksheet ตลอดจนการเก็บเอกสารในรูปของกระดาษหรือแฟ้ม และรวบรวมเก็บไว้ในตู้หรือชั้น มีแนวโน้มลดลงอย่างรวดเร็ว ทั้งนี้เกิดจากหลายสาเหตุ ได้แก่ ปริมาณของข้อมูลมีมากขึ้นในลักษณะทวีคูณ (Exponential Growth) ราคาของเครื่องมือที่ใช้ในการประมวลผลซึ่งก็คือระบบคอมพิวเตอร์ถูกลงมาก รวมถึงการแข่งขันในเชิงของเวลาและคุณภาพในการนำข้อมูลที่ถูกประมวลผลแล้วไปใช้งานสูงขึ้น เป็นต้น ข้อมูลเป็นส่วนที่สำคัญยิ่งของการประมวลผลเพราะถ้าปราศจากข้อมูล การประมวลผลก็ไม่อาจทำได้ ความเป็นมาของการจัดการข้อมูลก่อนที่จะมาเป็นยุคของระบบฐานข้อมูล เริ่มต้นที่ระบบแฟ้มข้อมูล (File Systems) ซึ่งแนวคิดนี้พัฒนามาจากลักษณะการเก็บข้อมูลเอกสารจริงๆของหน่วยงาน นั่นคือแฟ้มเอกสารของงานหนึ่งก็คือแฟ้มกระดาษที่มีการเจาะรูตรงกลาง เช่นแฟ้มข้อมูลลูกค้า จะประกอบด้วยเอกสารที่มีรายละเอียดของลูกค้าทั้งหมดของบริษัท ได้แก่ ชื่อ ที่อยู่ เบอร์โทรศัพท์ ที่อยู่ที่สามารถติดต่อได้ ฯลฯ และบริษัทหนึ่งๆ อาจแฟ้มข้อมูลอื่นๆได้อีก เช่น แฟ้มข้อมูลเรื่องสินค้า แฟ้มข้อมูลเรื่องการขาย แฟ้มข้อมูลเรื่องเช็คธนาคาร เป็นต้น ซึ่งแต่ละแฟ้มข้อมูลก็จะประกอบด้วยข้อมูลในเรื่องเดียวกัน เมื่อนำแนวคิดดังกล่าวมาใช้ในระบบคอมพิวเตอร์ ข้อมูลที่ใช้ในการประมวลผลด้วยเครื่องคอมพิวเตอร์จะเป็นข้อมูลที่จัดเก็บในรูปของแฟ้มข้อมูลในลักษณะคล้ายๆกัน แต่มีการเรียกหรือตั้งชื่อ (Terms) เฉพาะ เช่น ในแฟ้มข้อมูลลูกค้า รายละเอียดของลูกค้าแต่ละคน เรียกว่า ระเบียนหรือเรคอร์ด (Records) แฟ้มข้อมูลหนึ่งๆ จะประกอบด้วยระเบียนหลายๆ ระเบียน (มีลูกค้าหลายคน) และในแต่ละระเบียนประกอบด้วยหลายๆ ฟิลด์ (Fields) ซึ่งก็คือรายละเอียดของลูกค้านั่นเอง เราสามารถแสดงโครงสร้างของแฟ้มข้อมูลในลักษณะรูปภาพ ได้รูป รูปภาพที่ 1 แสดงโครงสร้างของแฟ้มข้อมูล ดังนั้นการประมวลผลกับแฟ้มข้อมูล (File Processing) เป็นเรื่องที่ค่อนข้างยุ่งยากและเกิดความซ้ำซ้อนของข้อมูลระหว่างแฟ้มข้อมูลได้ง่าย เพราะบริษัทหนึ่งๆ มักมีแฟ้มข้อมูลมากกว่าหนึ่งแฟ้มและรายละเอียดข้อมูลบางแฟ้มอาจซ้ำกัน ทำให้เกิดแนวคิดในการพัฒนาระบบฐานข้อมูลขึ้นเพื่อลดปัญหาดังกล่าว ความหมายของระบบฐานข้อมูล (Database System) ฐานข้อมูลมาจากคำศัพท์ 2 คำ คือ ฐาน และข้อมูล พจนานุกรมฉบับราชบัณฑิตยสถานพุทธศักราช 2542 (2542:392) ได้อธิบายว่า ฐาน หมายถึง ที่ตั้ง ที่รองรับ ข้อมูล หมายถึง ข้อเท็จจริง หรือสิ่งที่ถือหรือยอมรับว่าเป็นข้อเท็จจริง สำหรับใช้เป็นหลักอนุมานหาความจริงหรือการคำนวณ จากความหมายดังกล่าวสรุปได้ว่า ฐานข้อมูล (Database) คือ การรวบรวมและจัดเก็บชุดของข้อมูลที่มีความสัมพันธ์กันมาไว้ด้วยกันอย่างเป็นระบบ เพื่อให้ผู้ใช้สามารถเรียกใช้ข้อมูลเหล่านั้นร่วมกันได้อย่างรวดเร็วและมีประสิทธิภาพ ระบบฐานข้อมูล (Database Systems) หมายถึง กลุ่มของข้อมูลที่ถูกเก็บรวบรวมไว้ โดยมีความสัมพันธ์ซึ่งกันและกัน โดยไม่ได้บังคับว่าข้อมูลทั้งหมดนี้จะต้องเก็บไว้ในแฟ้มข้อมูลเดียวกันหรือแยกเก็บหลาย ๆ แฟ้มข้อมูล นั่นก็คือการเก็บข้อมูลในฐานข้อมูลนั้นเราอาจจะเก็บทั้งฐานข้อมูล โดยใช้แฟ้มข้อมูลเพียงแฟ้มข้อมูลเดียวกันได้ หรือจะเก็บไว้ในหลาย ๆ แฟ้มข้อมูล ที่สำคัญคือจะต้องสร้างความสัมพันธ์ระหว่างระเบียนและเรียกใช้ความสัมพันธ์นั้นได้ มีการกำจัดความซ้ำซ้อนของข้อมูลออกและเก็บแฟ้มข้อมูลเหล่านี้ไว้ที่ศูนย์กลาง เพื่อที่จะนำข้อมูลเหล่านี้มาใช้ร่วมกัน ควบคุมดูแลรักษาเมื่อผู้ต้องการใช้งานและผู้มีสิทธิ์จะใช้ข้อมูลนั้นสามารถดึงข้อมูลที่ต้องการออกไปใช้ได้ ข้อมูลบางส่วนอาจใช้ร่วมกับผู้อื่นได้ แต่บางส่วนผู้มีสิทธิ์เท่านั้นจึงจะสามารถใช้ได้ โดยทั่วไปองค์กรต่าง ๆ จะสร้างฐานข้อมูลไว้ เพื่อเก็บข้อมูลต่าง ๆ ขององค์กร โดยเฉพาะอย่างยิ่งข้อมูลในเชิงธุรกิจ เช่น ข้อมูลของลูกค้า ข้อมูลของสินค้า ข้อมูลของลูกจ้าง และการจ้างงาน เป็นต้น ระบบฐานข้อมูลมีความซับซ้อน การควบคุมดูแลการใช้ฐานข้อมูล เป็นเรื่องที่ยุ่งยากกว่าการใช้แฟ้มข้อมูลมาก เพราะเราจะต้องตัดสินใจว่าโครงสร้างในการจัดเก็บข้อมูลควรจะเป็นเช่นไร การเขียนโปรแกรมเพื่อสร้างและเรียกใช้ข้อมูลจากโครงสร้างเหล่านี้ ถ้าโปรแกรมเหล่านี้เกิดทำงานผิดพลาดขึ้นมา ก็จะเกิดความเสียหายต่อโครงสร้างของข้อมูลทั้งหมดได้ เพื่อเป็นการลดภาระการทำงานของผู้ใช้ จึงได้มีส่วนของฮาร์ดแวร์และโปรแกรมต่าง ๆ ที่สามารถเข้าถึงและจัดการข้อมูลในฐานข้อมูลนั้น เรียกว่า ระบบจัดการฐานข้อมูล หรือDBMS (Database Management Systems) ระบบจัดการฐานข้อมูล คือ ซอฟต์แวร์ที่เปรียบเสมือนสื่อกลางระหว่างผู้ใช้และโปรแกรมต่าง ๆ ที่เกี่ยวข้องกับการใช้ฐานข้อมูล ซึ่งมีหน้าที่ช่วยให้ผู้ใช้เข้าถึงข้อมูลได้ง่ายสะดวกและมีประสิทธิภาพ การเข้าถึงข้อมูลของผู้ใช้อาจเป็นการสร้างฐานข้อมูล การแก้ไขฐานข้อมูล หรือการตั้งคำถามเพื่อให้ข้อมูลมา โดยผู้ใช้ไม่จำเป็นต้องรับรู้เกี่ยวกับรายละเอียดภายในโครงสร้างของฐานข้อมูล เปรียบเสมือนเป็นสื่อกลางระหว่างผู้ใช้และโปรแกรมต่าง ๆ ที่เกี่ยวข้องกับการใช้ฐานข้อมูล ระบบฐานข้อมูล จึงนับว่าเป็นการจัดเก็บข้อมูลอย่างเป็นระบบ ซึ่งผู้ใช้สามารถจัดการกับข้อมูลได้ในลักษณะต่าง ๆ ทั้งการเพิ่ม การแก้ไข การลบ ตลอดจนการเรียกดูข้อมูล ซึ่งส่วนใหญ่จะเป็นการประยุกต์นำเอาระบบคอมพิวเตอร์เข้ามาช่วยในการจัดการฐานข้อมูล ประวัติความเป็นมาของฐานข้อมูล ฐานข้อมูลในลักษณะที่คล้ายกับฐานข้อมูลสมัยใหม่ ถูกพัฒนาเป็นครั้งแรกในทศวรรษ 1960 ซึ่งผู้บุกเบิกในสาขานี้คือ ชาลส์ บากแมน แบบจำลองข้อมูลสำคัญสองแบบเกิดขึ้นในช่วงเวลานี้ ซึ่งเริ่มต้นด้วย แบบจำลองข่ายงาน (พัฒนาโดย CODASYL) และตามด้วยแบบจำลองเชิงลำดับชั้น (นำไปปฏิบัติใน IMS) แบบจำลองทั้งสองแบบนี้ ในภายหลังถูกแทนที่ด้วย แบบจำลองเชิงสัมพันธ์ ซึ่งอยู่ร่วมสมัยกับแบบจำลองอีกสองแบบ แบบจำลองแบบแรกเรียกกันว่า แบบจำลองแบนราบ ซึ่งออกแบบสำหรับงานที่มีขนาดเล็กมาก ๆ แบบจำลองร่วมสมัยกับแบบจำลองเชิงสัมพันธ์อีกแบบ คือ ฐานข้อมูลเชิงวัตถุ หรือ โอโอดีบี3 (OODB) ในขณะที่แบบจำลองเชิงสัมพันธ์ มีพื้นฐานมาจากทฤษฎีเซต ได้มีการเสนอแบบจำลองดัดแปลงซึ่งใช้ทฤษฎีเซตคลุมเครือ (ซึ่งมีพื้นฐานมาจากตรรกะคลุมเครือ) ขึ้นเป็นอีกทางเลือกหนึ่ง ปัจจุบันมีการกล่าวถึงมาตรฐานโครงสร้างฐานข้อมูล เพื่อให้สามารถเชื่อมโยงฐานข้อมูลต่างระบบ ให้สืบค้นรวมกันเสมือนเป็นฐานข้อมูลเดียวกัน และการสืบค้นต้องแสดงผลตรงตามคำถาม มาตรฐานดังกล่าวได้แก่ XML RDF Dublin Core Metadata เป็นต้น และสิ่งสำคัญอีกประการหนึ่งที่จะช่วยให้การแลกเปลี่ยนข้อมูลระหว่างต่างหน่วยงานได้ดี คือการใช้ Taxonomy และ อรรถาภิธาน ซึ่งเป็นเครื่องมือสำหรับจัดการความรู้ในลักษณะศัพท์ควบคุม เพื่อจำกัดความหมายของคำที่ใช้ได้หลายคำในความหมายเดียวกัน ปัญหาของการจัดการข้อมูลในอดีต ข้อมูลที่จัดเก็บเป็นเอกสารหรือการจัดเก็บด้วยระบบฐานข้อมูลที่ใช้ ภาษาคอมพิวเตอร์ในการเขียนชุดคำสั่ง เริ่มมีการเขียนด้วยภาษาในยุคที่ 3 เช่น ภาษาฟอร์เทรน ภาษาโคบอล ภาษาซี เป็นต้น กระบวนการเขียนโปรแกรมชุดคำสั่งจะต้องเขียนโดยการใช้โครงสร้างข้อมูล การสร้างแฟ้ม แทรกข้อมูล แก้ไขหรือปรับปรุงข้อมูล อาจเกิดปัญหาหลาย ๆ อย่าง ปัญหาเหล่านั้นได้แก่ ความยุ่งยากจากการประมวลผลกับระบบแฟ้มข้อมูล แฟ้มข้อมูลไม่มีความอิสระ แฟ้มข้อมูลมีความซ้ำซ้อนกันมาก แฟ้มข้อมูลมีความถูกต้องของข้อมูลน้อย แฟ้มข้อมูลมีความปลอดภัยน้อย และไม่มีการควบคุมจากศูนย์กลาง เป็นต้น รายละเอียด มีดังนี้ 1. ความยุ่งยากจากการประมวลผลกับระบบแฟ้มข้อมูลการดำเนินงานกับแฟ้มข้อมูลในระบบคอมพิวเตอร์นั้นจำเป็นจะต้องเขียนคำสั่งต่างๆ ในโปรแกรมเพื่อสร้างแฟ้มข้อมูล ใช้แฟ้มข้อมูล และปรับปรุงแฟ้มข้อมูลให้เป็นปัจจุบัน รูปแบบของคำสั่งเหล่านี้ถูกกำหนดไว้ในภาษาคอมพิวเตอร์ต่างๆ แล้ว ชุดคำสั่งของโปรแกรมต้องเขียนให้สอดคล้องกับข้อกำหนดของภาษา เช่น ถ้าภาษาคอมพิวเตอร์ที่ใช้กำหนดว่าจะต้องระบุชื่อแฟ้มข้อมูลในโปรแกรม ผู้เขียนโปรแกรมต้องปฏิบัติตามอย่างเคร่งครัด การใช้แฟ้มข้อมูลในแบบนี้ มีลักษณะจำกัด คือ ต้องระบุรายละเอียดของแฟ้ม วิธีการจัดแฟ้มข้อมูล และรายละเอียดของระเบียนที่อยู่ในแฟ้มเอาไว้ในโปรแกรมอย่างครบถ้วน หากกำหนดรายละเอียดผิดไปหรือกำหนดไม่ครบ ทำให้โปรแกรมทำงานผิดพลาดได้ 2. แฟ้มข้อมูลไม่มีความเป็นอิสระ ในระบบแฟ้มข้อมูลถ้ามีการแก้ไขโครงสร้างข้อมูลใหม่ ย่อมส่งผลกระทบถึงคำสั่งที่ได้เขียนเอาไว้ก่อนหน้านี้ด้วย เนื่องจากการเรียกใช้ข้อมูลที่เก็บอยู่ในระบบแฟ้มข้อมูล ต้องใช้โปรแกรมที่เขียนขึ้นมาเพื่อเรียกข้อมูลในแฟ้มข้อมูลโดยตรง เช่น เมื่อถ้าต้องการรายชื่อผู้บริจาคโลหิตหมู่โลหิต A- ที่อยู่ในเขตจังหวัดสงขลา โปรแกรมเมอร์ต้องเขียนคำสั่งเพื่ออ่านข้อมูลจากแฟ้มข้อมูลผู้บริจาคโลหิตและพิมพ์รายงานที่แสดงเฉพาะข้อมูลที่ตรงตามเงื่อนไขที่กำหนด กรณีที่มีการเปลี่ยนแปลงโครงสร้างของแฟ้มข้อมูล เช่น เขตข้อมูลที่อยู่ จากเดิมมีเป็นกลุ่มข้อมูล ถ้าแยกเขตข้อมูลใหม่เป็น บ้านเลขที่ หมู่ที่ ตำบล อำเภอ จังหวัด ดังตารางที่ 1 ตารางที่ 1 แฟ้มข้อมูลไม่มีความเป็นอิสระ ทำให้ชุดคำสั่งนั้นทำงานผิดพลาด หรือไม่สามารถทำงานได้ตามความประสงค์ วิธีแก้ไขคือต้องมีการเปลี่ยนชุดคำสั่งในโปรแกรมให้เป็นไปตามโครงสร้างที่เปลี่ยนใหม่ ลักษณะการเกิดเหตุการณ์แบบนี้เรียกว่าข้อมูลและโปรแกรมไม่เป็นอิสระต่อกัน 3. แฟ้มข้อมูลมีความซ้ำซ้อนมากเนื่องจากการใช้งานระบบฐานข้อมูลนั้นต้องมีการออกแบบฐานข้อมูลเพื่อให้มีความซ้ำซ้อนของข้อมูลน้อยที่สุด จุดประสงค์หลักของการออกแบบฐานข้อมูลเพื่อการลดความซ้ำซ้อนนั่นเองสาเหตุที่ต้องลดความซ้ำซ้อน เนื่องจากความยากในการปรับปรุงข้อมูล กล่าวคือถ้าเก็บข้อมูลซ้ำซ้อนกันหลายแห่ง เมื่อมีการปรับปรุงข้อมูลแล้วปรับปรุงข้อมูลไม่ครบทำให้ข้อมูลเกิดความขัดแย้งกันของข้อมูลตามมา และยังเปลืองเนื้อที่การจัดเก็บข้อมูลด้วย เนื่องจากข้อมูลชุดเดียวกันจัดเก็บซ้ำกันหลายแห่งนั่นเอง ถึงแม้ว่าความซ้ำซ้อนช่วยให้ออกรายงานและตอบคำถามได้เร็วขึ้น แต่ความซ้ำซ้อนทำให้ข้อมูลมีความขัดแย้งกัน ถ้าข้อมูลไม่ถูกต้องและมีความขัดแย้งกันแล้ว การออกรายงานจะทำได้เร็วเพียงไรก็ตามแต่จะไม่มีประโยชน์เพราะว่า ทำให้ไม่ทราบว่าข้อมูลใดถูก ดังนั้นจึงต้องมีวิธีการออกแบบฐานข้อมูลเพื่อลดความซ้ำซ้อนของข้อมูลให้มากที่สุด 4. แฟ้มข้อมูลมีความถูกต้องของข้อมูลน้อย เนื่องจากแฟ้มข้อมูลไม่สามารถตรวจสอบกฎบังคับความถูกต้องของข้อมูลให้ได้ ถ้าต้องการควบคุมข้อมูลโปรแกรมเมอร์ต้องเขียนโปรแกรมเพื่อควบคุมกฎระเบียบต่างๆ เองทั้งหมด ถ้าเขียนโปรแกรมครอบคลุมกฎระเบียบใดไม่ครบหรือขาดหายไปบางกฎอาจทำให้ข้อมูลผิดพลาดได้ ซึ่งต่างจากระบบฐานข้อมูลที่ระบบจัดการฐานข้อมูลจะมีกฏบังคับความถูกต้อง โดยนำกฎเหล่านั้นมาไว้ที่ฐานข้อมูล ซึ่งถือเป็นหน้าที่ของระบบจัดการฐานข้อมูลที่จะจัดการเรื่องความถูกต้องของข้อมูลให้แทน และยังช่วยลดค่าใช้จ่ายในการบำรุงรักษาและการแก้ไขโปรแกรมด้วยเนื่องจากระบบจัดการฐานข้อมูลจัดการให้เอง 5.แฟ้มข้อมูลมีความปลอดภัยน้อย ในระบบฐานข้อมูล ถ้าหากทุกคนสามารถเรียกดูและเปลี่ยนแปลงข้อมูลในฐานข้อมูลทั้งหมดได้ อาจก่อให้เกิดความเสียหายต่อข้อมูลได้ และข้อมูลบางส่วนอาจเป็นข้อมูลที่ไม่อาจเปิดเผยได้หรือเป็นข้อมูลเฉพาะของผู้บริหาร หากไม่มีการจัดการด้านความปลอดภัยของข้อมูล ฐานข้อมูลจะไม่สามารถใช้เก็บข้อมูลบางส่วนได้ ระบบฐานข้อมูลส่วนใหญ่มีการรักษาความปลอดภัยของข้อมูล ได้แก่ ต้องมีชื่อผู้ใช้ และรหัสผ่าน ในการเข้าใช้งานฐานข้อมูลสำหรับผู้ใช้แต่ละคน ผู้บริหารฐานข้อมูลสามารถสร้างและจัดการตารางข้อมูลทั้งหมดในฐานข้อมูลได้ ทั้งการเพิ่มและระงับรายชื่อผู้ใช้ รวมทั้งอนุญาตให้ผู้ใช้สามารถเรียกดู ป้อนข้อมูลเพิ่มเติม ลบและแก้ไขข้อมูลได้ ผู้บริหารฐานข้อมูลสามารถใช้คำสั่งวิว เพื่อประโยชน์ในการรักษาความปลอดภัยของข้อมูลได้เป็นอย่างดี โดยการสร้างวิวที่เสมือนเป็นตารางของผู้ใช้จริง ๆ และข้อมูลที่ปรากฏในวิวจะเป็นข้อมูลที่เกี่ยวข้องกับงานของผู้ใช้เท่านั้น ซึ่งไม่กระทบกับข้อมูลจริงในฐานข้อมูล ระบบการจัดการฐานข้อมูลไม่ยินยอมให้โปรแกรมใดๆ เข้าถึงข้อมูลในระดับกายภาพได้ ระบบการจัดการฐานข้อมูลมีการเข้ารหัสและถอดรหัส เพื่อปกปิดข้อมูลแก่ผู้ที่ไม่เกี่ยวข้อง เช่น มีการเข้ารหัสของรหัสผ่าน ซึ่งในส่วนต่าง ๆ เหล่านี้ในระบบแฟ้มข้อมูลจะไม่มีการเข้ารหัส เป็นต้น 6. ไม่มีการควบคุมจากศูนย์กลาง ระบบแฟ้มข้อมูลจะไม่มีการควบคุมการใช้ข้อมูลจากศูนย์กลาง เนื่องจากข้อมูลที่หน่วยงานย่อยใช้สามารถใช้ข้อมูลได้อย่างเสรีโดยไม่มีศูนย์กลางในการควบคุม ทำให้ไม่ทราบว่าหน่วยงานใดใช้ข้อมูลในระดับใดบ้างใครเป็นผู้นำข้อมูลเข้าใครมีสิทธิ์แก้ไขข้อมูล และใครมีสิทธิ์เรียกใช้ข้อมูลได้เพียงอย่างเดียว ความสำคัญของระบบการจัดการฐานข้อมูล การนำเอาระบบคอมพิวเตอร์มาใช้งานเพื่อประมวลผลข้อมูล นอกจากอำนวยความสะดวกในการทำงานได้รวดเร็วแล้ว ยังมีความถูกต้องแม่นยำในการประมวลผลอีกด้วย ตัวอย่าง เช่น กรณีระบบฐานข้อมูลของโรงพยาบาล เมื่อมีผู้ป่วยต้องการเลือดหมู่โลหิตพิเศษโดยเร่งด่วนจำเป็นต้องการผู้บริจาคโลหิตหมู่โลหิตเดียวกันโดยใช้ฐานข้อมูลค้นหาผู้บริจาคโลหิตที่มีคุณสมบัติได้อย่างรวดเร็วได้แก่ผู้บริจาคต้องน้ำหนักมากกว่า 45 กก. และบริจาคครั้งสุดท้ายมาแล้วเกิน 90 วัน ผู้บริจาคควรมีที่อยู่ใกล้โรงพยาบาล เป็นต้น นอกจากนี้ระบบฐานข้อมูลยังมีความสำคัญในด้านต่าง ๆ อีก ดังนี้ จากการจัดเก็บข้อมูลรวมเป็นฐานข้อมูลจะก่อให้เกิดประโยชน์ดังนี้ 1. สามารถลดความซ้ำซ้อนของข้อมูลได้ การเก็บข้อมูลชนิดเดียวกันไว้หลาย ๆ ที่ ทำให้เกิดความซ้ำซ้อน (Redundancy) ดังนั้นการนำข้อมูลมารวมเก็บไว้ในฐานข้อมูล จะชาวยลดปัญหาการเกิดความซ้ำซ้อนของข้อมูลได้ โดยระบบจัดการฐานข้อมูล (Database Management System : DBMS) จะช่วยควบคุมความซ้ำซ้อนได้ เนื่องจากระบบจัดการฐานข้อมูลจะทราบได้ตลอดเวลาว่ามีข้อมูลซ้ำซ้อนกันอยู่ที่ใดบ้าง 2. หลีกเลี่ยงความขัดแย้งของข้อมูลได้ หากมีการเก็บข้อมูลชนิดเดียวกันไว้หลาย ๆ ที่และมีการปรับปรุงข้อมูลเดียวกันนี้ แต่ปรับปรุงไม่ครบทุกที่ที่มีข้อมูลเก็บอยู่ก็จะทำให้เกิดปัญหาข้อมูลชนิดเดียวกัน อาจมีค่าไม่เหมือนกันในแต่ละที่ที่เก็บข้อมูลอยู่ จึงก่อให้เกิดความขัดแย้งของข้อมูลขึ้น (Inconsistency) 3. สามารถใช้ข้อมูลร่วมกันได้ ฐานข้อมูลจะเป็นการจัดเก็บข้อมูลรวมไว้ด้วยกัน ดังนั้นหากผู้ใช้ต้องการใช้ข้อมูลในฐานข้อมูลที่มาจากแฟ้มข้อมูลต่างๆ ก็จะทำได้โดยง่าย 4. สามารถรักษาความถูกต้องเชื่อถือได้ของข้อมูล บางครั้งพบว่าการจัดเก็บข้อมูลในฐานข้อมูลอาจมีข้อผิดพลาดเกิดขึ้น เช่น จากการที่ผู้ป้อนข้อมูลป้อนข้อมูลผิดพลาดคือป้อนจากตัวเลขหนึ่งไปเป็นอีกตัวเลขหนึ่ง โดยเฉพาะกรณีมีผู้ใช้หลายคนต้องใช้ข้อมูลจากฐานข้อมูลร่วมกัน หากผู้ใช้คนใดคนหนึ่งแก้ไขข้อมูลผิดพลาดก็ทำให้ผู้อื่นได้รับผลกระทบตามไปด้วย ในระบบจัดการฐานข้อมูล (DBMS) จะสามารถใส่กฎเกณฑ์เพื่อควบคุมความผิดพลาดที่เกดขึ้น 5. สามารถกำหนดความเป็นมาตรฐานเดียวกันของข้อมูลได้ การเก็บข้อมูลร่วมกันไว้ในฐานข้อมูลจะทำให้สามารถกำหนดมาตรฐานของข้อมูลได้รวมทั้งมาตรฐานต่าง ๆ ในการจัดเก็บข้อมูลให้เป็นไปในลักษณะเดียวกันได้ เช่นการกำหนดรูปแบบการเขียนวันที่ ในลักษณะ วัน/เดือน/ปี หรือ ปี/เดือน/วัน ทั้งนี้จะมีผู้ที่คอยบริหารฐานข้อมูลที่เราเรียกว่า ผู้บริหารฐานข้อมูล (Database Administrator : DBA) เป็นผู้กำหนดมาตรฐานต่างๆ 6. สามารถกำหนดระบบความปลอดภัยของข้อมูลได้ ระบบความปลอดภัยในที่นี้ เป็นการป้องกันไม่ให้ผู้ใช้ที่ไม่มีสิทธิมาใช้ หรือมาเห็นข้อมูลบางอย่างในระบบ ผู้บริหารฐานข้อมูลจะสามารถกำหนดระดับการเรียกใช้ข้อมูลของผู้ใช้แต่ละคนได้ตามความเหมาะสม 7. เกิดความเป็นอิสระของข้อมูล ในระบบฐานข้อมูลจะมีตัวจัดการฐานข้อมูลที่ทำหน้าที่เป็นตัวเชื่อมโยงกับฐานข้อมูล โปรแกรมต่าง ๆ อาจไม่จำเป็นต้องมีโครงสร้างข้อมูลทุกครั้ง ดังนั้นการแก้ไขข้อมูลบางครั้ง จึงอาจกระทำเฉพาะกับโปรแกรมที่เรียกใช้ข้อมูลที่เปลี่ยนแปลงเท่านั้น ส่วนโปรแกรมที่ไม่ได้เรียกใช้ข้อมูลดังกล่าว ก็จะเป็นอิสระจากการเปลี่ยนแปลง รูปแบบของฐานข้อมูล รูปแบบของฐานข้อมูลโดยทั่วไปที่รู้จักกันในปัจจุบันมี 4 แบบ คือ 1. ฐานข้อมูลแบบเครือข่าย (Network Database) ฐานข้อมูลแบบเครือข่ายจะเป็นการรวมระเบียนต่าง ๆ และความสัมพันธ์ระหว่างระเบียนแต่จะต่างกับฐานข้อมูลเชิงสัมพันธ์ คือ ในฐานข้อมูลเชิงสัมพันธ์จะแฝงความสัมพันธ์เอาไว้ โดยระเบียนที่มีความสัมพันธ์กันจะต้องมีค่าของข้อมูลในแอททริบิวต์ใดแอททริบิวต์หนึ่งเหมือนกัน แต่ฐานข้อมูลแบบเครือข่าย จะแสดงความสัมพันธ์อย่างชัดเจน – ลักษณะโครงสร้างระบบฐานข้อมูลแบบเครือข่ายจะมีโครงสร้างของข้อมูลแต่ละแฟ้มข้อมูลมีความสัมพันธ์คล้ายร่างแห ข้อดี
2. ฐานข้อมูลแบบลำดับชั้น (Hierarchical Database) ฐานข้อมูลแบบลำดับชั้น เป็นโครงสร้างที่จัดเก็บข้อมูลในลักษณะความสัมพันธ์แบบพ่อ-ลูก (Parent-Child Relationship Type : PCR Type) หรือเป็นโครงสร้างรูปแบบต้นไม้ (Tree) ข้อมูลที่จัดเก็บในที่นี้ คือ ระเบียน (Record) ซึ่งประกอบด้วยค่าของเขตข้อมูล (Field) ของเอนทิตี้หนึ่ง ๆ คุณสมบัติของฐานข้อมูลแบบลำดับขั้น
ลักษณะเด่น
ข้อเสีย
ฐานข้อมูลแบบลำดับชั้นนี้คล้ายคลึงกับฐานข้อมูลแบบเครือข่าย แต่ต่างกันที่ฐานข้อมูลแบบลำดับชั้น มีกฎเพิ่มขึ้นมาอีกหนึ่งประการ คือ ในแต่ละกรอบจะมีลูกศรวิ่งเข้าหาได้ไม่เกิน 1 หัวลูกศร 3. ฐานข้อมูลเชิงสัมพันธ์ (Relational Database) เป็นการเก็บข้อมูลในรูปแบบที่เป็นตาราง (Table) หรือเรียกว่า รีเลชั่น (Relation) มีลักษณะเป็น 2 มิติ คือเป็นแถว (row) และเป็นคอลัมน์ (column) การเชื่อมโยงข้อมูลระหว่างตาราง จะเชื่อมโยงโดยใช้แอททริบิวต์ (attribute) หรือคอลัมน์ที่เหมือนกันทั้งสองตารางเป็นตัวเชื่อมโยงข้อมูล ฐานข้อมูลเชิงสัมพันธ์นี้จะเป็นรูปแบบของฐานข้อมูลที่นิยมใช้ในปัจจุบัน ดังตัวอย่าง
ตารางที่ 2 แสดงตารางพนักงาน ข้อดี
ข้อเสีย
ฐานข้อมูลแบบสัมพันธ์จะนำเสนอข้อมูลและความสัมพันธ์ระหว่างข้อมูลในรูป รีเลชัน (Relation) หรือเรียกอีกอย่างหนึ่งว่าตาราง (Table) ตัวอย่างของ Relation แสดงในตารางที่ 3
ตารางที่ 3 : Persons โครงสร้างของ Relation ประกอบด้วย
คีย์หลัก (Primary key) เป็น attribute หรือกลุ่มของ attributes ที่บ่งบอกว่าข้อมูลจะต้องไม่ซ้ำกันในแต่ละแถวข้อมูลของตาราง ดังนั้นค่าของคีย์หลักจะต้องไม่ซ้ำกันในแต่ละ tuple เช่นจาก ตาราง Persons สามารถใช้ LastName เป็นคีย์หลัก สิ่งที่ผู้เรียนควรทราบเกี่ยวกับข้อมูลในตาราง ของฐานข้อมูลแบบสัมพันธ์
Attribute ไม่มีลำดับจากซ้ายไปขวาทุก attributes ในแต่ละตำแหน่งของ tuple ในตาราง จะมีค่าเพียงค่าเดียว จะไม่มีรายการของข้อมูล (เรียกว่า repeating group หรือ list of value) ในตาราง relation 4. ฐานข้อมูลเชิงวัตถุ (Object Oriented Model)
วัตถุประสงค์ของแบบจำลองข้อมูล
ประเภทของระบบฐานข้อมูล การแบ่งประเภทของระบบฐานข้อมูลมีการแบ่งออกหลายประเภท ขึ้นอยู่กับชนิดและประเภทที่นำมาจำแนกในบทเรียนนี้จะแบ่งประเภทของระบบฐานข้อมูลออกเป็น 4 ประเภทใหญ่ ตามชนิดต่าง ๆ ดังนี้ 1. แบ่งตามจำนวนของผู้ใช้ การแบ่งโดยใช้จำนวนผู้ใช้เป็นหลัก สามารถแบ่งออกเป็น 2 ประเภทได้แก่ 1.1 ผู้ใช้คนเดียวเป็นระบบฐานข้อมูลที่ใช้ภายในองค์กรขนาดเล็ก เช่น ระบบ Point of sale ของร้านสะดวกซื้อ หรือระบบบัญชีของร้านเล็ก ๆ ทั่วไป เป็นต้น มีเครื่องคอมพิวเตอร์เพียงเครื่องเดียวและผู้ใช้เพียงคนเดียว ไม่มีการแบ่งฐานข้อมูลร่วมกันใช้กับผู้อื่น ถ้าผู้ใช้คนอื่นต้องการใช้ระบบนี้จะต้องรอให้ผู้ใช้คนแรกเลิกใช้ก่อนจึงจะใช้ได้ 1.2 ผู้ใช้หลายคน แบ่งออกเป็น 2 ประเภทย่อย ๆ ได้แก่ ผู้ใช้เป็นกลุ่ม หรือ Workgroup database และประเภทฐานข้อมูลขององค์กรขนาดใหญ่หรือ Enterprise database ผู้ใช้เป็นกลุ่ม เป็นฐานข้อมูลที่มีผู้ใช้หลายกลุ่มหรือหลายแผนก และแต่ละกลุ่มอาจมีผู้ใช้หลายคน มีการแลกเปลี่ยนข้อมูลซึ่งกันหรืออาจจะใช้ฐานข้อมูลเดียวกันก็ได้ แต่จะอยู่ในองค์กรเดียวกันเท่านั้น องค์การขนาดใหญ่ เป็นระบบฐานข้อมูลที่ใช้กับองค์กรขนาดใหญ่ที่มีสาขาหลายสาขา ทั้งในประเทศหรือมีสาขาในต่างประเทศ จะใช้ฐานข้อมูลขนาดใหญ่ มีระบบสำรอง การรักษาความปลอดภัยเป็นอย่างดี 2. แบ่งโดยใช้ขอบเขตของงาน การแบ่งโดยใช้ขอบเขตของงาน แบ่งออกเป็น 3 ประเภทใหญ่ ๆ ได้แก่ ประเภทผู้ใช้คนเดียว ประเภทผู้ใช้เป็นกลุ่มและประเภทองค์การขนาดใหญ่ ดังได้กล่าวรายละเอียดในตอนต้นแล้ว 3. แบ่งตามสถานที่ตั้ง การแบ่งตามสถานที่ตั้ง แบ่งออกเป็น 2 ประเภทใหญ่ ๆ ได้แก่ ประเภท ศูนย์กลาง และประเภทกระจาย ทั้งสองประเภทมีรายละเอียดดังนี้ 3.1 ประเภทศูนย์กลาง เป็นระบบฐานข้อมูลที่นำเอามาเก็บไว้ในตำแหน่งศูนย์กลาง ผู้ใช้ทุกแผนก ทุกคนจะต้องมาใช้ข้อมูลร่วมกัน ตามสิทธิ์ของผู้ใช้แต่ละกลุ่มหรือแต่ละคน 3.2 ประเภทกระจาย เป็นระบบฐานข้อมูลที่เก็บฐานข้อมูลไว้ ณ ตำแหน่งใด ๆ ของแผนก และแต่ละแผนกใช้ฐานข้อมูลร่วมกันโดยผู้มีสิทธิ์ใช้ตามสิทธิ์ที่ได้กำหนดจากผู้มีอำนาจ การเข้าถึงข้อมูล เช่น ฐานข้อมูลของฝ่ายบุคคลเก็บไว้ที่แผนกทรัพยากรบุคคล ยอมให้ฝ่ายบัญชีนำรายชื่อของพนักงานไปใช้ร่วมกับฐานข้อมูลการจ่ายโบนัส และในขณะเดียวกันฝ่ายบัญชีมีฐานข้อมูลเก็บเงินเดือน สวัสดิการและรายจ่ายต่าง ๆ ของพนักงานเพื่อให้แผนกอื่นๆ เข้ามาใช้ได้เช่นกัน 4. แบ่งตามการใช้งาน การแบ่งตามการใช้งานแบ่งออกเป็น 3 ประเภทใหญ่ ๆ ได้แก่ ฐานข้อมูลสำหรับงานประจำวัน ฐานข้อมูลเพื่อใช้ในการตัดสินใจ และเพื่อเป็นคลังข้อมูล 4.1 ฐานข้อมูลสำหรับงานประจำวัน เป็นระบบฐานข้อมูลที่ใช้ในงานประจำวันของพนักงานระดับปฏิบัติการป้อนข้อมูลเข้าสู่ระบบ เช่น งานสินค้าคงคลัง งานระบบซื้อมาขายไป สำหรับร้านสะดวกซื้อ หรือระบบงานขายของร้านค้าทั่วไป เป็นต้น ฐานข้อมูลประเภทนี้มีการนำข้อมูลเข้า เปลี่ยนแปลงและลบออกตลอดทั้งวัน จึงทำให้ข้อมูลเปลี่ยนแปลงตลอดเวลา 4.2 ฐานข้อมูลเพื่อการตัดสินใจ ระบบฐานข้อมูลประเภทนี้มีไว้เพื่อใช้ในการสนับสนุนการตัดสินใจของผู้ใช้ระดับผู้บริหารระดับกลางขึ้นไป ข้อมูลที่นำเข้ามาในระบบได้จากการป้อนข้อมูลงานประจำวันของฐานข้อมูลสำหรับงานประจำวัน ส่วนใหญ่ฐานข้อมูลประเภทนี้นำไปใช้ในงานวางแผนกลยุทธ์ในองค์กร 4.3 ฐานข้อมูลเพื่อเป็นคลังข้อมูล ฐานข้อมูลประเภทนี้เกิดจากการนำข้อมูลเข้ามาในระบบทุก ๆ วันจึงทำให้เกิดมีข้อมูลขนาดใหญ่ จึงนำเอาข้อมูลที่มีประโยชน์มาสร้างฟังก์ชันหรือสมการต่างเพื่อประมวลผลหาผลลัพธ์ต่าง ๆ ให้เป็นประโยชน์กับองค์กร ที่มา นวลศรี เด่นวัฒนา ภาควิชาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ มหาวิทยาลัยบูรพา ธันวาคม 2545 www.chandra.ac.th/office/ict/document/it/it04/page01.html www.sirikitdam.egat.com/WEB_MIS/103_116/01.html https://sites.google.com/site/thaidatabase2/ http://th.wikipedia.org/wiki/%E0%B8%90%E0%B8%B2%E0%B8%99%E0%B8%82%E0%B9%89%E0%B8%AD%E0%B8%A1%E0%B8%B9%E0%B8%A5 http://203.172.182.81/wbidatabase/unit2/unit2.php เรียบเรียง นายปิยะดนัย วิเคียน ตำแหน่ง ครู โรงเรียนเสริมงามวิทยาคม |