Mô hình ER là gì?
Mô hình mối quan hệ thực thể (ER Modeling) là một cách tiếp cận đồ họa để thiết kế cơ sở dữ liệu. Đây là một mô hình dữ liệu mức cao xác định các phần tử dữ liệu và mối quan hệ của chúng cho một hệ thống phần mềm cụ thể. Mô hình ER được sử dụng để biểu diễn các đối tượng trong thế giới thực.
Một Entity là một điều hay đối tượng trong thế giới thực đó là phân biệt với môi trường xung quanh. Ví dụ, mỗi nhân viên của một tổ chức là một thực thể riêng biệt. Sau đây là một số đặc điểm chính của các thực thể.
- Một thực thể có một tập hợp các thuộc tính.
- Thuộc tính thực thể có thể có giá trị.
Trong hướng dẫn này, bạn sẽ học-
- Mô hình mối quan hệ thực thể nâng cao (EER)
- Tại sao sử dụng Mô hình ER?
- Các thực thể trong thư viện "MyFlix"
- Xác định mối quan hệ giữa các thực thể
Hãy xem xét ví dụ đầu tiên của chúng tôi một lần nữa. Nhân viên của một tổ chức là một thực thể. Nếu "Peter" là một lập trình viên ( nhân viên ) tại Microsoft, anh ta có thể có các thuộc tính ( thuộc tính) như tên, tuổi, cân nặng, chiều cao, v.v. Rõ ràng là những thuộc tính đó có giá trị liên quan đến anh ta.
Mỗi thuộc tính có thể có Giá trị . Trong hầu hết các trường hợp, thuộc tính đơn có một giá trị. Nhưng cũng có thể các thuộc tính có nhiều giá trị . Ví dụ: tuổi của Peter có một giá trị duy nhất. Nhưng thuộc tính "số điện thoại" của anh ấy có thể có nhiều giá trị.
Các thực thể có thể có mối quan hệ với nhau. Hãy xem xét ví dụ đơn giản nhất. Giả sử rằng mỗi Lập trình viên Microsoft được cấp một Máy tính. Rõ ràng là Máy tính của Peter cũng là một thực thể. Peter đang sử dụng máy tính đó và Peter cũng sử dụng máy tính đó. Nói cách khác, có một mối quan hệ tương hỗ giữa Peter và máy tính của anh ta.
Trong Mô hình hóa mối quan hệ thực thể, chúng tôi lập mô hình các thực thể, các thuộc tính của chúng và mối quan hệ giữa các thực thể.
Mô hình mối quan hệ thực thể nâng cao (EER)
Mô hình Mối quan hệ Thực thể Nâng cao (EER) là một mô hình dữ liệu cấp cao cung cấp các phần mở rộng cho mô hình Mối quan hệ Thực thể (ER) ban đầu . EER Models hỗ trợ thiết kế chi tiết hơn. Mô hình hóa EER nổi lên như một giải pháp để mô hình hóa các cơ sở dữ liệu có độ phức tạp cao.
EER sử dụng ký hiệu UML. UML là từ viết tắt của Unified Modeling Language; nó là một ngôn ngữ mô hình hóa có mục đích chung được sử dụng khi thiết kế các hệ thống hướng đối tượng. Các thực thể được biểu diễn dưới dạng biểu đồ lớp. Các mối quan hệ được biểu diễn dưới dạng liên kết giữa các thực thể. Sơ đồ dưới đây minh họa một sơ đồ ER sử dụng ký hiệu UML.
Tại sao sử dụng Mô hình ER?
Bây giờ bạn có thể nghĩ tại sao lại sử dụng mô hình ER khi chúng ta có thể đơn giản tạo cơ sở dữ liệu và tất cả các đối tượng của nó mà không cần lập mô hình ER? Một trong những thách thức phải đối mặt khi thiết kế cơ sở dữ liệu là thực tế là các nhà thiết kế, nhà phát triển và người dùng cuối có xu hướng xem dữ liệu và cách sử dụng dữ liệu khác nhau. Nếu tình trạng này không được kiểm soát, chúng ta có thể tạo ra một hệ thống cơ sở dữ liệu không đáp ứng được yêu cầu của người dùng.
Các công cụ giao tiếp được hiểu bởi tất cả các bên liên quan (người sử dụng kỹ thuật cũng như không chuyên về kỹ thuật) là rất quan trọng trong việc tạo ra các hệ thống cơ sở dữ liệu đáp ứng yêu cầu của người sử dụng. Mô hình ER là ví dụ về các công cụ như vậy.
Biểu đồ ER cũng làm tăng năng suất của người dùng vì chúng có thể dễ dàng được dịch thành các bảng quan hệ.
Nghiên cứu điển hình: Sơ đồ ER cho Thư viện Video "MyFlix"
Bây giờ chúng ta hãy làm việc với hệ thống cơ sở dữ liệu Thư viện Video MyFlix để giúp hiểu khái niệm về sơ đồ ER. Chúng tôi sẽ sử dụng cơ sở dữ liệu này cho tất cả các thao tác thực hành trong phần còn lại của hướng dẫn này
MyFlix là một tổ chức kinh doanh cho thuê phim cho các thành viên của mình. MyFlix đã lưu trữ hồ sơ của mình theo cách thủ công. Ban quản lý hiện muốn chuyển sang DBMS
Hãy xem các bước để phát triển biểu đồ EER cho cơ sở dữ liệu này-
- Xác định các thực thể và xác định các mối quan hệ tồn tại giữa chúng.
- Mỗi thực thể, thuộc tính và mối quan hệ, nên có tên thích hợp để những người không am hiểu về kỹ thuật cũng có thể dễ dàng hiểu được.
- Các mối quan hệ không nên được kết nối trực tiếp với nhau. Các mối quan hệ nên kết nối các thực thể.
- Mỗi thuộc tính trong một thực thể nhất định phải có một tên duy nhất.
Các thực thể trong thư viện "MyFlix"
Các thực thể được đưa vào sơ đồ ER của chúng tôi là;
- Thành viên - thực thể này sẽ nắm giữ thông tin thành viên.
- Phim - thực thể này sẽ giữ thông tin liên quan đến phim
- Danh mục - thực thể này sẽ giữ thông tin xếp phim vào các danh mục khác nhau như "Chính kịch", "Hành động" và "Sử thi", v.v.
- Phim cho thuê - thực thể này sẽ giữ thông tin về phim cho các thành viên thuê.
- Thanh toán - thực thể này sẽ nắm giữ thông tin về các khoản thanh toán của các thành viên.
Xác định mối quan hệ giữa các thực thể
Thành viên và phim
Những điều sau đây đúng về sự tương tác giữa hai thực thể.
- Một thành viên có thể thuê nhiều phim trong một khoảng thời gian nhất định.
- Nhiều thành viên có thể thuê phim trong một khoảng thời gian nhất định.
Từ kịch bản trên, chúng ta có thể thấy rằng bản chất của mối quan hệ là nhiều-nhiều. Cơ sở dữ liệu quan hệ không hỗ trợ mối quan hệ nhiều-nhiều. Chúng tôi cần giới thiệu một thực thể mối nối . Đây là vai trò mà thực thể MovieRentals đóng. Nó có mối quan hệ một-nhiều với bảng thành viên và một mối quan hệ một-nhiều khác với bảng phim.
Thực thể phim và danh mục
Những điều sau đây đúng về phim và thể loại.
- Một bộ phim chỉ có thể thuộc một danh mục nhưng một danh mục có thể có nhiều phim.
Từ đó chúng ta có thể suy ra rằng bản chất của mối quan hệ giữa danh mục và bảng phim là một-nhiều.
Thành viên và tổ chức thanh toán
Những điều sau đây đúng về thành viên và thanh toán
- Một thành viên chỉ có thể có một tài khoản nhưng có thể thực hiện một số khoản thanh toán.
Từ đó chúng ta có thể suy ra rằng bản chất của mối quan hệ giữa các thành viên và các thực thể thanh toán là một-nhiều.
Bây giờ, hãy tạo mô hình EER bằng MySQL Workbench
Trong bàn làm việc MySQL, Nhấp vào - Nút "+"
Nhấp đúp vào nút Thêm sơ đồ để mở không gian làm việc cho sơ đồ ER.
Cửa sổ sau xuất hiện
Hãy xem xét hai đối tượng mà chúng ta sẽ làm việc với.
Đối tượng bảng cho phép chúng ta tạo các thực thể và xác định các thuộc tính được liên kết với thực thể cụ thể.
Nút quan hệ địa điểm cho phép chúng ta xác định mối quan hệ giữa các thực thể.
Các thành viên tổ chức sẽ có các thuộc tính sau
- Số thành viên
- Tên đầy đủ
- Giới tính
- Ngày sinh
- Địa chỉ vật lý
- địa chỉ bưu điện
Bây giờ chúng ta hãy tạo bảng thành viên
1. kéo đối tượng bảng từ bảng công cụ
2. Cắt nó trong khu vực không gian làm việc. Một thực thể có tên là bảng 1 xuất hiện
3. nhấp đúp vào nó. Cửa sổ thuộc tính hiển thị bên dưới xuất hiện
Kế tiếp ,
- Thay đổi bảng 1 thành Thành viên
- Chỉnh sửa idtable1 mặc định thành member_number
- Bấm vào dòng tiếp theo để thêm trường tiếp theo
- Làm tương tự cho tất cả các thuộc tính được xác định trong thực thể của thành viên.
Cửa sổ thuộc tính của bạn bây giờ sẽ trông như thế này.
Lặp lại các bước trên cho tất cả các thực thể đã xác định.
Không gian làm việc sơ đồ của bạn bây giờ sẽ giống như hình bên dưới.
Cho phép tạo mối quan hệ giữa Thành viên và Phim cho thuê
- Chọn cả mối quan hệ địa điểm bằng cách sử dụng các cột hiện có
- Nhấp vào Member_number trong bảng Thành viên
- Nhấp vào reference_number trong bảng MovieRentals
Lặp lại các bước trên cho các mối quan hệ khác. Sơ đồ ER của bạn bây giờ sẽ giống như thế này -
Tóm lược
- Dạng đầy đủ của ER là Sơ đồ Thực thể và Mối quan hệ. Chúng đóng một vai trò rất quan trọng trong quá trình thiết kế cơ sở dữ liệu. Chúng phục vụ như một công cụ giao tiếp phi kỹ thuật cho những người kỹ thuật và phi kỹ thuật.
- Thực thể đại diện cho những thứ trong thế giới thực; chúng có thể được khái niệm như một đơn đặt hàng bán hàng hoặc vật chất chẳng hạn như một khách hàng.
- Tất cả các thực thể phải được đặt tên duy nhất.
- Mô hình ER cũng cho phép các nhà thiết kế cơ sở dữ liệu xác định và xác định các mối quan hệ tồn tại giữa các thực thể.
Toàn bộ Mô hình ER được đính kèm bên dưới. Bạn chỉ cần nhập nó vào MySQL Workbench
Nhấp vào đây để tải xuống mô hình ER