Xây dựng sơ đồ Quan hệ – Thực thể và thiết kế Cơ sở dữ liệu – https://laodongdongnai.vn

Sơ đồ Quan hệ – Thực thể ( Entity Relation Diagram – ERD )

Sơ đồ Quan hệ – Thực thể là sơ đồ màn biểu diễn toàn bộ những thực thể mà tổ chức triển khai cần quản trị và những mối quan hệ giữa chúng .
Sau khi đã điều tra và nghiên cứu những thực thể và mối quan hệ giữa những thực thể, tất cả chúng ta hoàn toàn có thể kiến thiết xây dựng Sơ đồ Quan hệ – Thực thể ERD. Các bước kiến thiết xây dựng Sơ đồ ERD :

1. Xác định những thực thể dựa trên vai trò, ý nghĩa của thực thể so với mạng lưới hệ thống :
– Đặt tên cho thực thể. Nên chọn danh từ để đặt tên cho thực thể, ví dụ như “ Sinh viên ”, “ Môn học ”, … Mỗi thực thể có một tên duy nhất trong hàng loạt mạng lưới hệ thống .
– Xác định những thuộc tính của thực thể. Cần xác lập vừa đủ ( không thừa, không thiếu ) những thuộc tính tùy theo nhu yếu quản trị của mỗi tổ chức triển khai. Thêm thuộc tính để tăng tính miêu tả, hoặc để có thêm tài liệu phân biệt những thành viên ; bỏ bớt thuộc tính nếu chúng dư thừa hoặc không tương quan đến vai trò, ý nghĩa của thực thể trong mạng lưới hệ thống. Tên những thuộc tính thường là danh từ. Cần xác lập đơn cử và sử dụng thêm những ký hiệu để màn biểu diễn :
+ Thuộc tính định danh ( Khóa ) : “ # Tên thuộc tính định danh ”
+ Thuộc tính diễn đạt : “ Tên thuộc tính diễn đạt ”
– Lập bảng những thuộc tính của thực thể .
2. Xác định quan hệ giữa những thực thể, gồm có mối quan hệ, bậc quan hệ, những kiểu quan hệ .
Lưu ý : Trong quy trình xác lập những mối quan hệ, cần xác lập những quan hệ tiêu biểu vượt trội mà tổ chức triển khai cần quản trị. Tên của những quan hệ thường được miêu tả bằng động từ hoặc tính từ để chỉ những hành vi, sự kiện link những bộc lộ trong những thực thể có quan hệ nhau, ví dụ như “ Có ”, “ Thi ”, “ Học ”, …
3. Vẽ sơ đồ Quan hệ – Thực thể .

Ví dụ. Cho bản mô tả một hoạt động quản lý của Bộ Giáo dục và Đào tạo như sau:

Bộ Giáo dục và Đào tạo tổ chức triển khai khảo sát những trường Đại học. Mỗi trường Đại học có nhiều Khoa, mỗi Khoa có nhiều Bộ môn, mỗi Bộ môn có nhiều Giảng viên .
Để nâng cao chất lượng giảng dạy, những trường pháp luật mỗi giảng viên chỉ giảng một môn học, mỗi môn học chỉ do một giảng viên đảm nhiệm. Tại những trường, mỗi Khoa đều quản trị nhiều lớp, mỗi lớp có nhiều Sinh viên. Trong suốt những năm học tại trường, mỗi sinh viên phải học nhiều môn học, mỗi Môn học có nhiều Sinh viên tham gia .

Hãy vẽ sơ đồ Quan hệ – Thực thể ( ERD ) để làm cơ sở phong cách thiết kế sơ đồ cấu trúc tài liệu nhằm mục đích quản trị trường ĐH .
Để kiến thiết xây dựng sơ đồ Quan hệ – Thực thể, tất cả chúng ta triển khai những bước sau đây :
Bước 1 : Xác định những thực thể : Trường, Khoa, Bộ môn, Giảng viên, Môn học, Lớp, Sinh viên. Xác định những thuộc tính của những thực thể và lập bảng sau :
Bảng 2. Danh sách những thực thể và những thuộc tính

Thực thể Thuộc tính
Trường #Mã trường, Tên trường
Khoa #Mã khoa, Tên khoa, …
Bộ môn #Mã bộ môn, Tên bộ môn, …
Giảng viên #Mã giảng viên, Họ và tên GV, Ngày sinh, Địa chỉ, …
Môn học #Mã môn học, Tên môn học, Số ĐVHT,…
Lớp #Mã lớp, Tên lớp
Sinh viên #Mã sinh viên, Họ và tên SV, Ngày sinh, Địa chỉ, …

