วันศุกร์ที่ 5 เมษายน พ.ศ. 2556

แพ้อากาศ

       

   



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

วันพฤหัสบดีที่ 4 เมษายน พ.ศ. 2556

พี่มาก พระโขนง



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

วันอังคารที่ 2 เมษายน พ.ศ. 2556

บันทึกที่ชื่อว่า "ใจ"

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

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

รีบบอกรักคนที่คุณรักก่อนสักวันจะไม่ได้บอกกอดเขาให้แน่น อย่ารอแค่โอกาส

เยอรมันไปวันๆ

สวัสดีครับท่านผู้อ่านวันนี้กระผม พี่ศรี นำเกร็ดความรู้มาฝากนั้นคือ ภาษาเยอรมันสำหรับท่านที่ต้องการใช้ศัพท์ที่จำเป็นในการใช้ ใช้บ่อย ประมาณนี้นะครับไปดูกันว่ามีคำไรมั่ง


สวัสดีตอนเช้า    Gutten Morgen      กู๊ดเท่น  มอร์เก้น
สวัสดีตอนกลางวัน Gutten Tag      กู๊ดเท่น  ท๊าค
สวัสดีตอนเย็น  Gutten Abend       กู๊ดเท่น  อาเบ้นท์
ขอโทษ (ขอทาง เรียกความสนใจ  และก็ใช้ในความหมายว่าเสียใจได้ด้วย)   Entschuldigung     เอ็นชูลดิกุง
ขอโทษ (ขอทาง เรียกความสนใจ) แบบสุภาพ  Entschuldigen Sie bitte    เอ็นชูลดิเก้น  ซี  บิทเท๊อะ
 ขอโทษ (เสียใจ)  Es tut mir leit     เอส ทุ๊ด เมีย ไล้ท์     
ขอบคุณ   Danke        ดั๊งเค่อะ
ขอบคุณมาก แบบที่ 1     Danke schoen   ดั๊งเค่อะ  เชิน
ขอบคุณมาก แบบทื่ 2  (ใช้แทนกันได้)     Vielen dank  ฟีลเล่น  ดั๊ง
 ไม่เป็นไร (ถ้าคนอื่นขอบคุณเรา)  Bitte schoen  บิ๊ทเท๊อะ เชิน
ไม่เป็นไร (ถ้าคนอื่นขอโทษเรา)  Kein Problem   ไคน์  โพรเบล้ม  
ได้โปรด   Bitte  บิ๊ทเท๊อะ
 ขอช่วยหน่อย   Hilfe bitte     ฮิลเฟ่  บิ๊ทเท๊อะ
ฉันมาจากประเทศไทย   Ich comme aus Thailand    อิช  คมเม่   เอ๊าส์  ไทยแลนด์
 ฉันชื่อคมสัน    Mein Name ist Komsan.   มาย  นาเม่  อีส  คมสัน
 ฉันเป็นนักท่องเที่ยว  Ich bin Tourist.  อิช บิน  ทัวริสท์
 ลาก่อน  Wiedersehen   วีเดอร์เซนลาก่อน
(ไม่เป็นทางการ)  Tschuez  ชู๊ส
 ฉันไม่รู้ภาษาเยอรมันIch verstehe Deutsch nicht.อิช  แฟ ชเต เฮ่อะ ด๊อยช์ นิช
อันนี้อยู่ที่ไหนWo ist das?    โว อีส ดาส
 ฉันกำลังตามหาสถานีรถไฟIch suche dem Hauptbahnhof.   อิช ซูเค่อะ เด็ม เฮ้าพ์บานฮอฟ
 ทางขวา   Rechts      เร็คส์
ทางซ้าย  Links         ลิ๊งคส์
ตรงไป     Gerade aus   เก่  รา เด้อ  เอ๊าส์
 ถนน  Strasse    ชตราเซ่อร์
 ฉันไม่รู้Keine Ahnung     ไค เน่อะ  อา นุง
