Power Point เรื่องการออกแบบฐานข้อมูล - UN-KM

Download Report

Transcript Power Point เรื่องการออกแบบฐานข้อมูล - UN-KM

การออกแบบฐานข้ อมูล
ทบทวนเนื้อหาเดิม
• องคประกอบของฐานข
อมู
์
้ ลประกอบดวย
้
อะไรบาง?(20
คะแนน)
้
ตอบ 1. ฮารดแวร
์
์
2. ซอฟตแวร
์
์
3. ผู้ใช้
4. ข้อมูล
ทบทวนเนื้อหาเดิม
• การจั ด การข้ อมู ล แบบแฟ้ มข้ อมู ล และแบบ
ฐานข้อมูลตางกั
นอยางไร
? (50 คะแนน)
่
่
ตอบ 1. ดานโครงสร
้
้าง เนื่องจากฐานข้อมูล
เกิดจากการนาเอาแฟ้มข้อมูลจานวนหลาย
ๆ แ ฟ้ ม ม า ร ว ม กั น แ ล ะ น อ ก จ า ก นั้ น
ฐาน ข้ อ มู ล ยั ง ป ร ะ ก อ บ ไ ป ด้ ว ย ข้ อ มู ล
ประยุ ก ต ์ พจนานุ ก รมข้ อมู ล และดัช นี
ซึ่งในแฟ้มข้อมูลจะมีเพียงแฟ้มข้อมูลเพียง
อยางเดี
ยว
่
2. ด้ านการจัด เก็ บ แฟ้ มข้ อมู ล มีก าร
จัด เก็ บข้อมูลไว้หลายแห่ง แต่ฐานข้อมูล
จุดประสงคการเรี
ย
นรู
้
์
1. ผู้เรียนสามารถบอกส่วนประกอบสาคัญ
ของแบบจาลอง
ฐานข้อมูลได้
2. ผู้เรียนสามารถอธิบายขัน
้ ตอนการ
ออกแบบฐานขอมู
้ ลใน
MS Access ได้
3. ผู้เรียนสามารถอธิบายความสั มพันธของ
์
เอนทิตไี ด้
4. ผู้เรียนสามารถเขียนแผนผังความสั มพันธ ์
ของเอนทิตไี ด้
ER – Diagram คืออะไร ?
E-R Diagram หรือแบบจาลองฐานขอมู
้ ล
คือ การสรางแบบจ
าลองฐานขอมู
้
้ ลในระดับ
ความคิ
ด (Conceptual Level)
วันทีเ่ ขา้
เรียน
เลขที่
บัตร
วัน
เกิด
ประวัต ิ
นักเรียน
เชือ
้
ชาติ
มี
ทีอ
่ ยู่
รหัส
นักเรียน
นักเรียน
มี
เลข
ที่
รหัส
วิชา
ชือ
่
ชัน
้
ครูทป
ี่ รึกษา
รหัสครู
ชือ
่ ครู
วิชา
ลงทะเ
บียน
ห้องพั
ก
ชือ
่
วิชา
หน่วย
กิต
ส่วนประกอบของ ERDiagram
เอนทิต ี้
(entity)
แอตทริ
บิวต ์
(attributes
)
องคประกอบ
์
ของ
ER-Diagram
ความสั มพั
นธระหว
าง
่
์
เอนทิต ี้
(relations
hip)
ส่วนประกอบของ ERDiagram
Entity ห ม า ย ถึ ง สิ่ ง ข อ ง ห รื อ วั ต ถุ
หรือตาราง
Entity อาจจะเป็ น
บุ ค คล , ส ถ า น ที่ ห รื อ เ ห ตุ ก าร ณ ์
เพือ
่ ใช้ในการเก็บข้อมูล
จะใช้สั ญลักษณ์
Attribute หมายถึง อธิบายถึง
คุณลักษณะของ Entity หนึ่ง ๆ
เช่น Entity ของนักศึ กษา จะ
ประกอบดวย
Attribute ชือ
่ -สกุล ,
้
เพศ , ทีอ
่ ยู่ , เบอรโทร
, คณะ ,
์
สาขาวิชา , วันทีเ่ ขาเรียน เป็ นตน
ส่วนประกอบของ ERDiagram
ค ว า ม สั ม พั น ธ ์ ร ะ ห ว่ า ง เ อ น ทิ ตี้
(relationship)
เอนทิต ี้แ ต่ละเอนทิต ี้จ ะมีค วามสั ม พัน ธ ์
รวมกั
น โดยจะมีชอ
ื่ แสดงความสั มพันธ ์
่
ร่ ว ม กั น ซึ่ ง จ ะ ใ ช้ รู ป ภ า พ สั ญ ลั ก ษ ณ ์
สี่ เ ห ลี่ ย ม รู ป ว่ า ว แ ส ด ง ค ว า ม สั ม พั น ธ ์
ระหว
างเอนทิ
ต
แ
ี
้
ละระบุ
ช
อ
่
ื
ความสั
ม
พั
น
ธ
่
ตั ว อ ย่ า ง รู ป นี้ แ ส ด ง ใ ห้ เ ห็ น ถึ ง ์
ลงในสี
่ นมธระหวางเอนทิต น
ความสั่ เหลี
มพัย
ี้ ักเรียน
์
่
จะใช
สั
ญ
ลั
ก
ษณ
รหัส
1
1
้
์
กับนัรหั
ส
นั
ก
เรี
ย
น
มี
กเรียน
นักเรียน
ขัน
้ ตอนการออกแบบ
ฐานขอมู
ล
้
ขัน
้ ที่ 1 เก็บรวบรวมข้อมูล
รายละเอียดทัง้ หมด
ขัน
้ ที่ 2 กาหนดโครงสราง
้
ของ Table
ขัน
้ ที่ 3 กาหนดคียหลั
์ ก
(Primary Key)
ขัน
้ ที่ 4 กาหนด
ความสั มพันธ ์
ขัน
้ ที่ 5 การทา
Normalization
ขัน
้ ที่ 1 เก็บรวบรวมขอมู
้ ล
รายละเอียดทัง้ หมด
เริม
่ ต้นออกแบบฐานข้อมูลให้จด
ต
่ ้องการ
กอยางที
รายการขององคประกอบทุ
่
์
โปรแกรมฐานข้ อมูล ส่วนใหญ่มัก ถูก ใช้กับ
คน
หมู่มาก เช่ น ข้ อมูล ทีใ
่ ช้ระหว่าง
แผนกหลาย ๆ แผนก ทาให้ไมสามารถ
่
ทราบถึงความต้องการในทุก ๆ แบบ ใน
กรณีนี้มวี ธ
ิ ท
ี ช
ี่ ่ วยไดโดย
้
สั มภาษณผู
ใ่ ช้ฐานขอมู
์ คนที
้
้ ล
ดูรายงาน แฟ้มคอมพิวเตอร ์ และ
แบบฟอรมอื
่ ๆ
์ น
ต้องเก็บขอมู
้ ล และ
้ ล ประมวลผลขอมู
ขัน
้ ที่ 2 กาหนดโครงสรางของ
้
Table
จากกลุ่ มข้ อมู ล หรื อ เอนทิต ี้ ท ี่
รวบรวมได้จากเอกสารต่างๆในขัน
้ ที่ 1
เราจะนามากาหนดแอตทริบวิ ตของข
์
้อมูล
เพื่ อ จะได้ ทราบว่ าในเอนทิ ต ี้ น้ั น จะน า
ข้อมูลอะไรมาใช้บ้าง หลังจากนั้นให้นา
แอตทริบวิ ตมาก
าหนดโครงสร้างเบือ
้ งต้น
์
ของ Table โดยแปลงแอตทริบวิ ตเป็
์ น
ฟิ ลด ์ พร้อมกาหนดชนิดและขนาดข้อมูล
ใ น แ ต่ ล ะ ข น า ด ข้ อ มู ล ใ น แ ต่ ล ะ ฟิ ล ด ์
รวมทัง้ เงือ
่ นไขหรือกฏเกณฑที
์ ใ่ ช้กาหนด
ลักษณะของข้อมูล
ขัน
้ ที่ 3 กาหนดคียหลั
์ ก (Primary
Key)
 ขัน