Bước 2 : Dựa vào nội dung của báo cáo giải trình khảo sát để xác lập được những mối quan hệ giữa những thực thể :

  • Mối quan hệ giữa Trường và Khoa là quan hệ bậc 2, kiểu 1-N.
  • Mối quan hệ giữa Khoa và Bộ môn là quan hệ bậc 2, kiểu 1-N.
  • – …
  • Riêng mối quan hệ giữa Sinh viên và Môn học là quan hệ bậc 2, kiểu N-N (với những thuộc tính riêng là “Lần thi”, “Điểm thi”).

Bước 3 : Vẽ sơ đồ Quan hệ – Thực thể như sau :

Sự tương quan giữa DFD và ERD

Cả hai sơ đồ đều dùng để quy mô hóa cho một HTTT. DFD được dùng để chỉ ra những giải quyết và xử lý trên tài liệu, ERD dùng để diễn đạt nội dung của tài liệu. Trong những sơ đồ này, nội dung giải quyết và xử lý và nội dung tài liệu phải tương thích nhau, đó là :

  • Nội dung dữ liệu từ tất cả các dòng dữ liệu cập nhật cho tất cả các kho dữ liệu của hệ thống phải đủ để diễn tả dữ liệu (thuộc tính của thực thể) trong sơ đồ Quan hệ – Thực thể.
  • Nội dung dữ liệu được lấy ra từ tất cả các kho dữ liệu phải nằm trong sơ đồ Quan hệ – Thực thể.

Các ràng buộc này làm tăng tính đồng nhất trong mạng lưới hệ thống và bỏ lỡ những loại tài liệu thuộc về thông số kỹ thuật của mạng lưới hệ thống ( những loại tài liệu miêu tả cho những tùy biến làm tăng tính tiện lợi của mạng lưới hệ thống, như tài liệu quy ước hiển thị sắc tố, hình dạng của những khuôn mẫu nhập / xuất tài liệu, những quy ước báo lỗi trong chương trình … ) .

Thiết kế cơ sở tài liệu từ sơ đồ Quan hệ – Thực thể

Khái niệm

Trong khoanh vùng phạm vi nội dung môn học, tất cả chúng ta sẽ điều tra và nghiên cứu quy mô CSDL quan hệ. Việc phong cách thiết kế CSDL trong trường hợp này thực ra là xác lập những tệp tài liệu có tương quan đến nhau để ship hàng cho công tác làm việc quản trị của một HTTT quản trị. Xác định mỗi tệp tài liệu là tìm xem trong mỗi tệp có những trường tài liệu nào, trường nào là trường khóa chính, trường diễn đạt, trường quan hệ … Việc xác lập những tệp tài liệu này cần xuất phát từ sơ đồ Quan hệ – Thực thể ERD ( với những thực thể đã được chuẩn hoá ) .

Trường dữ liệu (Field): Mỗi trường dữ liệu lưu trữ thông tin tương ứng với một thuộc tính của thực thể.

Bản ghi (Record): Tập hợp bộ giá trị của các trường tương ứng với một cá thể của thực thể.

Bảng dữ liệu (Table) hay chính là tệp dữ liệu: Toàn bộ các bản ghi lưu trữ thông tinccho một thực thể tạo ra một bảng mà mỗi dòng là một bản ghi và mỗi cột là một trường dữ liệu. Bảng dữ liệu tương ứng với bảng thực thể.

Trong phần này, tất cả chúng ta không đi sâu điều tra và nghiên cứu kim chỉ nan về cách tạo lập những tệp tài liệu mà tất cả chúng ta chỉ điều tra và nghiên cứu thủ tục thiết kế xây dựng những tệp tài liệu nhằm mục đích bảo vệ tính chuẩn hóa theo nghĩa thông tin không thiếu, không thừa, không được trùng lặp …
Bảng 3. Sự khác nhau về tên gọi những thành phần tương ứng giữa thực thể và tệp tài liệu

Thực thể Tệp dữ liệu Ký hiệu/ Ví dụ
Thuộc tính (Attribute) Trường (Field)
Tên các thuộc tính có thể viết bằng tiếng Việt, có dấu Tên các trường viết bằng tiếng Việt, không dấu hoặc bằng tiếng Anh Thuộc tính “Họ và tên” Trường dữ liệu “Hovaten”
Thuộc tính định danh (1a) Trường khóa chính (1b) Dấu # và gạch chân dưới tên (1a) #Mã hàng hóa (1b) #Mahanghoa
Thuộc tính mô tả (2a) Trường mô tả (2b) (2a) Tên hàng hóa (2b) Tenhanghoa
Thuộc tính quan hệ (3a) Trường quan hệ (3b) Gạch chân dưới tên (3a) Mã vợ chồng (3b) Mavochong