หนึ่ง     Eins    ไอส์
สอง     Swei    สวาย
สาม     Drei     ดราย
สี่         Vier      เฟีย
ห้า       Fuenf     ฟื้นฟ์
หก       Sechs   เซ็กส์  (ออกเสียงอย่างนั้นเลย ไม่ต้องเขิน)
เจ็ด      Sieben  ซีเบ้น
แปด     Acht       อ๊าคท์
เก้า       Neun    นอย
สิบ       Zehn     เซ็น
Euro   ออยโร    เขาไม่ออกเสียงว่ายูโร
Europa  ออยโรป้า   ทวีปยุโรป   เขาไม่เรียกยุโรป
 Deutchland  ด๊อยช ลันด์    ประเทศเยอรมัน
 Deutsch  ด๊อยช์    ภาษาเยอรมัน
Bitte sprechen Sie Englichบิ๊ทเท่อะ ชเปรคเค่น ซี เอ็งลิชขอได้โปรดพูดภาษาอังกฤษเถอะ

Ich verstehe nichtอิช  แฟ ชเต เฮ่อะ นิชฉันฟังไม่รู้เรื่องจริง ๆ

Bitte    บิ๊ทเท๊อะขอร้องหล่ะ

Ja   หย่ะ   ใช่แล้ว

Nein  นายน์   ไม่ใช่

Genau   เก่ นาว   ใช่แล้ว

Gar nitchs  กา นิชส์ไม่ใช่เลย  

Viel Spass  ฟีล  ชป๊าซขอให้สนุก

Alles Gute     อัลเลส  กู๊ทเท่อะขอให้ทุกอย่างเป็นไปด้วยดี

ก็ประมาณนี้นะครับสำหรับภาษาเยอรมัน การออกเสียงและคำแปลที่ผมนำมาฝาก ขอให้โชคดีนะครับ

วันจันทร์ที่ 1 เมษายน พ.ศ. 2556

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

ตอนที่ 1.4 แนวคิดฐานข้อมูลแบบต่างๆ




            เรื่องที่ 1.4.1ฐานข้อมูลแบบ Hierarchical Data Model

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


             1.คุณสมบัติหลักของฐานข้อมูล

คุณสมบัติหลักของฐานข้อมูลไม่ว่าจะเป็นฐานข้อมูลใดๆ ทั้งฐานข้อมูลแบบไฮราคี ฐานข้อมูลแบบเครือข่าย ฐานข้อมูลแบบออบเจกต์ ฐานข้อมูลแบบสัมพันธ์ หรือฐานข้อมูลแบบอื่นๆ จะมีคุณสมบัติหลัก ดังต่อไปนี้ คือ
             1.1 โครงสร้างข้อมูล (data structures) คือโครงสร้างข้อมูลระดับตรรกะที่โปรแกรมประยุกต์เห็นเป็นการบอกว่าฐานข้อมูลนั้นๆ มีโครงสร้างข้อมูลเป็นอย่างไร
            1.2 กฎควบคุมความถูกต้อง (integrity constraint) เป็นการบอกว่าโครงสร้างข้อมูลนั้นมีกฎบังคับความถูกต้องอย่างไร
            1.3 ภาษาจัดการข้อมูล (data manipulation language) เป็นการบอกว่ามีภาษาจัดการข้อมูลบนโครงสร้างข้อมูลเป็นอย่างไร

            2.ประเภทของฐานข้อมูล

            ฐานข้อมูลที่รู้จักกันในปัจจุบันมีด้วยกัน 4 ประเภท คือ ฐานข้อมูลแบบเครือข่าย (hierarchical model) ฐานข้อมูลแบบลำดับชั้น (hierarchy model) ฐานข้อมูลแบบสัมพันธ์ (relational model) และฐานข้อมูลแบบจำลองเชิงวัตถุ (object oriented model) ฐานข้อมูลมีการนำเสนอต่อเนื่องมาเป็นระยะๆ ฐานข้อมูลที่ประสบความสำเร็จและมีผู้ใช้ในวงการธุรกิจเริ่มจากฐานข้อมูลแบบแรก คือ ฐานข้อมูลแบบลำดับชั้นหรือไฮราคี ถัดมาคือฐานข้อมูลแบบเครือข่าย และฐานข้อมูลที่มีการใช้กันมากที่สุดในปัจจุบัน คือ ฐานข้อมูลแบบสัมพันธ์ และปัจจุบันนี้มีฐานข้อมูลสมัยใหม่เกิดขึ้นคือฐานข้อมูลแบบออบเจกต์ นั่นคือฐานข้อมูลนั้นมีการนำเสนอข้อมูลและความสัมพันธ์ระหว่างข้อมูลที่แตกต่างกันไป ซึ่งการนำเสนอในฐานข้อมูลแบบสัมพันธ์หรือรูปแบบตารางเป็นที่นิยมใช้กันแพร่หลายมากที่สุด

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




              

              3. ฐานข้อมูลแบบลำดับชั้น (hierarchical data model)

