Data Modeling Using the Entity-Relationship Model

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
ภาควิชาวิทยาการคอมพิวเตอร์ มหาวิทยาลัยสงขลานครินทร์
Advertisements

การออกแบบฐานข้อมูลในระดับ Conceptual
E-R Model บรรยายโดย สุรางคนา ธรรมลิขิต.
Chapter 8 : Logic Modeling & Data Modeling
Class Diagram.
บทที่ 2 รูปแบบของฐานข้อมูล.
Security and Integrity
Entity-Relationship Model
Object-Oriented Analysis and Design
ฐานข้อมูลเชิงสัมพันธ์
บทที่ 8 การออกแบบข้อมูล (Data Design) โครงสร้างข้อมูล (Data Structure)
ครั้งที่ 7 Composition.
บรรยายโดย สุรางคนา ธรรมลิขิต
SCC : Suthida Chaichomchuen
Databases Design Methodology
Object-Oriented System Analysis and Design
Enhanced Entity-Relationship Model
– Web Programming and Web Database
การออกแบบแบบจำลองข้อมูล
Chapter 3 แบบจำลองข้อมูล : Data Models
Chapter 2 Database systems Architecture
การออกแบบฐานข้อมูลเชิงสัมพันธ์
ความรู้พื้นฐานในการออกแบบ ฐานข้อมูลแบบสัมพันธ์ ธวัชชัย เอี่ยมไพโรจน์
Systems Analysis and Design
อ.อารียา ศรีประเสริฐ สาขาวิชาเทคโนโลยีสารสนเทศธุรกิจ
ฐานข้อมูลเชิงสัมพันธ์
การแปลง E-R เป็น Table.
Memory Management ในยุคก่อน
Charter 8 1 Chapter 8 การจัดการฐานข้อมูล Database Management.
Entity Relationship Model
SQL Structured Query Language.
บทที่ 3 การวิเคราะห์ Analysis.
ความสัมพันธ์ระหว่างคลาส (Class Relationship)
ที่ใช้ใน Object-Oriented Design
Data Modeling Chapter 6.
System Analysis and Design
ฐานข้อมูลเชิงสัมพันธ์ (Relational Database)
สำนักวิชาเทคโนโลยีสารสนเทศและการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา
โมเดลจำลองความสัมพันธ์ระหว่างข้อมูล (ER-Diagram)
1. ศัพท์พื้นฐานของฐานข้อมูล
การออกแบบระบบฐานข้อมูล
SQL Structured Query Language.
Normalization – Special Problem (DB) Choopan Rattanapoka
Entity-Relationship Model
การออกแบบฐานข้อมูลในระดับตรรกะ
โมเดลเชิงสัมพันธ์ The relational model.
ส่วนประกอบของแบบจำลองอีอาร์
E-R to Relational Mapping Algorithm
Enhanced Entity-Relationship Modeling
Modeling and Activity Diagram
BC305 การวิเคราะห์และออกแบบระบบสารสนเทศ
แบบจำลองข้อมูล (Data Model)
การออกแบบฐานข้อมูล ด้วย E-R Model
Introduction to Database
การจัดทำมาตรฐานข้อมูล
บทที่ 4 แบบจำลองฐานข้อมูลเชิงสัมพันธ์ Relational Database
การเปลี่ยนจาก E-R Diagram เป็นโมเดลเชิงสัมพันธ์ (ตารางข้อมูล)
บทที่ 5 แบบจำลองกระบวนการ
Information System Development
Chapter 6 : แบบจำลอง E-R (Entity-Relationship Model)
โดย อ.พัฒนพงษ์ โพธิปัสสา
การวิเคราะห์ซอฟต์แวร์
7 Entity-Relationship Modeling แผนภาพความสัมพันธ์ ORACLE MS SQL SERVER
Chapter 6 Information System Development
E-R Diagram (Entity Relationship Diagram)
การออกแบบโครงสร้างฐานข้อมูลด้วย E-R Model และการแปลงเป็นรีเลชัน
โครงสร้างข้อมูล( Data Structure)
กฎการ Normalization 1. จะต้องไม่มีเซลล์ใดในตารางที่มีค่าเกิน 1 ค่า ดังนั้นเราสามารถทำให้ตารางผ่านกฎข้อที่ 1 ได้ด้วยการแยกเซลล์ที่มีค่าเกินหนึ่งออกเป็นเรคคอร์ดใหม่
บทที่ 2 รูปแบบของฐานข้อมูล
ฐานข้อมูลเชิงสัมพันธ์ Relational Database
ใบสำเนางานนำเสนอ:

