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

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


ความหมายของระบบฐานข้อมูล
ฐานข้อมูล  (database)  คือ กลุ่มข้อมูลที่มีความสัมพันธ์กันและถูกนำมารวบรวมไว้ในที่เดียวกันอย่างเป็นระบบเพื่อนำไปใช้ในวัตถุประสงค์อย่างใดอย่างหนึ่งโดยกลุ่มผู้ใช้ตั้งแต่หนึ่งกลุ่มขึ้นไป 
          ข้อมูล (data)  คือ  ข้อเท็จจริง (real facts) ต่าง ๆ ที่เกี่ยวข้องหรือแสดงคุณลักษณะของบุคคล สิ่งของ สถานที่ หรือ เหตุการณ์ใดๆ ที่อาจเป็นได้ทั้งตัวเลข (numeric) เช่น ราคา ปริมาณ จำนวนเงิน  ส่วนสูง  น้ำหนัก  ระยะทาง  รหัสวิชา  เกรดเฉลี่ย  หรือ ข้อเท็จจริงที่ไม่ใช่ตัวเลข (non-numeric) เช่น ชื่อ  นามสกุล  ที่อยู่  ชื่อสินค้า  ข้อความ  รูปภาพ  หรือ  อื่น ๆ เป็นต้น 
ความสำคัญของระบบฐานข้อมูล
                1. ความกะทัดรัด ( Compactness ) การบันทึกข้อมูลลงในระบบคอมพิวเตอร์จะเก็บข้อมูลไว้ได้เป็นจำนวนมากในที่เดียวกัน อยู่ในสื่ออิเล็กทรอนิกส์ซึ่งประหยัดพื้นที่ ไม่เกะกะอย่างในเอกสารที่เป็นกระดาษ
                2. ความรวดเร็ว ( Speed ) เครื่องคอมพิวเตอร์ในระบบฐานข้อมูลสามารถค้นคืนและปรับปรุงข้อมูลให้เป็นปัจจุบัน ได้เร็วกว่ามือมนุษย์มาก
                3. ความเบื่อหน่ายน้อยกว่า ( Less Drudgery ) ในการดูแลรักษาแฟ้มข้อมูลที่เป็นกระดาษเป็นงานที่หนักกว่ามากหากเปรียบเทียบกับแฟ้มข้อมูลอิเล็กทรอนิกส์ที่อยู่ใน
ระบบฐานข้อมูลคอมพิวเตอร์
                4. ความถูกต้องเป็นปัจจุบัน ( Currency ) เมื่อหันมาใช้ระบบฐานข้อมูลจะทำให้เรามีข้อมูลที่ถูกต้องและทันสมัย พร้อมที่จะตอบคำถามที่เราต้องการทราบได้ทุกเมื่อ


ตัวอย่างเช่น



แผนภาพแสดงโครงสร้างการจัดเก็บข้อมูลของบริษัทไทยพัฒนาจำกัด  จะเห็นแต่ละแผนกต่างเก็บข้อมูลของตัวเองแยกไว้เป็นแต่ละแฟ้มข้อมูลซึ่งมีข้อมูลบางส่วนที่เก็บซ้ำซ้อนกันอยู่ เช่น แฟ้มข้อมูลพนักงานขาย  ของแผนกการตลาด  จะมีข้อมูลส่วนนี้ อยู่ใน  แฟ้มข้อมูลพนักงาน  ของแผนกบุคคล ซึ่งต้องเก็บข้อมูลทุกคนในบริษัทไว้ด้วยเหมือนกัน  โดยแต่ละแผนกจะมีโปรแกรมของตนเองที่ใช้ดึงข้อมูลจากแฟ้มมาประมวลผลและออกรายงาน
                จากตัวอย่างจะเห็นข้อดีในการประมวลผลแบบแฟ้มข้อมูล คือ แต่ละแผนกสามารถเขียนโปรแกรมประมวลผลข้อมูลของตนเองในรูปแบบที่ต้องการได้อย่างอิสระ  การแก้ไขและเรียกใช้ข้อมูลสามารถทำได้ทันที เพระต่างคนต่างเก็บ นอกจากนี้ค่าใช้จ่ายค่อนข้างต่ำ  เพราะข้อมูลจะใช้เฉพาะแผนกไม่ต้องไปเชื่อมโยงกับข้อมูลของแผนกอื่น  จึงไม่ซับซ้อนจนต้องใช้ระบบเครือข่ายและระบบจัดการฐานข้อมูลที่มีประสิทธิภาพสูงมากมาช่วย แต่ปัญหาที่สำคัญจะตามมาสำหรับการจัดเก็บข้อมูลในลักษณะนี้ก็คือ