คิดขึ้นโดยบริษัทไอบีเอ็ม เป็นฐานข้อมูลที่นำเสนอข้อมูลและความสัมพันธ์ระหว่างข้อมูลในรูปแบบของ โครงสร้างต้นไม้ (tree structure) เป็นโครงสร้างลักษณะคล้ายต้นไม้เป็นลำดับชั้น ซึ่งแตกออกเป็นกิ่งก้านสาขา ผู้ที่คิดค้นฐานข้อมูลแบบนี้คือ North American Rockwell เพื่อต้องการให้เป็นฐานข้อมูลที่สมารถกำจัดความซ้ำซ้อน (Data Redundancy) โดยใช้แนวความคิดของโปรแกรมที่ชื่อว่า Generalized Update Access Method (GUAM)



             3.1 โครงสร้างของฐานข้อมูลแบบลำดับชั้น
             1)ลักษณะโครงสร้างระบบฐานข้อมูลที่ใช้รูปแบบนี้จะมีโครงสร้างของข้อมูลเป็นลักษณะความสัมพันธ์แบบพ่อลูก คือ พ่อ (parent) 1 คนมีลูก (child) ได้หลายคน แต่ลูกมีพ่อได้คนเดียว (นั่นคือเป็นความสัมพันธ์แบบ 1 ต่อ n) หรือแบบพ่อคนเดียวมีลูก 1 คน (นั่นคือเป็นความสัมพันธ์แบบ 1ต่อ 1) ซึ่งจัดแยกออกเป็นลำดับชั้น โดยในระดับชั้นที่ 1 จะมีเพียงแฟ้มข้อมูลเดียวนั่นคือมีพ่อคนเดียว ใน ระดับที่ 2 จะมีกี่แฟ้มข้อมูลก็ได้ ในทำนองเดียวกันระดับ 2 ก็จะมีความสัมพันธ์กับระดับ 3 เหมือนกับ ระดับ 1 กับระดับ 2 โดยในโครงสร้างข้อมูลแบบลำดับชั้นแต่ละกรอบจะมีตัวชี้ (pointers) หรือ หัวลูกศรวิ่งเข้าหาได้ไม่เกิน 1 หัว จากตัวอย่างดังนี้


ภาพที่ 1.3 แสดงโครงสร้างฐานข้อมูลแบบลำดับขั้น


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

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

            3) การจัดการ รูปของโครงสร้างต้นใช้ภาษาปฏิบัติการทีละเรคอร์ด ตัวอย่างของภาษาปฎิบัติ
การของฐานข้อมูลนี้ ได้แก่ IMS/VS






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



          เรื่องที่ 1.4.2 ฐานข้อมูลแบบ Network Data Model

          1. โครงสร้างของฐานข้อมูลแบบเครือข่าย

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