Data Modeling Using the Entity-Relationship Model

เนื้อหา การออกแบบฐานข้อมูล Entity-Relationship Model หลักการของอีอาร์โมเดล กรณีตัวอย่าง การทำแผนภาพอีอาร์

Phases of Database Design Requirements Collection and Analysis Phases of Database Design Functional Requirements Data Requirements FUNCTIONAL ANALYSIS CONCEPTUAL DESIGN Conceptual Schema (in a high-level data model) High-level Transaction Specification LOGICAL DESIGN (DATA MODEL MAPPING) Logical (Conceptual) Schema (In the data model of a specific DBMS) APPLICATION PROGRAM DESIGN First step shown is requirements collection and analysis. This step, the database designers interview user to user stand and document their requirements. The results is set of user requirements. The requirement have be collected and analyzes, the next step is to create a conceptual schema for the database, using a high level conceptual schema for the database. The conceptual schema is a description of the data requirements of the users and includes detailed description of the entity types, relationships and constraints. Present by using high level data model. Because concepts do not include do not include implementation details, they are usually easier to understand and can be used to communicate with user. The next step is actual implementation of the database, using a commercial DBMS. Most commercial DBMS use an implementation Data Model such as relation model or the object-relational database model. This step is transformed from the high-level data model into the implementation data model. The last step is the physical design phase. During which the internal storage structures, indexes, access paths, and file organizations for the database files are specified. PHYSICAL DESIGN TRANSACTION IMPLEMENTATION Internal Schema Application Program

Phases of Database Design Requirements Collection and Analysis Phases of Database Design The next step is to create a conceptual schema for the database, using a high level conceptual schema for the database. The conceptual schema is a description of the data requirements of the users and includes detailed description of the entity types, relationships and constraints, present by using high level data model. Because concepts do not include do not include implementation details, they are usually easier to understand and can be used to communicate with user. Data Requirements Functional Requirements FUNCTIONAL ANALYSIS High-level Transaction Specification APPLICATION PROGRAM DESIGN TRANSACTION IMPLEMENTATION Application Program CONCEPTUAL DESIGN The last step is the physical design phase. During which the internal storage structures, indexes, access paths, and file organizations for the database files are specified. First step shown is requirements collection and analysis. This step, the database designers interview user to understand and document their requirements. The next step is actual implementation of the database, using a commercial DBMS. Most commercial DBMS use an implementation Data Model such as relation model or the object-relational database model. This step is transformed from the high-level data model into the implementation data model. Conceptual Schema (in a high-level data model) LOGICAL DESIGN (DATA MODEL MAPPING) Logical (Conceptual) Schema (In the data model of a specific DBMS) First step shown is requirements collection and analysis. This step, the database designers interview user to user stand and document their requirements. The results is set of user requirements. The requirement have be collected and analyzes, the next step is to create a conceptual schema for the database, using a high level conceptual schema for the database. The conceptual schema is a description of the data requirements of the users and includes detailed description of the entity types, relationships and constraints. Present by using high level data model. Because concepts do not include do not include implementation details, they are usually easier to understand and can be used to communicate with user. The next step is actual implementation of the database, using a commercial DBMS. Most commercial DBMS use an implementation Data Model such as relation model or the object-relational database model. This step is transformed from the high-level data model into the implementation data model. The last step is the physical design phase. During which the internal storage structures, indexes, access paths, and file organizations for the database files are specified. PHYSICAL DESIGN Internal Schema

Entity Relationship Data Model ER-Model describes data as Entities Attributes Relationships

Entities และ Attributes Entity คือ วัตถุสิ่งของหรือนามธรรมที่เราสนใจ Entity อาจเป็นออปเจกที่จับต้องได้ (object with a physical existence) เช่น person, car , house, employee Entity อาจเป็นออปเจกเชิงหลักการ (object with a conceptual existence) เช่น job, a university course.

