การสร้างแบบจำลอง ER คืออะไร? เรียนรู้ด้วยตัวอย่าง
การสร้างแบบจำลอง ER คืออะไร?
แบบจำลองความสัมพันธ์เอนทิตี (ER Modeling) เป็นแนวทางการออกแบบฐานข้อมูลแบบกราฟิก เป็นแบบจำลองข้อมูลระดับสูงที่กำหนดองค์ประกอบข้อมูลและความสัมพันธ์สำหรับระบบซอฟต์แวร์ที่ระบุ แบบจำลอง ER ถูกใช้เพื่อแสดงวัตถุในโลกแห่งความเป็นจริง
An เอกลักษณ์ คือสิ่งของหรือวัตถุในโลกแห่งความเป็นจริงที่สามารถแยกแยะได้จากสภาพแวดล้อมรอบข้าง ตัวอย่างเช่น พนักงานแต่ละคนในองค์กรเป็นหน่วยงานที่แยกจากกัน ต่อไปนี้คือลักษณะสำคัญบางประการของหน่วยงาน
- เอนทิตีมีชุดของคุณสมบัติ
- คุณสมบัติเอนทิตีสามารถมีค่าได้
ลองพิจารณาตัวอย่างแรกของเราอีกครั้ง พนักงานขององค์กรเป็นนิติบุคคล ถ้า “ปีเตอร์” เป็นโปรแกรมเมอร์ (อัน ลูกจ้าง) ที่ Microsoftเขาสามารถมีได้ แอตทริบิวต์ (คุณสมบัติ) เช่น ชื่อ อายุ น้ำหนัก ส่วนสูง ฯลฯ เห็นได้ชัดว่าสิ่งเหล่านั้นมีคุณค่าที่เกี่ยวข้องกับเขา
แต่ละแอตทริบิวต์สามารถมีได้ ความคุ้มค่า- ในกรณีส่วนใหญ่แอตทริบิวต์เดียวจะมีค่าเดียว แต่ก็เป็นไปได้สำหรับคุณลักษณะที่มี หลายค่า นอกจากนี้ ตัวอย่างเช่น อายุของปีเตอร์มีค่าเดียว แต่คุณสมบัติ “หมายเลขโทรศัพท์” ของเขาสามารถมีค่าได้หลายค่า
นิติบุคคลก็มีได้ สัมพันธ์ ซึ่งกันและกัน ลองพิจารณาตัวอย่างที่ง่ายที่สุด สมมุติว่าแต่ละคน. Microsoft โปรแกรมเมอร์ได้รับคอมพิวเตอร์ เป็นที่ชัดเจนว่า คอมพิวเตอร์ของปีเตอร์ ยังเป็นเอนทิตีอีกด้วย ปีเตอร์ใช้คอมพิวเตอร์เครื่องนั้น และปีเตอร์ใช้คอมพิวเตอร์เครื่องเดียวกัน กล่าวอีกนัยหนึ่ง มีความสัมพันธ์ร่วมกันระหว่างปีเตอร์กับคอมพิวเตอร์ของเขา
In การสร้างแบบจำลองความสัมพันธ์เอนทิตี เราจำลองเอนทิตี คุณลักษณะ และความสัมพันธ์ระหว่างเอนทิตี
แบบจำลองความสัมพันธ์เอนทิตีขั้นสูง (EER)
โมเดลความสัมพันธ์เอนทิตีขั้นสูง (EER) เป็นโมเดลข้อมูลระดับสูงที่ให้ส่วนขยายจากต้นฉบับ ความสัมพันธ์ของนิติบุคคลแบบจำลอง (ER) แบบจำลอง EER รองรับการออกแบบที่มีรายละเอียดมากขึ้น การสร้างแบบจำลอง EER เกิดขึ้นเป็นโซลูชันสำหรับการสร้างแบบจำลองฐานข้อมูลที่ซับซ้อนสูง
EER ใช้สัญกรณ์ UML UML เป็นตัวย่อของ ภาษาการสร้างแบบจำลองแบบรวม- มันเป็นภาษาการสร้างแบบจำลองวัตถุประสงค์ทั่วไปที่ใช้เมื่อออกแบบระบบเชิงวัตถุ เอนทิตีจะแสดงเป็นไดอะแกรมคลาส ความสัมพันธ์จะแสดงเป็นความสัมพันธ์ระหว่างเอนทิตี แผนภาพที่แสดงด้านล่างแสดงแผนภาพ ER โดยใช้ สัญกรณ์ UML.
เหตุใดจึงต้องใช้แบบจำลอง ER
ตอนนี้คุณอาจคิดว่าเหตุใดจึงใช้การสร้างแบบจำลอง ER ในเมื่อเราสามารถทำได้ง่ายๆ สร้างฐานข้อมูล และวัตถุทั้งหมดที่ไม่มีการสร้างแบบจำลอง ER? หนึ่งในความท้าทายที่ต้องเผชิญเมื่อออกแบบฐานข้อมูลคือข้อเท็จจริงที่ว่านักออกแบบ นักพัฒนา และผู้ใช้ปลายทางมักจะดูข้อมูลและการใช้งานแตกต่างออกไป หากไม่มีการตรวจสอบสถานการณ์นี้ เราก็สามารถสร้างระบบฐานข้อมูลที่ไม่ตรงตามความต้องการของผู้ใช้ได้
เครื่องมือสื่อสารที่ผู้มีส่วนได้ส่วนเสียทั้งหมดเข้าใจ (ทั้งผู้ใช้ด้านเทคนิคและผู้ใช้ที่ไม่ใช่ด้านเทคนิค) มีความสำคัญอย่างยิ่งในการผลิตระบบฐานข้อมูลที่ตรงตามความต้องการของผู้ใช้ แบบจำลอง ER เป็นตัวอย่างของเครื่องมือดังกล่าว
ไดอะแกรม ER ยังเพิ่มประสิทธิภาพการทำงานของผู้ใช้ เนื่องจากสามารถแปลเป็นตารางเชิงสัมพันธ์ได้อย่างง่ายดาย
กรณีศึกษา: แผนภาพ ER สำหรับไลบรารีวิดีโอ "MyFlix"
ตอนนี้มาทำงานกับระบบฐานข้อมูล MyFlix Video Library เพื่อช่วยให้เข้าใจแนวคิดของไดอะแกรม ER กัน เราจะใช้ฐานข้อมูลนี้สำหรับการลงมือปฏิบัติทั้งหมดในช่วงที่เหลือของบทช่วยสอนนี้
MyFlix เป็นองค์กรธุรกิจที่ให้เช่าภาพยนตร์แก่สมาชิก MyFlix ได้จัดเก็บบันทึกด้วยตนเอง ขณะนี้ฝ่ายบริหารต้องการย้ายไปที่ DBMS
มาดูขั้นตอนในการพัฒนาแผนภาพ EER สำหรับฐานข้อมูลนี้กัน
- ระบุเอนทิตีและกำหนดความสัมพันธ์ที่มีอยู่ระหว่างกัน
- แต่ละเอนทิตี คุณลักษณะ และความสัมพันธ์ควรมีชื่อที่เหมาะสมซึ่งบุคคลที่ไม่ใช่ด้านเทคนิคสามารถเข้าใจได้ง่ายเช่นกัน
- ความสัมพันธ์ไม่ควรเชื่อมโยงถึงกันโดยตรง ความสัมพันธ์ควรเชื่อมโยงเอนทิตี
- แต่ละแอตทริบิวต์ในเอนทิตีที่กำหนดควรมีชื่อไม่ซ้ำกัน
เอนทิตีในไลบรารี “MyFlix”
หน่วยงานที่จะรวมอยู่ในของเรา แผนภาพเอ้อ มี;
- สมาชิก – เอนทิตีนี้จะเก็บข้อมูลสมาชิก
- Movies – หน่วยงานนี้จะเก็บข้อมูลเกี่ยวกับภาพยนตร์
- หมวดหมู่ – เอนทิตีนี้จะเก็บข้อมูลที่จัดภาพยนตร์ไว้ในหมวดหมู่ต่างๆ เช่น “ละคร” “แอ็คชั่น” และ “มหากาพย์” เป็นต้น
- เช่าภาพยนตร์ – นิติบุคคลนี้จะเก็บข้อมูลเกี่ยวกับภาพยนตร์ที่เช่าให้กับสมาชิก
- การชำระเงิน – นิติบุคคลนี้จะเก็บข้อมูลเกี่ยวกับการชำระเงินที่ทำโดยสมาชิก
การกำหนดความสัมพันธ์ระหว่างเอนทิตี
สมาชิกและภาพยนตร์
สิ่งต่อไปนี้ถือเป็นจริงเกี่ยวกับปฏิสัมพันธ์ระหว่างสองหน่วยงาน
- สมาชิกสามารถเช่าภาพยนตร์ได้มากกว่าหนึ่งเรื่องในช่วงเวลาที่กำหนด
- สมาชิกสามารถเช่าภาพยนตร์ได้มากกว่าหนึ่งคนในช่วงเวลาที่กำหนด
จากสถานการณ์ข้างต้น เราจะเห็นได้ว่าธรรมชาติของความสัมพันธ์เป็นแบบกลุ่มต่อกลุ่ม ฐานข้อมูลเชิงสัมพันธ์ไม่สนับสนุนความสัมพันธ์แบบกลุ่มต่อกลุ่ม เราจำเป็นต้องแนะนำเอนทิตีทางแยก- นี่คือบทบาทที่เอนทิตี MovieRentals เล่น มีความสัมพันธ์แบบหนึ่งต่อกลุ่มกับตารางสมาชิกและความสัมพันธ์แบบหนึ่งต่อกลุ่มกับตารางภาพยนตร์
เอนทิตีภาพยนตร์และหมวดหมู่
สิ่งต่อไปนี้ถือเป็นจริงเกี่ยวกับภาพยนตร์และหมวดหมู่
- ภาพยนตร์สามารถอยู่ในหมวดหมู่เดียวเท่านั้น แต่หมวดหมู่สามารถมีภาพยนตร์ได้มากกว่าหนึ่งเรื่อง
เราสามารถสรุปได้ว่าธรรมชาติของความสัมพันธ์ระหว่างหมวดหมู่และตารางภาพยนตร์เป็นแบบหนึ่งต่อกลุ่ม
สมาชิกและหน่วยงานการชำระเงิน
สิ่งต่อไปนี้ถือเป็นจริงเกี่ยวกับสมาชิกและการชำระเงิน
- สมาชิกสามารถมีได้เพียงบัญชีเดียว แต่สามารถชำระเงินได้หลายรายการ
เราสามารถสรุปได้ว่าธรรมชาติของความสัมพันธ์ระหว่างสมาชิกและหน่วยงานการชำระเงินเป็นแบบหนึ่งต่อกลุ่ม
ตอนนี้เรามาสร้างโมเดล EER โดยใช้ MySQL ม้านั่งทำงานของช่างเครื่อง
ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร MySQL โต๊ะทำงาน คลิก – ปุ่ม “+”
Double คลิกที่ปุ่มเพิ่มไดอะแกรมเพื่อเปิดพื้นที่ทำงานสำหรับไดอะแกรม ER
หน้าต่างต่อไปนี้จะปรากฏขึ้น
มาดูวัตถุสองชิ้นที่เราจะใช้งานกัน
วัตถุตารางช่วยให้เราสามารถสร้างเอนทิตีและกำหนดคุณลักษณะที่เกี่ยวข้องกับเอนทิตีนั้นได้
ปุ่มความสัมพันธ์ของสถานที่ช่วยให้เราสามารถกำหนดความสัมพันธ์ระหว่างเอนทิตีได้
เหตุการณ์ สมาชิก' เอนทิตี้จะมีคุณลักษณะต่อไปนี้
- หมายเลขสมาชิก
- ชื่อเต็ม
- เพศ
- วันเดือนปีเกิด
- ที่อยู่ทางกายภาพ
- รหัสไปรษณีย์
ตอนนี้เรามาสร้างตารางสมาชิกกันดีกว่า
1.ลากวัตถุตารางจากแผงเครื่องมือ
2.วางลงในพื้นที่ทำงาน เอนทิตีชื่อตารางที่ 1 ปรากฏขึ้น
3.Double คลิกที่มัน หน้าต่างคุณสมบัติที่แสดงด้านล่างจะปรากฏขึ้น
ต่อไป ,
- เปลี่ยนตารางที่ 1 เป็นสมาชิก
- แก้ไขค่าเริ่มต้น idtable1 เป็น member_number
- คลิกที่บรรทัดถัดไปเพื่อเพิ่มฟิลด์ถัดไป
- ทำเช่นเดียวกันกับแอตทริบิวต์ทั้งหมดที่ระบุในเอนทิตีของสมาชิก
หน้าต่างคุณสมบัติของคุณควรมีลักษณะเช่นนี้
ทำซ้ำขั้นตอนข้างต้นสำหรับเอนทิตีที่ระบุทั้งหมด
ตอนนี้พื้นที่ทำงานไดอะแกรมของคุณควรมีลักษณะเหมือนกับที่แสดงด้านล่าง
มาสร้างความสัมพันธ์ระหว่างสมาชิกและการเช่าภาพยนตร์
- เลือกความสัมพันธ์ของสถานที่โดยใช้คอลัมน์ที่มีอยู่ด้วย
- คลิกที่ member_number ในตารางสมาชิก
- คลิกที่ Reference_number ในตาราง MovieRentals
ทำซ้ำขั้นตอนข้างต้นสำหรับความสัมพันธ์อื่นๆ ไดอะแกรม ER ของคุณควรมีลักษณะเช่นนี้ –
สรุป
- ER แบบเต็มคือแผนผังเอนทิตีและความสัมพันธ์ พวกเขามีบทบาทสำคัญในการ การออกแบบฐานข้อมูล กระบวนการ. พวกเขาทำหน้าที่เป็นเครื่องมือสื่อสารที่ไม่ใช่ด้านเทคนิคสำหรับบุคคลที่มีความรู้ด้านเทคนิคและไม่ใช่ด้านเทคนิค
- เอนทิตีเป็นตัวแทนของสิ่งต่าง ๆ ในโลกแห่งความเป็นจริง พวกเขาสามารถเป็นแนวความคิดเป็นใบสั่งขายหรือทางกายภาพเช่นลูกค้า
- เอนทิตีทั้งหมดจะต้องได้รับชื่อที่ไม่ซ้ำ
- โมเดล ER ยังช่วยให้ผู้ออกแบบฐานข้อมูลสามารถระบุและกำหนดความสัมพันธ์ที่มีอยู่ระหว่างเอนทิตีได้
แบบจำลอง ER ทั้งหมดแนบมาด้านล่าง คุณสามารถนำเข้ามันมาได้เลย MySQL ม้านั่งทำงานของช่างเครื่อง
คลิกที่นี่เพื่อดาวน์โหลดแบบจำลอง ER