Lưu ý : Khi nói đến thực thể, ta có những thuộc tính, nhưng khi nói đến những tệp tài liệu, ta có những trường tương ứng. Khi viết tên những thực thể và thuộc tính của nó, ta hoàn toàn có thể viết bằng tiếng Việt có dấu nhưng khi viết tên tệp tài liệu và những trường tương ứng ta chỉ được viết tiếng Việt không có dấu hoặc dùng tiếng Anh .

Phương pháp thiết lập CSDL từ sơ đồ ERD

Kiểu quan hệ 1-1 của quan hệ bậc 1: tạo một tệp dữ liệu duy nhất, xác định trường khóa chính, trường mô tả và trường quan hệ. Nếu cá thể X có quan hệ với cá thể Y thì giá trị trường quan hệ của X được xác định duy nhất bằng giá trị của trường khóa chính của Y (Các giá trị của trường quan hệ không trùng nhau và có thể là rỗng).

Ví dụ. Xét thực thể “ Cán bộ ” với quan hệ “ Là vợ / chồng ”. Ta tạo một tệp “ Canbo ” với trường khóa chính là # Macanbo, những trường miêu tả là Hovaten, Ngaysinh, Diachi, … ; trường quan hệ Mavochong .
Bảng 4. Tệp dữ liệu Cán bộ và quan hệ Vợ / Chồng

#Macanbo Hovaten Ngaysinh Diachi Mavochong
A001 Nguyễn Văn A 10/01/1980 B005
B005 Lê Thị B 20/5/1982 A001

Nhìn vào bảng trên, ta biết được Nguyễn Văn A có vợ là Lê Thị B, Lê Thị B có chồng là Nguyễn Văn A .

Kiểu quan hệ 1-N của quan hệ bậc 1: tạo một tệp dữ liệu duy nhất, xác định trường khóa chính, trường mô tả và trường quan hệ. Giá trị của trường quan hệ được xác định không duy nhất từ giá trị của trường khóa chính.

Ví dụ. Xét thực thể “ Nhân viên ” với quan hệ “ Phụ trách ”. Ta tạo một tệp “ Nhanvien ” với trường khóa chính là # Manhanvien, những trường miêu tả là Hovaten, Ngaysinh, Diachi, … ; trường quan hệ Maphutrach .
Bảng 5. Tệp dữ liệu Nhân viên và quan hệ Phụ trách

#Manhanvien Hovaten Ngaysinh Diachi Maphutrach
A001 Nguyễn Văn An
B002 Lê Thanh Bình H004
H004 Trần Thu Hà A001
H012 Vũ Ngọc Hoa H004

Nhìn vào bảng trên, ta biết được Nguyễn Văn An là người đảm nhiệm của Trần Thu Hà, còn Trần thu Hà lại là người đảm nhiệm của Lê Thanh Bình và Vũ Ngọc Hoa .

Kiểu quan hệ N-N của quan hệ bậc 1: tạo hai tệp dữ liệu, một tệp mô tả thực thể, một tệp mô tả quan hệ.

  • Đối với tệp thực thể: xác định trường khóa chính, trường mô tả.
  • Đối với tệp quan hệ: xác định trường quan hệ, trường mô tả. Giá trị của trường quan hệ được xác định không duy nhất từ giá trị của trường khóa chính của tệp thực thể.

Ví dụ : Xét thực thể “ Sản phẩm ” với quan hệ “ Được cấu thành từ ”. Ta tạo hai tệp :

  • Tệp “Sanpham” với trường khóa chính là #MaSP, các trường mô tả là TenSP, Donvitinh, Dongia.
  • Tệp “Quanhe” với các trường quan hệ là MaSP, MaSPNL; trường mô tả là Soluong.

Bảng 6. Các tệp Sanpham và tệp Quanhe

#MaSP TenSP Donvitinh Dongia
Lm02 Lúa mạch
Bm01 Bột mỳ
Ba05 Bánh mỳ
MaSP MaSPNL Soluong
Bm01 Lm02 5
Ba05 Bm01 1

– Kiểu quan hệ 1-1 của quan hệ bậc 2: tạo hai tệp dữ liệu mô tả hai thực thể. Xác định trường khóa chính, trường mô tả cho mỗi tệp. Trường quan hệ có thể thuộc tệp này hoặc tệp kia. Cả hai trường hợp thông tin thu được đều như

Ví dụ. Xét hai thực thể là “ Trưởng phòng ” và “ Phòng công tác làm việc ” với quan hệ “ Lãnh đạo ”. Ta tạo hai tệp theo hai trường hợp sau :
– Trường hợp 1 :
+ Tệp “ Truongphong ” với trường khóa chính là # MaTP, những trường diễn đạt như HovatenTP …
+ Tệp “ Phongcongtac ” với trường khóa chính là # MaphongCT, những trường diễn đạt như TenphongCT …, trường quan hệ là MaTP
Bảng 7. a. Các tệp tài liệu Truongphong và Phongcongtac ( Trường hợp 1 )

