30/09/2018, 16:56
Giúp chọn thiết kế sơ đồ ER cho cơ sở dữ liệu?
Đang vẽ sơ đồ ER cho cơ sở dữ liệu đặt phòng khách sạn
.
Chỗ đặt phòng vẽ có 2 hướng, theo mình thì sẽ chọn cái đầu tiên nhưng còn thắc mắc ngữ nghĩa
giữa thực thể:Phòng
và Phiếu Đặt Phòng có quan hệ Có
. Không biết quan hệ có đúng không, hay Phiếu Đặt Phòng chỉ xuất hiện khi có khách hàng
đặt phòng và không được quan hệ với Phòng
.
Bài liên quan
Có kiểu vẽ này à? Nhìn như mixed của ERD và activity diagram ý nhỉ.
Đây là sơ đồ thực thể kết hợp(Entity Relationship Diagram - ERD)
en.wikipedia.org
Entity–relationship model
An entity–relationship model (ER model for short) describes interrelated things of interest in a specific domain of knowledge. A basic ER model is composed of entity types (which classify the things of interest) and specifies relationships that can exist between instances of those entity types. In software engineering, an ER model is commonly formed to represent things that a business needs to remember in order to perform business processes. Consequently, the ER model becomes an abstract data mo...
Sửa lại chút thôi, quan hệ thì nên sửa thế này.
Thông thường khi đặt hàng:
-> Chốt: 1 Khách Hàng sở hữu nhiều (N) Phiếu Đặt Phòng -> Quan hệ (1, N)
-> Chốt: 1 Phiếu Đặt Phòng phải có 1 Phòng -> Quan hệ (1, 1)
Cảm ơn bạn nhé. Lâu rồi chỉ nhớ mỗi style này gọi là ERD
Mấy cái kia không nhớ mấy
Trong mô hình ERD , thực thể nó phải tồn tại độc lập,
Phiếu Đặt Phòng được sinh ra khi có người đặt phòng, vì vậy nó thể hiển mối quan hệ giữ phòng với Khách Hàng, không phải là một thực thể trong ERD
Một Phòng có thể có nhiều khách hàng đặt, Khách hàng có thể đặt nhiều phóng -> mối quan hệ là (n,n)
T cũng nghĩ nếu phiếu đặt phòng không đúng về mặt ngữ nghĩa. Nhưng mà mình đang thắc mắc không biết nếu làm theo cái thứ 2 thì lúc chuyển qua csdl sẽ tạo ra bảng KH _PHG làm sao vừa lưu đc cung lúc mã phòng và số lượng phòng.(n-n tạo bảng mới)
Ai có làm phân mềm dạng đặt phòng gợi ý cách lưu trữ csdl vs
khi chuyển qua mô hình vật lý thi sẽ có table KH_PHG vói cái field là: MAKH,MAPHG, thời gian đặt, sô lượng đặt,vậy là đáp ứng được rồi.
Lưu ý là nếu môt lần khách đặt phòng sẽ phát sinh mã mới thì chỉ cần cặp key (MAKH,MAPHG) để xác đình 1 record duy nhất là đủ, cón nếu việc quản lý khách hàng là cố định thì cần “thời gian đặt” làm key nữa
tìm tham khảo trong đây : http://www.databaseanswers.org/data_models/ (Hotels and Accomodation) có thể có ích
Cảm ơn @nguyenhuuca . Trang trên có nhiều mẫu ghê
Cho em hỏi là cái hình ERD vẽ bằng tool tên gì ạ?