Attributes Attribute คือ คุณสมบัติเฉพาะที่ใช้อธิบายเอนติตี หรือ เป็นคุณสมบัติของเอนติตีแต่ละตัวนั่นเอง ค่าของแอตตริบิว (attribute values) ที่อธิบายแต่ละเอนติตีคือข้อมูลทีถูกเก็บในฐานข้อมูลต่อไป ตัวอย่าง เอนติตี Employee มีคุณสมบัติดังต่อไปนี้ ชื่อพนักงาน (Name), อายุ (Age), ที่อยู่ (address), เงินเดือน (salary) และตำแหน่งงาน (job)

Attribute & Attribute Value Student Name Faculty Major ID 475020126-3 Kamonphon Science IT 465020100-0 PiyathiDa Science Comp SC. Attribute Value

แต่ละเอนติตีมีชื่อเรียก (ชื่อที่ตั้งควรสื่อถึงสิ่งที่กล่าวถึงด้วย) แต่ละเอนติตีประกอบด้วยแอตตริบิว (บอกคุณสมบัติ) เอนติตีแต่ละรายการก็มีค่าที่ปรากฏในแต่ละแอตตริบิวของมัน ค่าของแอตตริบิวที่อธิบายแต่ละเอนติตีคือข้อมูลทีถูกเก็บในฐานข้อมูลต่อไป.

Attribute Type Composite Attributes Single-Valued Multi Valued Atomic Attribute Composite Attributes Single-Valued Multi Valued Stored Attribute Derived Attribute

Atomic Attribute Atomic Attribute คือแอตตริบิวที่ไม่สามารถแยกย่อยออกไปได้อีก เรียกว่า Atomic หรือ Simple Attributes. ตัวอย่างเช่น Student Atomic Simple First Name Last Name Age

Composite Attributes Composite Attributes สามารถที่จะแบ่งออกเป็นส่วนของแอตตริบิวย่อย ที่มีความหมายที่เป็นอิสระต่อกันได้ Composite Attribute Address Street Address Tambol District Province ZipCode Composite Attribute? Atomic Attribute

Single-Valued VS Multi Valued Attributes Multi Value Attribute: มีค่าได้หลายค่า

Example Attribute Age Attribute Value Degree B : 27 Years A : B.Sc. B : B.Sc, M.Sc., Dr. Eng. Age A : 24 Years B : 27 Years Attribute Value

Stored VS Derived Attributed Stored Attribute Derived Attribute: คือค่าของแอตตริบิวดังกล่าวสามารถกำหนดหรือคำนวณจากแอตตริบิวอื่นๆ หรือ เอนติตีอื่นๆ ที่มีความเกี่ยวข้องกันได้

Example Attribute Age Attribute Value Birth Day B : 40 Years A : 13 July 1980 B : 23 Dec 1964 Age A : 24 Years B : 40 Years Stored Attribute Attribute Value Derived Attribute

คุณสมบัติของคีย์แอตตริบิว Key Attribute Key Attribute คือแอตตริบิว (หรือกลุ่มของแอตตริบิว) ที่ค่าของมันสามารถใช้แยกความแตกต่างของเอนติตีแต่ละตัวในเอนติตีเซตได้ หรือกล่าวได้ว่าเป็นแอตตริบิวที่ใช้เป็นตัวแทนของแต่ละเอนติตีในเอนติตีเช็ค คุณสมบัติของคีย์แอตตริบิว Unique Not Null

สำหรับบางกรณีเอนติตีบางตัวอาจไม่มีค่าปรากฏในบางแอตตริบิว Null Value สำหรับบางกรณีเอนติตีบางตัวอาจไม่มีค่าปรากฏในบางแอตตริบิว ยกตัวอย่างเช่น Degree attribute จะปรากฏค่าเฉพาะสำหรับคนที่สำเร็จการศึกษาในระดับวิทยาลัย/มหาวิทยาลัย ในสถานการณ์ดังกล่าวค่าของ Degree attribute จะมีค่าพิเศษเรียกว่าค่า null