้ ตอนนี้จะพิจารณาวาฟิ
่ ลดใดบ
์
้าง
ใน Table นั้นทีค
่ ุณสมบัตเิ หมาะสมจะ
ใช้เป็ นคีย ์
 ถ้ าไม่ มี ฟิ ลด ์ใดเลยที่ เ หมาะสม ก็
จะต้องกาหนดฟิ ลดใหม
เพื
่ ใช้เป็ นคีย ์
์
่ อ
โดยเฉพาะ
การก าหนดคีย หลั
์ ก ให้ กับ ตารางเพื่อ
ประกันวาจะไม
เกิ
่
่ ดข้อมูลซา้ ของข้อมูล
ในฐานข้อมูล
คุณสมบัตข
ิ องเขตข้อมูลทีจ
่ ะใช้เป็ นคีย ์
ขัน
้ ที่ 4 กาหนดความสั มพันธ ์
กาหนดความสั มพันธ ์ (Relation)
ระหวางตาราง
เป็ นความสั มพันธทาง
่
์
Relation Database หมายถึงตาราง 2
ตาราง ทีม
่ ค
ี วามสั มพันธกั
โดยมี
์ น
ความสั
มพั
แบบหนึ
่ รูป่งแบบ ไดแก
์์ ง
ความสั
มพั
นนธธทั
้ หมด ่งต3อหนึ
้ ่
(one-to-one)
ความสั มพันธแบบหนึ
่งตอกลุ
ม
่
่
์
(one-to-many)
ความสั มพันธแบบกลุ
มต
ม
่ อกลุ
่
่
์
(many-to-many)
1. One To One เช่น ความสั มพันธ ์
ระหวางเลขบั
ตรประชาชนกับประชาชน
่
เ พ ร า ะ ป ร ะ ช า ช น 1 ค น จ ะ มี
หมายเลขบัต รประชาชนได้ 1 เลข
หมายเลข
เทานั
่ ้น
1
บัตร
มี
ประชาชน 1
ประชาชน
2. One To many เช่น คณะหนึ่งมีได้
หลายสาขาวิช า และในขณะเดีย วกัน
แต่ละสาขาวิช าสามารถสั ง กัด ได้ เพีย ง
หนึ่งคณะเท1านั
่ ้น
M
คณะ
สาขาวิชา
มี
3. Many To Many เช่น นักเรียน
ลงทะเบียนได้หลายวิชา และวิชาแต่ละ
วิ ช าก็ ถู ก นั ก เรี ย นลงทะเบี ย นเรี ย นได้
หลายคน
N
M
ลงทะเ
นักเรียน
วิ
ช
า
บียน
ขัน
้ ที่ 5 การทา Normalization
ถ้า Table ทีไ่ ด้จากขัน
้ ที่ 2 ยังมี
ความซ้า ซ้ อนกัน ของข้ อมูล หรือ ข้ อมู ล
บางฟิ ลด ไม
์ ่เกี่ย วข้ องโดยตรงกับ เนื้ อ หา
ใน Table
นั้นจะต้องนามาปรับปรุง
แ ก้ ไ ข ใ ห้ มี โ ค ร ง ส ร้ า ง ห รื อ รู ป แ บ บ ที่
เหมาะสมก่อนน าไปประมวลผล ถ้ าน า
โ ค ร ง ส ร้ า ง ไ ป ใ ช้ เ ล ย โ ด ย ไ ม่ ท า
Normalization กอนอาจเกิ
ดปัญหาได้
่
เช่นปัญหาสิ้ นเปลืองเนื้อทีจ
่ ด
ั เก็ บข้อมูลที่
ซ้ า ซ้ อ น กั น ปั ญ ห า ค ว า ม ผิ ด ป ก ติ
(Anomaly) ของขอมู
่ มีการแกไขเพิ
ม
่
้ ลเมือ
้
E-R Diagram
ขอมู
้ ลนักเรียน
วันทีเ่ ขา้
เรียน
เลขที่
วันเกิด
บัตร
ประวัต ิ
นักเรียน
เชือ
้
ชาติ
1
มี
ทีอ
่ ยู่
รหัส
นักเรียน
1 นักเรียน
M
มี
เลข
ที่
ชือ
่
M
ลงทะเ
บียน
ชัน
้
1
ครูทป
ี่ รึกษา
รหัส
อาจารย ์
ชือ
่
อาจาร
ห้องพั
ก
N
ชือ
่
วิชา
รหัส
วิชา
วิชา
หน่วย
กิต
จบแลวจ
้ ้า…
การออกแบบ
ฐานข้อมูลไม่
ยากเลยใช่ไหม
ครับ