ภาพที่1.4 แสดงโตรงสร้างของฐานข้อมูลแบบเครือข่าย


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


           2. กฏการควบคุม

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



         3.ภาษาการจัดการ

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



         4.ลักษณะเด่นและข้อจำกัดระบบโครงสร้างแบบเครือข่าย

         4.1 ลักษณะเด่น
         เหมาะสำหรับงานที่แฟ้มข้อมูลมีความสัมพันธ์แบบเครือข่าย
         มีโอกาสเกิดความซ้ำซ้อนของข้อมูลน้อยกว่าโครงสร้างแบบลำดับชั้น
         การค้นหาข้อมูลมีเงื่อนไขได้มากและกว้างกว่าโครงสร้างแบบลำดับชั้น
     
         4.2 ข้อจำกัด
         โครงสร้างแบบเครือข่ายเป็นโครงสร้างที่ง่ายไม่ซับซ้อน จึงทำให้ป้องกันความลับของข้อมูลได้ยากมีค่าใช้จ่ายและสิ้นเปลืองพื้นที่ในหน่วยความจำเพราะจะเสียพื้นที่ในอุปกรณ์เก็บข้อมูลสำหรับตัวบ่งชี้มาก
          ถ้าความสัมพันธ์ของระเบียนประเภทต่าง ๆ เกิน 3 ประเภท จะทำให้การออกแบบโครงสร้างแบบเครือข่ายยุ่งยากซับซ้อน
          นอกจากฐานข้อมูลที่กล่าวไปแล้วในปัจจุบันยังมี ฐานข้อมูลแบบออบเจกต์ (object-oriented data
model) ที่ได้มีการคิดค้นและพัฒนากันในปัจจุบัน โดยฐานข้อมูลแบบนี้จะถูกนำเสนอข้อมูลและความสัมพันธ์ระหว่างข้อมูลในรูป ออบเจกต์ (object) สำหรับฐานข้อมูลแบบออบเจกต์นั้นหน่วยงานธุรกิจในปัจจุบันนี้ยังไม่มีการใช้ ยังต้องมีการค้นคว้าและวิจัยต่อไปเพื่อที่จะสร้างฐานข้อมูลแบบออบเจกต์




            เรื่องที่ 1.4.3 ฐานข้อมูลแบบ Relational Data Model

            ฐานข้อมูลแบบสัมพันธ์ (Relational Model) แบ่งออกเป็น 3 ส่วนคือ โครงสร้างข้อมูล (data structure) การควบคุมความถูกต้องให้กับข้อมูล (data integrity) และการจัดการกับข้อมูล (data
manipulation)

ภาพที่1.5 โครงสร้างของฐานข้อมูลแบบสัมพันธ์


             1.โครงสร้างข้อมูล (Data Structure)

             โครงสร้างของฐานข้อมูลแบบสัมพันธ์เป็นการนำเสนอข้อมูลและความสัมพันธ์ระหว่างข้อมูลในรูป รีเลชัน (relation) Relation จะถูกเรียกอีกอย่างหนึ่งว่าตาราง(Table) โครงสร้างของ Relationประกอบด้วย
             1.1 แถว (Row) ของข้อมูล (body) แถวข้อมูล 1 แถว (body) หมายถึงข้อมูล 1 รายการ ซึ่งแต่
ละแถวของ Relation เรียกว่า “Tuple” Tuple คือ แถวข้อมูลในตาราง โดยแต่ละแถวของข้อมูลจะประกอบไปด้วยหลาย Attribute หรือคอลัมน์ของข้อมูล จำนวนแถวข้อมูลในตารางเราเรียกว่า Cardinality และจำนวน attributes ทั้งหมดในตารางเราเรียกว่า Degree
            1.2 สดมภ์ (Column) แต่ละสดมภ์ของ Relation ได้แก่คุณลักษณะของข้อมูลในแต่ละแถวซึ่งเราเรียกว่า “Attribute” เช่น ตัวอย่าง relation S สำหรับเก็บรายละเอียดของ suppliers ประกอบด้วย รหัส ชื่อสถานะ และเมือง ซึ่ง relation ดังกล่าวจะประกอบไปด้วย 5 tuples โดยแต่ละ tuples ประกอบไปด้วย 4
