วันอาทิตย์ที่ 23 ธันวาคม พ.ศ. 2555

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



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

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

ตัวอย่างการออกแบบฐานข้อมูลการสั่งซื้อสินค้า

ขั้นตอนที่ 1  กำหนด Entity  ทั้งหมดของระบบ



ขั้นตอนที่ 2  กำหนด Attribute  ต่าง ๆ ของ Entitและกำหนด Primary key (คีย์หลัก)  B  



ขั้นตอนที่  3  การกำหนดความสัมพันธ์ระหว่าง Entitแต่ละ Entity
 


 
ขั้นตอนที่  4    ทำการเปลี่ยน 
Entity  ที่ได้อยู่ในรูปตาราง
ตารางลูกค้า (Customer)
รหัสลูกค้าชื่อลูกค้านามสกุลที่อยู่จังหวัดหมายเลขโทรศัพท์
CU-001นางลูกไก่กายสิทธิสกุลสูง122/3 หมู่ 4   ต. เขาสามยอด  อ.เมืองลพบุรี 082-9523341
CU-002นางกุ๊กกิ๊กตั้งใจซื่อตรง123 หมู่ 1 ต.ถนนใหญ่ อ.เมืองลพบุรี 086-1245896
CU-003นายมาดแมนแสนกุศลแรงกล้า2354 /1 หมู่ 3 ต.วังจั่น  อ.โคกสำโรงลพบุรี 085-1245311
CU-004นายสุดหล่อเสี้ยวความดี2356/251 เทศบาลเมืองลพบุรี 086-2541255

 

ตารางใบสั่งซื้อ (Order)
รหัสใบสั่งซื้อวันที่สั่งซื้อ รหัสลูกค้ารหัสสินค้า จำนวนสินค้าที่สั่ง
OR-00112/02/2550CU-0020010012
OR-00112/02/2550CU-0020055
OR-00112/02/2550CU-0020033
OR-00214/02/2550CU-00100110
OR-00214/02/2550CU-0010025
OR-00325/02/2550CU-0040036
OR-00325/02/2550CU-0040044

ตารางสินค้า (Product)
รหัสสินค้าชื่อสินค้ารหัสประเภทสินค้าประเภทสินค้ายี่ห้อสินค้ารุ่นสินค้าราคาต่อหน่วยจำนวนในสต๊อก
001ปลากระป๋องPR-001เครื่องกระป๋องสามแม่ครัวAL_004120.00100
002ซอสมะเขือเทศPR-002ซอสภูเขาทองSO_12056.00150
003บะหมี่กึ่งสำเร็จรูปPR-003บะหมี่ยำยำND_0035.50200
004บะหมี่กึ่งสำเร็จรูปPR-003บะหมี่ไวไวND_0235.5050
005น้ำตาลทรายPR-004น้ำตาลมิตรผลSU_54222.00250

ประโยชน์ของระบบฐานข้อมูล

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

รหัสการสั่งสินค้า
วันที่สั่งสินค้า
รหัสสินค้า
ชื่อสินค้า
จำนวนสินค้าที่สั่ง
23045
02/03/98
1002
หนังสือ
10
23045
02/03/98
1005
CD-ROM
3
23046
15/03/98
1001
เสื้อกีฬา
11
23047
16/03/98
1002
หนังสือ
5
23047
16/03/98
1006
เทป
4
23048
17/03/98
1005
CD-ROM
24
         
จากตารางข้างต้น จะเป็นตารางการสั่งซื้อสินค้า เราจะสังเกตได้ว่าในตารางนี้มีชื่อสินค้าซ้ำกัน ซึ่งจะเกิดข้อเสียต่างๆ เช่น
 ·       การแก้ไขข้อมูล เมื่อเราต้องการเปลี่ยนชื่อสินค้า เราจะต้องเปลี่ยนชื่อสินค้าทุกชื่อ ซึ่งมีอยู่หลายที่ เช่น CD-ROM ในตัวอย่างข้างต้น
 ·       การเพิ่มข้อมูล เมื่อเราต้องการเพิ่มสินค้าใหม่ลงไปในตาราง เราจะต้องเพิ่มรหัสการสั่ง  สินค้าลงไปด้วยทุกครั้ง ข้อมูลในตารางจึงจะถูกต้อง
 ·       การลบข้อมูล เมื่อเราต้องการลบข้อมูลการสั่งซื้อสินค้าที่มีรหัสการสั่งสินค้า 23045 จะต้องลบข้อมูลของสินค้า ตัวออกไปพร้อมกัน จึงจะได้ผลลัพธ์ที่ถูกต้อง
