100 likes | 198 Views
ฐานข้อมูลและการออกแบบฐานข้อมูล. ฐานข้อมูลและการออกแบบฐานข้อมูล. ระบบจัดการฐานข้อมูล ( DBMS : DataBase Management System ) เป็นระบบซอฟต์แวร์ ช่วยในการอำมวยความสะดวกและช่วยจัดการฐานข้อมูลให้เรา
E N D
ฐานข้อมูลและการออกแบบฐานข้อมูลฐานข้อมูลและการออกแบบฐานข้อมูล
ฐานข้อมูลและการออกแบบฐานข้อมูลฐานข้อมูลและการออกแบบฐานข้อมูล • ระบบจัดการฐานข้อมูล (DBMS : DataBase Management System) เป็นระบบซอฟต์แวร์ ช่วยในการอำมวยความสะดวกและช่วยจัดการฐานข้อมูลให้เรา • ภาษา SQL (Structure Query Language)เป็นภาษาหนึ่งที่ใช้ระบบจัดการฐานข้อมูล เป็นภาษาที่ง่ายและมีประสิทธิ์ภาพ • ตัวอย่าง (DBMS) : - Oracle - Informix - DB2 - Progress - Ingress - Sybase - Magic - Mysql- SqlServer - FoxPro - Powerbuilder - Access - Foxbase ฯลฯ
แบบจำลองฐานข้อมูล (DataBase Models) • แบบจำลองแบบแตกสาขา (Hierarchical Model) • แบบจำลองแบบเครือข่าย (Network Model) • แบบจำลองเชิงสัมพันธ์ (Relational Model) • แบบจำลองแบบกระจาย (Distribute Model) • แบบจำลองแบบเชิงวัตถุ (Object Oriented Model)
ฐานข้อมูลเชิงสัมพันธ์ (Relational DataBase) ตารางCustomer Id Cahr(5) Name char(28) Addr char(18) Tel Char(8) Credit Int(8) Curr_Bal int(8) C41351 Phongwut Chonburi 393335 300000 150000 - - - - - - - - - - - - - - - - - -
ศัพท์ที่ควรรู้ • Table หรือ Entity หรือ Relation • Attribute หรือ Field หรือ Column • Tuple หรือ record หรือ Row • Primary Key คีย์หลัก • Alternative Key คีย์คู่แข่ง • Secondary Key คีย์รอง • Foreign Key คีย์นอก
ความสัมพันธ์ (Relation) • แบบหนึ่งต่อหนึ่ง (One-to-One) เช่น รหัสนิสิต กับชื่อ-สกุลนิสิต • แบบหนึ่งต่อกลุ่ม (One-to-Many) เช่น อาจารย์ ก. สอนนิสิตหลายคน • แบบกลุ่มต่อหนึ่ง (Many-to-One) เช่น นิสิตหลายคนเรียนกับอาจารย์ ก. • แบบกลุ่มต่อกลุ่ม (Many-to-Many)เช่น อาจารย์หลายคนสอนนิสิตหลายกลุ่ม
เงื่อนไขของความสัมพันธ์เงื่อนไขของความสัมพันธ์ • การสร้างเงื่อนไขของความสัมพันธ์เพื่อข้อมูลยังคงมีสภาพที่ถูกต้อง (Integrity) สอดคล้องกัน (Consistency) และไม่เกิดการซ้ำซ้อน (Redundant) • Cascade ยอมให้กระทำเป็นทอด ๆเช่นในการลบ การแก้ไขข้อมูล เช่น *Cascade Update Related Fields * Cascade Delete Related Records • Restricted ยอมให้ดำเนินการได้อย่างมีเงื่อนไข เช่นยอมให้ลบถ้าไม่มีข้อมูลอ้างอิง • Nullity ยอมให้เปลี่ยนเป็นค่าว่างเช่นการลบคีย์นอก
การออกแบบฐานข้อมูล (DataBase Design) • การออกแบบ โมเดลฐานข้อมูล (Data Modeling) การสร้างและกำหนดโครงสร้างในมุมมองของผู้ใช้ • การกำหนดเอนทิตีหลัก (Identify major Entities) • การกำหนดแอททรีบิวต์ (Identify Attribute) • กำหนดความสัมพันธ์ระหว่างเอนทิตี (Determine relationships between Entities) • กำหนดคีย์หลักและคีย์รอง (Determine Primary and Alternate Key) • กำหนดคีย์นอก (Determine Foreign key) • กำหนดคีย์กฎธุรกิจ (Determine key business rules)
การออกแบบฐานข้อมูล (DataBase Design) (ต่อ) • การออกแบบ โมเดลฐานข้อมูล (Data Modeling) เพิ่มรายละเอียดในมุมมองของผู้ใช้ • การเพิ่มแอททรีบิวต์ที่เหลือ (Add remaining Attributes) • การตรวจสอบกฎนอร์นัลไลเซชัน (Validate normalization rules) • กำหนดโดเมน (Determine domains)กำหนดกฎการจัดการกับข้อมูล (Trigger operations)
การออกแบบฐานข้อมูล (DataBase Design) (ต่อ) • การออกแบบ โมเดลฐานข้อมูล (Data Modeling) การรวมมุมมองของผู้ใช้ • การเชื่อมมุมมองของผู้ใช้เข้าด้วยกัน (Combine user views) • การรวมเข้ากับโมเดลที่มีอยู่แล้ว (ถ้ามี) • วิเคราะห์เสถียรภาพและการเติบโตในอนาคต