Æเกิดความซับซ้อนของข้อมูล  (Data Redundancy) ซึ่งจะนำไปสู่การขัดแย้งของข้อมูลได้ (Data Inconsistency) ถ้ามีการแก้ไขข้อมูลในแฟ้มหนึ่งแต่ไม่ได้แก้ไขข้อมูลนั้นในแฟ้มของฝ่ายอื่นด้วย
Æเกิดความไม่เป็นอิสระของข้อมูล (Data Dependency)  เนื่องจากโปรแกรมที่ใช้ในแต่ละแผนกจะต้องผูกพันกับโครงสร้างการจัดเก็บและเรียกใช้ข้อมูล ถ้าเมื่อใดมีการเปลี่ยนแปลงโครงสร้างการจัดเก็บข้อมูล  โปรแกรมทุกโปรแกรมที่เรียกใช้แฟ้มข้อมูลนั้นจะต้องถูกแก้ไขเปลี่ยนแปลงตามไปด้วย  ซึ่งจะเป็นอุปสรรคที่สำคัญต่อการพัฒนโปรแกหรือพัฒนาโครงสร้างการจัดเก็บข้อมูลให้สามารถนำไปใช้งานได้อย่างมีประสิทธิภาพมากขึ้นในระยะยาวเนื่องจากขาดความยืดหยุ่นและความคล่องตัว

ประโยชน์ของระบบฐานข้อมูล ( Benefits of the database approach )
              ประโยชน์ของระบบฐานข้อมูล ( Benefits of the database approach ) นั้น เกิดขึ้นจากการมีระบบฐานข้อมูลที่ช่วย ให้องค์การสามารถควบคุมข้อมูลแบบรวมศูนย์ได ดังนี้
           1. ข้อมูลในระบบฐานข้อมูลสามารถใช้ร่วมกันได้ ( The data can be shared ) ตัวอย่างเช่น โปรแกรมระบบเงินเดือน สามารถเรียกใช้ข้อมูลรหัสพนักงานจาฐานข้อมูลเดียวกับโปรแกรมระบบการขาย ตามภาพในตอนท้ายที่ผ่านมา เป็นต้น
             2. ระบบฐานข้อมูลสามารถช่วยให้มีความซ้ำซ้อนน้อยลง ( Redundancy can be reduced ) ที่ลดความซ้ำซ้อนได้ เพราะเก็บแบบรวม ( Integrated )
           3. ระบบฐานข้อมูลช่วยหลีกเลี่ยงหรือลดความไม่คงที่ของข้อมูล ( Inconsistency can be avoided to some extent. )
           4. ระบบฐานข้อมูลสนับสนุนการทำธุรกรรม ( Transaction support can de provided ) ธุรกรรม คือ ขั้นตอนการทำงานหลายกิจกรรมย่อยมารวมกัน
          5. ระบบฐานข้อมูลสามารถช่วยรักษาความคงสภาพหรือความถูกต้องของข้อมูลได้ ( Integrity can be maintained ) โดยผู้บริหารฐานข้อมูลเป็นผู้กำหนดข้อบังคับความคงสภาพ ( DBA implement integrity constraints or business rules. ) ตามที่ผู้บริหารข้อมูล ( DA ) มอบหมาย เพื่อป้องกันไม่ให้ผู้ใช้เปลี่ยนแปลงข้อมูลในฐานข้อมูลทีโดยไม่ถูกต้อง ไม่ว่าจะโดยตั้งใจหรือไม่ตั้งใจก็ตาม
         6. สามารถบังคับใช้มาตรการรักษาความปลอดภัย ( Security can be enforced ) กล่าวคือ ผู้บริหารฐานข้อมูลสามารถ กำหนดข้อบังคับ เรื่องปลอดภัย ( Security Constraints )
         7. ความต้องการที่เกิดข้อโต้แย้งระหว่างฝ่าย สามารถประนีประนอมได้ ( conflicting requirements can be balanced. )
         8. สามารถบังคับให้เกิดมาตรฐานได้ ( Standards can be enforced )
          9. ระบบฐานข้อมูลให้เกิดความเป็นอิสระของข้อมูล ( Data Independence ) เป็นประโยชน์ข้อสำคัญที่สุดเพราะทำให้ข้อมูลไม่ขึ้นอยู่กับการแทนค่าข้อมูลเชิงกายภาพ ( Physical Data Independence )