2.       ตอบสนองความจำเป็นในการเรียกใช้ข้อมูลในเวลาที่สั้นที่สุด โดยหลังจากออกแบบฐานข้อมูลเสร็จแล้ว เราสามารถเรียกข้อมูลที่ต้องการได้อย่างรวดเร็ว เพราะว่าข้อมูลในตารางที่ออกแบบอย่างถูกต้องจะไม่มีการซ้ำซ้อน ทำให้ไม่เสียเวลาค้นหาข้อมูล เนื่องจากข้อมูลที่ต้องการจะอยู่ในตารางที่เกี่ยวข้องเท่านั้น เช่น ต้องการค้นหาราคาสินค้าอย่างหนึ่ง จะไปค้นที่ตารางสินค้า ไม่ได้ไปค้นที่ตารางใบสั่งสินค้า เป็นต้น
3.       สามารถกำหนดลักษณะการเข้าถึงข้อมูลสำหรับผู้ใช้แต่ละประเภทได้  เช่นพนักงานทั่วไป    จะสามารถดูตารางที่มีข้อมูลของตัวเองได้เท่านั้น และไม่สามารถแก้ไข  ข้อมูลต่างๆ ในฐานข้อมูลได้ ส่วนพนักงานป้อนข้อมูลสินค้าสามารถแก้ไขข้อมูลในตารางสินค้าได้เป็นต้น
4.       ทำให้มีความอิสระระหว่างข้อมูลกับ Application  เนื่องจากเราสามารถออกแบบแอพพลิเคชั่นให้ดึงข้อมูลที่ต้องการจากฐานข้อมูลเท่านั้น ไม่ต้องใส่ข้อมูลต่างๆ เหล่านี้ลงไปในApplication เพราะเมื่อมีการเปลี่ยนแปลงข้อมูลเราเพียงแต่เปลี่ยนในฐานข้อมูลเท่านั้นไม่ต้องเปลี่ยนในแอพพลิเคชั่น ซึ่งหมายถึง ต้องสร้างไฟล์ในการทำงาน และตรวจสอบความถูกต้องของ Application ใหม่ ซึ่งยุ่งยากมาก
5.ลดความจำเจของงานดูแลเอกสาร ซึ่งเป็นงานประจำที่ทำให้ผู้ดูแลรู้สึกเบื่อหน่าย และขาดแรงจูงใจ แต่เราสามารถใช้คอมพิวเตอร์ในการปฏิบัติงานนี้แทนมนุษย์ได้ โดยผ่านโปรแกรมสำหรับการจัดการฐานข้อมูล
6.ข้อมูลที่จัดเก็บมีความทันสมัย เมื่อข้อมูลในระบบฐานข้อมูลได้รับการดูแลปรับปรุงอย่างต่อเนื่อง ทำให้ข้อมูลที่จัดเก็บเป็นข้อมูลที่มีความทันสมัย ตรงกับเหตุการณ์ในปัจจุบัน และตรงกับความต้องการอยู่เสมอ
7.หลีกเลี่ยงความขัดแย้งของข้อมูลได้ เมื่อข้อมูลถูกจัดเก็บในระบบฐานข้อมูล จะทำให้ข้อมูลลดความซ้ำซ้อนลง คือ มีข้อมูลแต่ละประเภทเพียงหนึ่งชุดในระบบ ทำให้ข้อมูลที่เก็บได้ไม่ขัดแย้งกันเอง ในกรณีที่จำเป็นต้องเก็บข้อมูลที่ซ้ำซ้อนกัน เพื่อสาเหตุบางประการ เช่น เพื่อความรวดเร็วในการประมวลผลข้อมูล ระบบจัดการฐานข้อมูลจะเป็นผู้ดูแลข้อมูลที่ซ้ำกันให้มีความถูกต้องตรงกัน
8.จัดทำระบบการรักษาความปลอดภัยของข้อมูลได้ ผู้บริหารระบบฐานข้อมูลสามารถกำหนดรหัสผ่านเข้าใช้งานข้อมูลของผู้ใช้แต่ละราย โดยระบบการจัดการฐานข้อมูลจะทำการตรวจสอบสิทธิ์ในการทำงานกับข้อมูลทุกครั้ง เช่น การตรวจสอบสิทธิ์ในการเรียกดูข้อมูล   การลบข้อมูล  การปรับปรุงข้อมูล   และการเพิ่มข้อมูลในแต่ละแฟ้มข้อมูล
9.ควบคุมความถูกต้องของข้อมูลได้   ปัญหาเรื่องความขัดแย้งกันของข้อมูลที่มีความซับซ้อน เป็นปัญหาหนึ่งในเรื่องความถูกต้องของข้อมูล ซึ่งเมื่อได้มีการกำจัดความซับซ้อนของข้อมูลออก ปัญหาเรื่องความถูกต้องของข้อมูลที่อาจเกิดขึ้นได้ 

แหล่งที่มา:
http://mpnn2551.net46.net/Subjects/DBMS32042014/dataBaseIntro.html
http://portal.in.th/asudah/pages/detu/
http://www.learners.in.th/blogs/posts/503782
http://61.7.221.103/access-online/database/database1.htm


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

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