attribute โดยภายในคอลัมน์จะประกอบด้วย
            โดเมน (Domain) เป็นการกำหนดขอบเขตค่าข้อมูลและชนิดข้อมูลของแต่ละ attribute ที่เป็นไปได้ทั้งหมด เช่นจากรูป domain ของ S# คือกลุ่มของรหัส suppliers ทั้งหมด ได้แก่ S1, S2, S3, S4 และ S5 และ กำหนดว่า STATUS ของตาราง S จะต้องมีค่าเป็น 10, 20 และ 30 เท่านั้น หรือ S# จะต้องมีค่าเป็น S1,S2, S3, S4 และ S5 เท่านั้น และ CITY ของ suppliers ทั้งหมดจะต้องเป็น ปทุมธานี นนทบุรี และกรุงเทพฯเท่านั้น เป็นต้น 
            คีย์หลัก(Primary key) เป็น attribute หรือกลุ่มของ attribute ที่บ่งบอกว่าข้อมูลจะต้องไม่ซ้ำกันในแต่ละแถวข้อมูลของตาราง

           2. การควบคุมความถูกต้องให้กับข้อมูล (data integrity)

          ในฐานข้อมูลแบบสัมพันธ์ มีกฎการควบคุมความถูกต้องของข้อมูลดังนี้

           2.1 Tuple มีข้อมูลไม่ซ้ำกัน เนื่องจาก Relation ในโครงสร้างข้อมูลแบบสัมพันธ์อยู่ในรูปแบบของเซตทางคณิตศาสตร์ โดยภายในเซตจะต้องประกอบไปด้วยสมาชิกที่ไม่ซ้ำกัน ดังนั้น Relation R ใดๆต้องมี attribute ใด attribute หนึ่งที่ทำให้แต่ละ tuple ใน relation มีข้อมูลไม่ซ้ำกัน เช่น Relation CUSTOMER เป็น relation ที่เก็บประวัติของลูกค้าบัญชีเงินกู้ของธนาคาร และประกอบไปด้วย เลขที่บัตรประชาชน ชื่อ นามสกุล และ ที่อยู่ของลูกค้า ซึ่งจะเห็นว่าข้อมูลลูกค้ามีชื่อและนามสกุลซ้ำกัน คือปรากฎลูกค้าชื่อ สมบัติ นามสกุล มิมำพันธ์ จำนวน 2 tuple แต่มี attribute เลขที่บัตรประชาขน (CITIZEN_ID) เป็นสิ่งที่บ่งบอกให้รู้ว่าลูกค้าทั้งสองคนเป็นคนละคนกัน


           2.2 Tupleไม่มีลำดับจากบนลงล่าง เนื่องจาก body Relation ในโครงสร้างข้อมูลแบบสัมพันธ์อยู่ในรูปแบบของเซตทางคณิตศาสตร์ โดยภายในเซตจะต้องประกอบไปด้วยสมาชิกที่ไม่มีลำดับ
           2.3 Attribute ไม่มีลำดับจากซ้ายไปขวา เนื่องจาก heading ของ Relation ในโครงสร้างข้อมูลแบบสัมพันธ์อยู่ในรูปแบบของเซตทางคณิตศาสตร์ โดยภายในเซตจะต้องประกอบไปด้วยสมาชิกที่ไม่มีลำดับ

           2.4 ค่าของ attribute ทุกค่าจะต้องเป็น atomicity เนื่องจาก Domain มีเฉพาะค่าที่เป็น atomic เท่านั้น ดังนั้นทุก attribute ในแต่ละตำแหน่งของ tuple ใน relation จะมีค่าเพียงค่าเดียว จะไม่มีรายการของข้อมูล (repeating group หรือ list of value หรือ array) ใน relation นั่นคือ relation ต้องผ่านขั้นตอนการเพิ่มประสิทธิภาพของข้อมูล (Normalization) ตัวอย่างเช่น Relation SP ก่อนทำการเพิ่มประสิทธิภาพของข้อมูลค่าของข้อมูลในแต่ละ Tuple จะมีลักษณะของรายการข้อมูล (repeating group) หลังจากทำการเพิ่มประสิทธิภาพของข้อมูลในตารางแล้ว ค่าข้อมูลในแต่ละ Tuple ไม่มีรายการข้อมูลอีก




            2.5 กำหนด Domain ให้กับข้อมูล จะมีข้อกำหนดว่าค่าที่กำหนดให้กับข้อมูลจะต้องเป็นค่า Scalar นั่นคือจะต้องเป็นค่าข้อมูลที่มีความหมายและเป็นหน่วยเล็กที่สุด ไม่สามารถแบ่งแยกออกไปได้อีก เช่นเลขที่เงินกู้ 014100001 สามารถแบ่งออกเป็น รหัสสาขา รหัสปียื่นกู้ และลำดับบัญชีเงินกู้ เป็นต้น หรือที่อยู่สามารถแบ่งย่อยออกไปเป็น เลขที่บ้าน ตำบล อำเภอ จังหวัด ฯลฯ ดังนั้น เลขที่เงินกู้ และที่อยู่ ไม่มีค่าเป็น Scalar เพราะยังสามารถแบ่งย่อยออกไปได้อีก แต่ รหัส supplier (S#) มีค่าเป็น S1 ซึ่งแบ่งย่อยอีกไม่ได้เพราะฉะนั้น S1 มีค่าเป็น Scalar ค่าข้อมูลที่เก็บในฐานข้อมูลที่มีค่าเป็น Scalar นี้เราจะเรียกว่ามีคุณลักษณะของ atomicity ข้อมูลที่สามารถนำมากำหนด Domain ได้ จะต้องเป็นข้อมูลที่เป็นอิสระจากข้อมูลอื่นเช่น relation S ,P และ SP ดังรูปข้างล่างนี้ รหัส ชื่อ สถานะ และเมืองของ supplier เป็นข้อมูลที่อิสระจากข้อมูลอื่น ในทำนองเดียวกับ รหัส ชื่อ สี น้ำหนัก และเมืองของ relation part เป็นข้อมูลที่เป็นอิสระจากข้อมูลอื่น แต่ relation SP รหัสตัวแทนจำหน่าย(S#) ค่าที่กำหนดขึ้นมาเป็นไปตามรหัสตัวแทนจำหน่าย (S#) ของ relation S และรหัสวัสดุ (P#) ค่าที่กำหนดขึ้นมาเป็น ไปตามรหัสวัสดุ (P#) ของ relation P ดังนั้นทั้งสอง attribute จึงไม่สามารถนำมากำหนด domain ของ relation SP ได้





             2.6 ข้อมูลจะต้องเป็นข้อมูลชนิดเดียวกัน เช่น ถ้าค่าข้อมูลของ COLOR ใน relation P มีค่าที่เป็นไปได้คือ “สีฟ้าน้ำทะเล” “สีฟ้าอ่อน” หรือ “น้ำตาล” แต่ถ้าเรากำหนดให้ค่าของ COLOR สามารถเป็น 1 สำหรับสีฟ้าน้ำทะเล หรือ 2 สำหรับสีฟ้าอ่อน และ 3 สำหรับสีน้ำตาล โดยค่าข้อมูลของ attribute COLOR สามารถบันทึกค่าข้อมูลได้ทั้งสองแบบแล้ว เราไม่สามารถกำหนด Domain ได้เพราะค่าข้อมูลมีชนิดเป็นได้ทั้ง string และ เลขจำนวนเต็ม ในเวลาเดียวกันไม่ได้


            3.การจัดการข้อมูล

           ภาษาฐานข้อมูล (structured query language, SQL) เป็นภาษาที่ใช้กันอย่างแพร่หลายมีลักษณะคล้ายกับภาษาอังกฤษ ใช้ในการปฏิบัติงานและควบคุมฐานข้อมูล ในภาษาฐานข้อมูลจะมีคำสั่งดังนี้การสร้างตาราง สามารถทำด้วยคำสั่ง CREATE TABLE คำสั่งสอบถามข้อมูลพื้นฐานเป็นการสอบถามข้อมูลหรือ query


           คำสั่งการป้อนข้อมูลเพิ่มลงสู่ตารางเราสามารถปรับปรุงเปลี่ยนแปลงแก้ไขข้อมูลที่มีอยู่แล้วในตารางได้ด้วยคำสั่ง UPDATE นอกจากการแก้ไขข้อมูลด้วยคำสั่ง DELETE เราสามารถสอบถามข้อมูลครั้งหนึ่งจากตารางได้มากกว่าหนึ่งตาราง โดยใช้โครงสร้างของ SQL ที่เรียกว่า joining คำสั่งใน SQL สามารถกำหนดความปลอดภัยในการควบคุมการเข้าถึงข้อมูลในฐานข้อมูลได้ โดยคำสั่ง GRANT เป็นการกำหนดสิทธิมอบอำนาจให้สามารถเข้าถึงข้อมูล REVOKE เป็นการเรียกสิทธิอำนาจคืนจากการกำหนดมอบสิทธิด้วยคำสั่ง GRANT








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



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

         4.2 ข้อจำกัด
              1)มีการแก้ไขปรับปรุงแฟ้มข้อมูลได้ยากเพราะผู้ใช้จะไม่ทราบการเก็บข้อมูลในฐานข้อมูลอย่างแท้จริงเป็นอย่างไร

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


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














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


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



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