ความเป็นอิสระของข้อมูลมี 2 ชนิด คือ
9.1 ความเป็นอิสระทางกายภาพ ( Physical Data Independence )
9.2 ความเป็นอิสระทางตรรกะ ( Logical Data Independence )
ในระบบฐานข้อมูล เราไม่ควรให้ปล่อยโปรแกรมประยุกต์ขาดความเป็นอิสระของเป็นอย่างยิ่งข้อมูล
เพราะ
                1. โปรแกรมประยุกต์คนละตัวกันจะต้องมีมุมมองขอข้อมูลเดียวกันในรูปแบบที่แตกต่างกันได้
                2. ผู้บริหารฐานข้อมูล ต้องมีอิสระที่จะเปลี่ยนแปลงวิธีการแทนค่าทางกายภาพ หรือเปลี่ยนเทคนิคในการเข้าถึงเพื่อสนองตอบความจำเป็นที่เปลี่ยนแปลงไป โดยไม่จำเป็นต้องเปลี่ยนแปลงโปรแกรมประยุกต์ต่างๆ ที่มีใช้กันอยู่
               ความเป็นอิสระของข้อมูล ( Data Independence ) คือ ภูมิคุ้มกันของโปรแกรมประยุกต์ ต่อการเปลี่ยนแปลง ในการแทนข้อมูลทางกายภาพและการเปลี่ยนแปลงเทคนิคการเข้าถึงข้อมูล โดยไม่ต้องดัดแปลงโปรแกรมที่มี อยู่เมื่อมีการ เปลี่ยนแปลง ดังกล่าว ซึ่งแสดงว่าโปรแกรมประยุกต์ที่เกี่ยวข้องไม่ขึ้นอยู่กับวิธีการแทนข้อมูล ในระดับกายภาพหรือเทคนิค การเข้าถึงข้อมูลวิธีใดๆ โดยเฉพาะ เช่น การเปลี่ยนวิธีจาการเข้าถึงแบบตามลำดับ ให้เป็นการเข้าถึงแบบสุ่ม ปกติจะต้องมีการเขียน โปรแกรมประยุกต์นั้นใหม่หรือแก้ไขใหม่ให้เป็นไปตามเทคนิคการเข้าถึงแบบใหม่ หรือตามโครงสร้างการจัดเก็บใหม่ เป็นต้น
                ประเภทการเปลี่ยนแปลงที่ผู้บริหารฐานข้อมูล หรือ DBA อาจต้องกระทำ ซึ่งเราหวังให้โปรแกรมประยุกต์มีภูมิ คุ้มกันตนเองต่อสิ่งเหล่านี้
•  เขต้อมูล เช่น เปลี่ยนชนิดของเขตข้อมูล
•  ระเบียบ เช่น แก้ไข ลบ หรือเพิ่มเติม บางระเบียน
•  แฟ้มข้อมูล เช่น ลบ เพิ่ม หรือเปลี่ยนชื่อแฟ้ม
              ลักษณะของการแทนข้อมูลซึ่งอาจมีการเปลี่ยนแปลงโดยผู้บริหารฐานข้อมูล และระบบบริหารฐานข้อมูล ( DBMS ) จะต้องให้โปรแกรมประยุกต์ภูมิคุ้มกันต่อการเปลี่ยนแลงเหล่านี้ คือ
•  การแทนข้อมูลตัวเลข เช่น Binary, Decimal
•  การแทนข้อมูลตัวอักขระ เช่น EBCDIC เป็น Unicode
•  หน่วยองข้อมูลตัวเลข เช่น นิ้ว เป็น เซนติเมตร
•  การลงรหัสข้อมูล เช่น เปลี่ยนจาก “Green”, “Red” เป็น 1 , 2
•  การแปรข้อมูล ( Data Materialization ) เป็นการนำเอาข้อมูลผ่านกระบวนการ เช่น เปลี่ยนวิธีการหรือขั้นตอนกระบวนการ เปลี่ยนวิธีการคำนวณในสูตรคำนวณดอกเบี้ย เปลี่ยนวิธีการบวกค่าในเขตข้อมูล
•  โครงสร้างระเบียน เช่น จาก 2 ระเบียนเปลี่ยนเป็น 1 ระเบียน 
• โครงสร้างแฟ้ม เช่น รวมหลายแฟ้มไว้ในดิสก์ก้อนเดียวกัน หรือแบ่งเป็นหลายก้อน
             การเปลี่ยนแปลงลักษณะการแทนข้อมูลดังกล่าวนี้ไม่มีผลกระทบต่อโปแกรมประยุกต์ที่เรียกใช้ ข้อมูลจากฐานข้อมูล ไม่ว่าด้วยวิธีการใดๆ (ยกเว้นประสิทธิภาพทางการทำงานซึ่งอาจกระทบได้บ้างในระดับที่ยอมรับได้)


ตัวอย่าง เช่น

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


อ้างอิง
https://sites.google.com/site/kruyutsbw/prayochn-laea-tawxyang
http://www.krujirat.com/web/word_database/database1.htmhttp://itd.htc.ac.th/st_it51/it5107/chatuporn/5139011007/5139011007_D/test2.htm

โดยนางสาวกชกร  พัฒนไกรสิน  รหัส 5380111101  ปี 3 หมู่ที่ 1


ไม่มีความคิดเห็น:

แสดงความคิดเห็น