Trường hợp 2 :
Bảng 7. b. Các tệp tài liệu Truongphong và Phongcongtac ( Trường hợp 2 )

+ Tệp “ Truongphong ” với trường khóa chính là # MaTP, những trường diễn đạt như HovatenTP …, trường quan hệ là MaphongCT
+ Tệp “ Phongcongtac ” với trường khóa chính là # MaphongCT, những trường miêu tả như TenphongCT …
Trong cả hai trường hợp, ta đều có ông Đỗ Văn An là Trưởng phòng Kế toán, Bà Vũ Ngọc Thu là Trưởng phòng Tổ chức CB, ông Lê Xuân Hà là Trưởng phòng Kế hoạch – ĐT .

Kiểu quan hệ 1 – N của quan hệ bậc 2: ta tạo hai tệp dữ liệu mô tả hai thực thể. Xác định trường khóa chính, trường mô tả cho mỗi tệp. Trường quan hệ bắt buộc phải thuộc tệp tương ứng với thực thể đầu “Nhiều”, giá trị của nó được xác định từ các giá trị của trường khóa chính của tệp tương ứng với thực thể đầu “Một”.

Ví dụ. Xét hai thực thể là “ Lớp học ” và “ Sinh viên ” với quan hệ “ Có / Thuộc ”. Ta tạo hai tệp tài liệu sau :

  • Tệp “Lophoc” với trường khóa chính là #MaLH, các trường mô tả như TenLH…
  • Tệp “Sinhvien” với trường khóa chính là #MaSV, các trường mô tả như HovatenSV…, trường quan hệ là MaLH.

Bảng 8. Các tệp tài liệu Lophoc và Sinhvien

Kiểu quan hệ N – N của quan hệ bậc 2: ta tạo ba tệp dữ liệu, hai tệp mô tả hai thực thể, tệp thứ ba mô tả quan hệ giữa hai thực thể đó.

  • Đối với hai tệp tương ứng với hai thực thể: xác định trường khóa chính, trường mô tả.
  • Đối với tệp thứ ba – tệp quan hệ: Hai trường quan hệ được xác định từ giá trị của hai trường khóa chính tương ứng với hai tệp thực thể. Tổ hợp của cả hai trường quan hệ này sẽ là trường khóa chính của tệp quan hệ. Sau đó xác định các trường mô tả của tệp quan hệ này.

Ví dụ. Xét hai thực thể “ Sinh viên ”, “ Môn học ” và quan hệ “ Thi ”. Quan hệ này là quan hệ N-N với những thuộc tính riêng là lần thi và điểm thi. Từ đó, ta tạo 3 tệp tài liệu :

  • Tệp Sinhvien với trường khóa chính là #MaSV, các trường mô tả là Hovaten, …
  • Tệp Monhoc với trường khóa chính là #MaMH, các trường mô tả là TenMH, …
  • Tệp SVMH với trường khóa chính là tổ hợp của 2 trường quan hệ: MaSV, MaMH; các trường mô tả là Lanthi,

Bảng 9. a. Các tệp tài liệu Sinhvien và Monhoc

Bảng 9. b Tệp dữ liệu SVMH

Qua 3 bảng, tất cả chúng ta biết được SV Lê Thu Hà thi Toán hạng sang lần đầu được 8 điểm, SV Trần Đình Chiến thi Lịch sử Đảng lần 2 được 6 điểm …
Khóa chính của tệp SVMH được tổng hợp từ MaSV và MaMH .

Chú ý:

– Những vị trí những dấu “ … ” là những trường miêu tả. Tùy theo nhu yếu của công tác làm việc quản trị, tất cả chúng ta sẽ cần những trường diễn đạt đơn cử .
Ví dụ về quản trị trường ĐH, nếu cần thống kê số lượng GS, PGS, Tiến sỹ, Thạc sỹ đang giảng dạy tại trường thì trong tệp “ Giangvien ” cần bổ trợ trường miêu tả là Hocham, Hocvi ( Học hàm, Học vị ) ; cần thống kê và phân loại hiệu quả học tập của sinh viên thì trong tệp “ Monhoc ” cần bổ trợ trường miêu tả là SoDVHT ( Số đơn vị chức năng học trình ), trong tệp SVMH cần bổ trợ thêm trường diễn đạt là DiemTP ( Điểm thành phần ) …

– Đối với các trường hợp có 2 tệp trùng nhau (trường khóa chính trùng nhau) thì ta phải tổ hợp chúng lại thành một tệp bao gồm tất cả các trường mô tả của cả 2 tệp.