Entity Type Strong Entity Type Weak Entity Type คือเอนติตีที่มีคีย์แอตตริบิวของตนเอง (Entity that do have a key attribute) Weak Entity Type คือเอนติตีที่ไม่มีคีย์แอตตริบิวของตนเอง เป็นเอนติตีที่ขึ้นกับเอนติตีอื่น(Depend on other entities) เอนติตีที่ถูกขึ้นตรงจะเรียกว่า owner entity ความสัมพันธ์ระหว่าง Owner กับ Weak entities ถูกเรียกว่า “identifying relationship”

Example Entity Employee Department Project Dependent

Entity Type, Entity Sets, Keys, Value Set Entity set ปกติใช้ชื่อเดียวกันกับเอนติ entity type.

Key attribute of Entity type Key or Uniqueness constraint แอตตริบิวที่ค่าของมันสามารถใช้ในการแยกความแตกต่างสำหรับแต่ละเอนติตีในเอนติตีเช็คได้

Relationship เป็นความสัมพันธ์ระหว่างเอนติตี

Relationship Type Relationship type R ระหว่าง n entity types E1,E2,…,En บอกกลุ่มความสัมพันธ์ (association or relationship) ระหว่าง entities Mathematically, the relationship set R คือเซตของความสัมพันธ์ ri, โดยที่แต่ละ ri สัมพันธ์กับ n individual entities (e1,e2,…, en) และแต่ละเอนติตี ej ใน ri คือสมาชิกของแต่ละเอนติตีEj, 1 ≤ j ≤ n.

Relationship Degree Degree ของ relationship type คือจำนวนของเอนติตีเช็ค ที่เกิดความสัมพันธ์กัน For example - Degree ของความสัมพันธ์ระหว่างอาจารย์และนักศึกษาจะมี ค่าเท่ากับ สอง - Degree ที่มีค่าเท่ากับสองเรียกว่า binary สาม คือ ternary ตามลำดับ

Constraint on Relationship Types Two main Type of relationship constraints Cardinality ratio Participation

Cardinality Ratios Cardinality ratio กำหนดค่ามากสุดของสมาชิกของความสัมพันธ์ที่เอนติตีเข้าไปมีส่วนเกี่ยวข้อง 1 to 1 Relationship (1:1) 1 to many relationship (1:N) Many to Many relationship (N:M)

1:1 Relationship R1 R2 R3 R4 T1 T2 T3 T4 T5 T6 T7 D1 D2 D3 D4 Entity E2 Entity T Relationship

1:1 Relationship Head Apisak Pusadee Pramot Somjit Pattana Kriat Sartra CompSc Stat Physics Math Entity E2 Entity T Relationship

1 to Many Relationship R1 R2 R3 R4 E1 E2 E3 E4 E5 E6 E7 D1 D2 D3 D4 Entity D Entity E Relationship

1:1 Relationship work Work Apisak Pusadee Somjit Pramot Pattana Tasanee Jirasuk CompSc Stat Physics Math Entity E2 Entity T Relationship

Many to Many Relationship Entity E J1 J2 J3 J4 Entity J Relationship

Many to Many Relationship Aim Daw Dam Aun Nuu Nam F Student Project File&DB English Cal Subject Register

Participation Constraints and Existence Dependencies เป็นการระบุว่าสมาชิกเอนติตีในเอนติตีเซ็ตขึ้นกับเอนติตีอื่นโดยผ่านทางความสัมพันธ์ มันจะระบุจำนวนที่น้อยที่สุดของสมาชิกในเอนติตีที่มีความสัมพันธ์หรือที่เกี่ยวข้องไว้ ซึ่งเราเรียกว่า minimum cardinality constraint.

Participation type Partial participation Total participation (existence dependency)

Total participation สังกัด R1 R2 R3 R4 E1 E2 E3 E4 E5 E6 E7 D1 D2 D3 Entity แผนก Entity พนักงาน Relationship สังกัด

Partial participation D1 D2 D3 D4 E1 E2 E3 E4 E5 E6 E7 Entity E Entity D Relationship

Symbol Entity Weak Entity Relationship

Weak Entity Attribute Key Attribute Composite Attribute Derived Attribute

partial Total E1 E2 R E1 E2 R 1 N Cardinality Ratio

ER-Diagram

Another ER-Diagram

UML Class diagram