สถาปัตยกรรมของฐานข้อมูล

Download Report

Transcript สถาปัตยกรรมของฐานข้อมูล

หน่ วยที่ 2
แบบจำลองควำมสัมพันธ ์ของข้อมู ลและ
กำรจัดท
ำ E-R Diagram
สถำปั
ตยกรรมของระบบ
ฐำนข้อมู ล
ควำมสัมพันธ ์
รู ปแบบของฐำนข้อมู ล
แบบจำลองควำมสัมพันธ ์ข้อมู ล
E-R Diagram
ระด ับภำยนอก (Externa
ระดับของ
ข ้อมูล
ระด ับแนวคิด (Conceptu
ระด ับภำยใน (Internal L
ควำมหมำยของระด ับ
ข้อมู ลภำยนอก
ระดับข้อมู ลภำยนอก หรือ วิว
(External
่ ใ้ ช ้แต่ละคนต ้องการดู
Level) เป็ นระดับข ้อมูลทีผู
ข ้อมูล เช่น
่ ชา
งานวัดผลต ้องการรหัสนักศึกษา รหัสวิชา ชือวิ
ค่าระดับคะแนน
ควำมหมำยของระด ับ
ข้ระดั
อมูบลข้ระด
อมู ลับแนวคิ
แนวคิดดหรือ ระด ับหลักกำร
(Conceptual
่ ้บริหารฐานข ้อมูลเป็ นผู ้
Level) เป็ นระดับข ้อมูลทีผู
วางระบบและ
ออกแบบฐานข ้อมูลว่ามีเอ็นทิตี ้ โครงสร ้างข ้อมูล
ความสัมพันธ ์และ
่
คือ
ควำมหมำยของระด ับ
ข้ระดั
อมูบลข้ภำยใน
อมู ลภำยใน (Internal Level)
่ ดให ้เข ้าสูร่ ะบบฐานข ้อมูลจริง ซึง่
ระดับข ้อมูลทีจั
ผู ้ใช ้ไม่จาเป็ นต ้อง
่ ยวกั
่
ทราบรายละเอียดทีเกี
บการจัดเก็บข ้อมูลว่ามี
โครงสร ้างในการ
จัดเก็บในรูปแบบใด รวมถึงวิธก
ี ารเข ้าถึงขอ้ มูลต่าง
ความเป็ นอิสระของข ้อมูล
ความเป็ นอิสระทางกายภาพ ความเป็ นอิสระทางตรรก
ความเป็ นอิสระของข ้อมูล
คือความเป็ นอิสระของข ้อมูลในแต่ละระดับ
่
กล่าวคือ หากมีการเปลียนแปลงข
้อมูลในระดับใด
่
ระดับหนึ่ งจะไม่กระทบกระเทือนกับข ้อมูลในระดับอืน
ๆ
ความเป็ นอิสระของข ้อมูลถือว่ามี
่ อการจัดเก็บข ้อมูลและการ
ความสาคัญอย่างยิงต่
่ ้งานออกมามีประสิทธิภาพ โดย
ประยุกต ์ใช ้ เพือให
่ ใ้ ช ้ไม่จาเป็ นต ้องคอยทาการแก ้ไขโปรแกรมที่
ทีผู
ตนเองใช ้อยู่
้ั มี
่ การเปลียนแปลงแก
่
ทุก ๆ ครงที
้ไขในฐานข ้อมูล
ความเป็ นอิสระทางกายภาพ (Physical
Data Independence) คือลักษณะการ
่
เปลียนแปลงแก
้ไขข ้อมูลหรือโครงสร ้างในระดับ
่
ภายในของระบบฐานข ้อมูล เช่น การเพิม
ประสิทธิภาพในการเรียกใช ้ข ้อมูลให ้เร็วขึน้ โดย
่ Disk อีกหนึ่ ง Disk จะไม่กระทบถึงผู ้ใช ้
การเพิม
ผูใ้ ช ้เคยเรียกใช ้ข ้อมูลอย่างไรก็เรียกใช ้ได ้
่
เหมือนเดิม โดยไม่ต ้องเปลียนแปลงข
้อมูลหรือ
้ น้
โปรแกรมใด ๆ ทังสิ
ความเป็ นอิสระแบบตรรก (Logical Data
่
Independence) คือการเปลียนแปลงข
้อมูลหรือ
โครงสร ้างในระดับภายนอกหรือระดับแนวคิดเช่น
่ Entity หรือAttribute ในฐานข ้อมูล
การเพิม
่ ใ้ ช ้
เมือผู
ดึงข ้อมูลออกมาใช ้ก็ไม่มค
ี วามรู ้สึกแตกต่างไปจาก
เดิม
ความหมายของ
ความสัมพันธ ์
หมำยถึงควำมสัมพันธ ์ระหว่ำง
Entity กับ Entity
เช่น ความสัมพันธ ์ระหว่างเอนทิตี ้ ลูกค ้ากับเอนท
ประเภทของ
่ งต่อหนึ่ ง
ควำมสั
ม
พั
น
ธ
์แบบหนึ
ควำมสัมพันธ ์
นักเรียน
คณะวิชำ
ควำมสัมพันธ ์แบบหนึ่ งต่อกลุ่ม
คณะวิชำ
นักเรียน
ควำมสัมพันธ ์แบบกลุ่มต่อกลุ่ม
สินค้ำ
่ อ้
ใบสังซื
ควำมสัมพันธ ์แบบหนึ่ งต่อหนึ่ ง
คือควำมสัมพันธ ์ของเอนทิตหนึ
ี ้ ่ งมีควำมส
เอนทิตหนึ
ี ้ ่ งในลักษณะ หนึ่ ง ต่อ หนึ่ ง เช่น นักศ
้
สำมำรถสมัครเรียนได้เพียง 1 คณะวิชำ เท่ำนัน
ควำมสัมพันธ ์แบบหนึ่ งต่อกลุ่ม
คือความสัมพันธ ์ของเอนทิตหนึ
ี ้ ่ งมี
ความสัมพันธ ์กับอีกเอนทิตหนึ
ี ้ ่ งใน
ลักษณะ หนึ่ ง ต่อ กลุม
่ เช่น คณะวิชา
1 คณะวิชาสามารถร ับสมัครนักศึกษา
ได้มำกว่ำ 1 คน
ควำมสัมพันธ ์แบบกลุ่มต่อกลุ่ม
คือความสัมพันธ ์ของเอนทิตหนึ
ี ้ ่งมี
ความสัมพันธ ์กับอีกเอนทิตหนึ
ี ้ ่ งใน
่ อ้
ลักษณะกลุม
่ ต่อกลุม
่ เช่น ใบสังซื
่ อสิ
้ นค ้าได ้ครงละ
้ั
1 ใบ สามารถสังซื
หลายรายการ และสินค ้า 1 รายการ
่ อได
้ ้หลายใบ
สามารถปรากฏในใบสังซื
้
ฐำนข้อมู ลแบบลำด ับขัน
รูปแบบของ
ฐานข ้อมูล
ฐำนข้อมู ลแบบเครือข่ำย
ฐำนข้อมู ลแบบตำรำงสัม
้
ฐานข ้อมูลแบบลาดับขัน
่ ลก
เป็ นฐานข ้อมูลทีมี
ั ษณะโครงสร ้างคล ้ายกับโค
้ ้านบน จุดทีมี
่ การแ
ต ้นไม้ทกลั
ี่ บเอาส่วนของรากขึนด
่ ละโหน
ออกไปจะเรียกว่าโหนด (NODE) โดยทีแต่
่ ปแบบของฐานข ้อม
แตกย่อยเป็ นโหนดใหม่ได ้อีก ซึงรู
้ั ยกว่าฐานข ้อมูลแบบ พ่อ- ลูก เพราะโหน
บางครงเรี
่ นโหนดแม่ได ้เพียง 1 โห
แต่ละโหนดนั้นจะมีโหนดทีเป็
ฐำนข้อมู ลแบบเครือข่ำย
่ โครงสร ้ำงคล้ำย
เป็ นฐำนข้อมู ลทีมี
้
กับฐำนข้อมู ลแบบลำดับขันแต่
ตำ
่ งกัน
่
ตรงทีฐำนข้
อมู ลแบบเครือข่ำย โหนด
ลู กอำจมีโหนด พ่อ-แม่ มำกกว่ำ 1
โหนดได้
ฐานข ้อมูลแบบตารางสัมพันธ ์
่ บข ้อมูล
เป็ นรูปแบบฐานข ้อมูลทีเก็
ในลักษณะของคอลัมน์และแถว
ENTITY
PK
FK
แผนกวิชำ
่
รหัส
ชือแผนก
แผนก
วิชำ
21020 การบัญชี
21030 การตลาด
21050 คอมพิวเตอร ์
ธุรกิจ
สถำน
รหัส
่ ง้
ทีตั
อำจำรย ์
7301
068
7201
069
9403
071
ENTITY
PK
FK
อำจำรย ์
รหัส
อำจำรย ์
068
069
071
่
ชืออำจำรย
์
สิรวิ ม
ิ ล
วรรณา
ใจภักดิ ์
เงินเดื
รหัส
อน นักศึกษ
ำ
25,00 510001
0
510002
19,00 510003
0
23,00
ENTITY
PK
FK
นักศึกษำ
รหัส
นักศึกษ
ำ
510001
510002
510003
่
ชือ
นักศึกษ
ำ
นาริน
คาวี
เพ็ญ
พักตร ์
แผนกวิชำ
รหัส
วิชำ
การบัญชี
การตลาด
คอมพิวเตอร ์
ธุรกิจ
C201
C202
C203
ENTITY
รำยวิชำ
รหัสวิชำ
C201
C202
C203
PK
่ ชำ
ชือวิ
หน่ วย
กิต
ระบบปฏิบต
ั ก
ิ า
3
ร
3
ระบบ
3
ฐานข ้อมูล
โปรแกรม
ภาษาซี
ENTITY
ค่ำระด ับคะแนน
รหัส
นักศึกษ
ำ
510001
510002
510003
Composit Key
รหัสวิชำ
ค่ำระดับ
คะแนน
C201
C202
C203
3
4
3.5
่ั
คุณสมบัตท
ิ ส
ี่ ำคัญของรีเลชน
1 แต่ละคอลัมน์ในตารางหนึ่ ง ๆ จะตัองมีชอเรี
ื่ ยกทีแ่
่
่
ละคอลัมน์ คือชือของ
ชือของแต่
Attribute
2. ค่าของข ้อมูลในแต่ละคอลัมน์จะต ้องอยู่ใน
่ าหนดไว ้
โดเมนทีก
3. ข ้อมูลในแต่ละแถวของตารางจะต ้อง
4. แตกต่
การเรีายงกั
งลนาดับก่อนหลังจากซ ้ายไปขวาของ
คอลัมน์ในตาราง
ไม่มค
ี ย
วามส
าคั
5. การเรี
งลาดั
บญ
ก่อนหลังจากบนลงล่างของ
แถวในตาราง
ไม่มค
ี วามสาคัญ
กฎของควำมคงสภำพ
่
เพือให้
ขอ
้ มู ลในฐำนข้อมู ลมีควำม
ถู กต้อง มี 2 กฎ คือ
่
- กฎเพือควำมคง
สภำพของเอนทิต ี ้
(Entity
Integrity
่
- กฎเพือควำมคงสภำพ
Rule)
ของกำรอ้ำงอิง
(Referential
กำรควบคุมให้เป็ นไปตำมกฎของกำรอ้ำงอง
1. กำรกระทำแบบมีขอ
้ จำกัด
(RESTRICTED)
2. กำรกระทำแบบต่อเนื่ อง
(CASCADES)
3. กำรใส่คำ
่ นัล (NULLIFIES)
แผนภำพ E-R Diagram
แผนภำพ E-R เป็ นแบบจำลองในร
่
่ วยในกำรสือสำรระ
่
เป็ นเครืองมื
อทีช่
และผู ใ้ ช้ฐำนข้อมู ล และเป็ นอิสระจำ
่ สร ้ำงฐำนข้อมู ล
ทีใช้
องค ์ประกอบของแผนภำพ E
เอนทิต ี ้ (Entity)
แอททริบวิ ต ์ (Attribute)
ควำมสัมพันธ ์ระหว่ำงเอนทิต ี ้ (R
สัญลักษณ์ทใช้
ี่ ในกำรทำ ER Diagram
สัญลักษณ์ทใช้
ี่ แทน เอนทิต ี ้
สัญลักษณ์ทใช้
ี่ แทนแอททริบวิ ต ์
สัญลักษณ์ทใช้
ี่ แทนควำมสัมพันธ ์
้
นวนชนิ ดของเอนทิตในควำมสั
ี
มพ
(Degree of Relationship
Degree ของควำมสัมพันธ ์แบ่งออกเป็ น
- ควำมสัมพันธ ์แบบยู นำรี
- ควำมสัมพันธ ์แบบไบนำรี
- ควำมสัมพันธ ์แบบเทอร ์นำรี
ควำมสัมพันธ ์แบบยู นำรี (Unary
คือควำมสัมพันธ ์แบบรีเคอร ์ซีพ (Recursi
หมำยถึงควำมสัมพันธ ์ระหว่ำงเอนทิตชนิ
ี ้ ดเดียว
ในตัวเอง เช่น
วิชำ
่ ้อง
เป็ นวิชาทีต
ศึกษาก่อน
นักศึกษำ
พักอยู่ห ้องเดียวกันกับ
ควำมสัมพันธ ์แบบไบนำรี (Binary
คือควำมสัมพันธ ์ระหว่ำงเอนทิต ี ้ 2
ชนิ ด เป็ นควำมสัมพันธ ์
หมำยถึงเอนทิตหนึ
ี ้ ่ งมีควำมสัมพันธ ์กับ
แบบสองทำง
เอนทิตต่
ี ้ ำงประเภทกัน
ลู กค้ำ
่ อ้
สังซื
สินค้ำ
พนักงำน
สังกัด
หน่ วยงำน
ควำมสัมพันธ ์แบบเทอร ์นำรี (Ternar
คือควำมสัมพันธ ์ระหว่ำงเอนทิต ี ้ 3
ชนิ ด เป็ นควำมสัมพันธ ์
แบบ 3 ทำง คือ เอนทิตต่
ี ้ ำงกัน 3 ประเภท
่
คลังสินค้ำ
มี
ค
วำมเกี
ยวข้
องกั
น ง
จัดส่
ผู ข
้ ำย
้ วนอุปกรณ์
ชินส่
้
คาร ์ดินอลลิตของความสั
ี
มพันธ ์
Cardianlity of Relationship)
คือการกาหนดค่าต่าสุด
(Minimal Cardinality และ
ค่าสูงสุด (Maximal Cardinality)
ของเอนทิตแต่
ี ้ ละประเภท
ท
์ ใช้
ี่ ในกำรกำหนด คำร ์ดินอลลิตของควำมส
ี้
แบ่งเป็ น 4 ประเภท ด ังนี ้
ค่าต่าสุดและ
ค่าสูงสุดเป็ น
1
่
ค่าตาสุดเป็ น
0 และ
่ สูงดสุเป็
ดเป็
ค่ค่
าตาาสุ
น 0น
และค่าสู1งสุดมี
่ เป็ นบวก
ค่าค่ตาาสุ
ดเป็ น 1
และค่าสูงสุดมี
ค่าเป็ นบวก
กำรแปลงข้อมู ลจำก E-R Diagra
ให้เป็ นฐำนข้อมู ลชนิ ดตำรำงสัมพ
ให้แปลงหนึ่ งเอนทิต ี ้
เป็ น 1 ตำรำง
ให้แปลงหนึ่งควำมสัมพันธ ์เป็ น 1 ต
่ นคีย ์หลักให้พจ
วิธเี ลือกแอททริบวิ ต ์ทีเป็
ิ ำรณ
1. ถ้ำเป็ นควำมสัมพันธ ์แบบหนึ่ ง
แอททริบวิ ต ์ใดมำเป็ นคีย ์หลักก็ได้
2. ถ้ำเป็ นควำมสัมพันธ ์แบบหนึ่ งต
แอททริบวิ ต ์ด้ำนกลุ่มมำเป็ นคีย ์หลัก
3. ถ้ำเป็ นควำมสัมพันธ ์แบบกลุ่มต
้
แอททริบวิ ต ์ทังสองด้
ำนมำเป็ นคีย ์หลัก