Tải bản đầy đủ (.pdf) (5 trang)

Bai tap ERD môn cơ sở dữ liệu

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (346.09 KB, 5 trang )

CHƯƠNG 2: MÔ HÌNH THỰC THỂ - MỐI QUAN HỆ
Ví dụ 1: Hoạt động của công ty X được mô tả như sau:
- Công ty được tổ chức thành các đơn vị. Mỗi đơn vị có một tên duy nhất, một
nhân viên cụ thể quản lý đơn vị. Việc nhân viên quản lý đơn vị được ghi lại
bằng ngày nhân viên đó bắt đầu quản lý. Một đơn vị có thể có nhiều địa
điểm. Mỗi địa điểm được quản lý thông qua Mã địa điểm, Địa chỉ, số điện
thoại.
- Mỗi đơn vị kiểm soát một số dự án. Một dự án có một tên duy nhất, một mã
số duy nhất và một địa điểm.
- Với mỗi nhân viên chúng ta lưu giữ lại Mã nhân viên, Họ tên, địa chỉ, lương,
giới tính, ngày sinh. Một nhân viên chỉ làm việc cho một đơn vị nhưng có thể
làm việc trên nhiều dự án do nhiều đơn vị kiểm soát. Chúng ta lưu giữ lại số
giờ làm việc của mỗi nhân viên trên một dự án. Mỗi nhân viên có thể có một
người giám sát trực tiếp, người đó cũng là một nhân viên.
Yêu cầu: Thiết kế sơ đồ thực thể - mối quan hệ (ERD) cho CSDL quản lý công ty X
được mô tả như trên.
Ví dụ 2: Vẽ sơ đồ thực thể - mối quan hệ dựa trên những mô tả thông tin về một
siêu thị nhỏ ở thị trấn Yuppie Valley (Yuppie Valley Culinary Boutique: YVCB)
như sau:
- Một trong những khía cạnh quan trọng trong việc kinh doanh của YVCB là
quan hệ với những nhà cung cấp hàng. Đối với mỗi nhà cung cấp hàng, siêu
thị cần lưu giữ các thông tin như mã nhà cung cấp, tên nhà cung cấp, địa chỉ,
số điện thoại. Mỗi nhà cung cấp có thể cung cấp cho siêu thị nhiều mặt hàng
(được quản lý thông qua: mã hàng, tên hàng, mô tả mặt hàng) và mỗi mặt
hàng có thể được cung cấp bởi nhiều nhà cung cấp khác nhau, giá mặt hàng
đối với mỗi nhà cung cấp có thể khác nhau.
- YVCB được tổ chức thành các gian hàng. Mỗi gian hàng được quản lý thông
qua mã gian hàng, tên gian hàng, số điện thoại. Mỗi gian hàng bán một số
mặt hàng nào đó và mỗi mặt hàng chỉ được bán trong một gian hàng nhất
định. Mỗi gian hàng có một số nhân viên và một người quản lý (cũng là nhân
viên của gian hàng). Mỗi nhân viên chỉ làm việc tại một gian hàng và được


quản lý thông qua mã nhân viên, họ tên, ngày sinh, ngày vào làm, lương.
Nếu nhân viên làm công tác quản lý thì được lưu giữ thêm các thông tin về
ngày bắt đầu quản lý, hệ số phụ cấp chức vụ. Mỗi người quản lý chỉ quản lý
một gian hàng.
- Một khía cạnh quan trọng khác của YVCB là quản lý khách hàng và đơn đặt
hàng của khách hàng. Khách hàng được quản lý thông qua mã khách hàng,
họ tên khách hàng, địa chỉ và số tài khoản. Khách hàng đặt hàng thông qua
đơn đặt hàng (bao gồm: số hiệu đơn đặt hàng, ngày đặt hàng, và mô tả đơn
hàng) và có thể đặt nhiều đơn hàng. Mỗi đơn hàng bao gồm một số mặt hàng
nào đó với một số lượng cụ thể nào đó.
Ví dụ 3: Để đáp ứng nhu cầu tin học hóa trong hoạt động, thư viện trường đại học
X tiến hành khảo sát hoạt động quản lý việc trả/mượn sách để xây dựng CSDL quản
lý việc trả/mượn sách của độc giả. Thư viện tổ chức việc cho mượn sách như sau:
- Mỗi quyển sách được đánh một mã sách để phân biệt với các quyển sách
khác (giả sử nếu một tác phẩm có nhiều bản giống nhau hoặc có nhiều tập thì
cũng xem là có mã sách khác nhau), mỗi mã sách xác định các thông tin khác
như: tên sách, tên tác giả, nhà xuất bản, năm xuất bản, mô tả quyển sách.
- Mỗi quyển sách được lưu giữ trong một tủ sách. Các tủ sách được đánh mã
để phân biệt. Mỗi mã tủ xác định tên tủ sách, vị trí tủ sách.
- Mỗi quyển sách thuộc một loại sách nào đó. Mỗi loại sách được phân biệt
bởi mã loại sách. Mỗi mã loại sách xác định tên loại sách, mô tả loại sách.
- Chỉ có sinh viên của trường mới được phép mượn sách. Thông tin cần quản
lý đối với mỗi sinh viên bao gồm: mã sinh viên, họ tên, ngày sinh, địa chỉ,
giới tính.
- Để có thể mượn sách ở thư viện, sinh viên phải đăng ký với thủ thư của thư
viện để trở thành độc giả của thư viện. Mỗi độc giả được thư viện cấp cho
một thẻ thư viện, trong đó có ghi rõ mã độc giả, ngày cấp, ngày hết hạn.
- Cứ mỗi lượt mượn sách, độc giả phải đăng ký các quyển sách cần mượn vào
một phiếu mượn, mỗi phiếu mượn có một mã số phiếu mượn duy nhất. Mỗi
phiếu mượn xác định các thông tin như: ngày mượn sách, các quyển sách đã

mượn. Các quyển sách trong cùng một phiếu mượn không nhất thiết phải trả
trong cùng một lần. Mỗi quyển sách có thể thuộc nhiều phiếu mượn khác
nhau (tất nhiên là tại các thời điểm khác nhau).
Yêu cầu: Anh/Chị hãy xây dựng sơ đồ thực thể - mối quan hệ để làm cơ sở xây
dựng CSDL quản lý việc trả/mượn sách ở thư viện của trường đại học X.
Ví dụ 4: Quản lý tồn kho
Để quản lý vấn đề tồn kho của các mặt hàng trong các kho hàng của một công
ty A cần có các thông tin và các quy tắc quản lý sau:
- Mỗi kho được cho mã số duy nhất (MSKHO) dùng để phân biệt các kho, một
tên kho và một loại hàng mà kho đó chứa. Mỗi kho có một địa điểm nhất
định được xác định bởi mã số địa điểm (MDD), địa chỉ của địa điểm, có một
nhân viên phụ trách địa điểm và số điện thoại để liên lạc với kho tại địa điểm
trên. Một kho chỉ chứa một loại hàng, một địa điểm có thể có nhiều kho.
- Mỗi mặt hàng được cho một mã số duy nhất (MSMH) để phân biệt các mặt
hàng, một tên hàng. Một mặt hàng được xếp vào một loại hàng, và một loại
hàng có nhiều mặt hàng. Mỗi loại hàng có một mã số duy nhất để phân biệt
(MSLH), và có một tên loại hàng.
- Một mặt hàng có thể chứa ở nhiều kho, một kho có thể chứa nhiều mặt hàng
cùng loại.
- Số lượng tồn kho của mỗi mặt hàng được xác định bởi phiếu nhập và phiếu
xuất hàng.
- Mỗi phiếu nhập hàng có số phiếu duy nhất (SOPN) để phân biệt, và có ngày
lập phiếu, phiếu nhập cho biết nhập tại kho nào, và có chữ ký của nhân viên
phụ trách địa điểm của kho đó. Trong chi tiết của phiếu nhập cho biết số
lượng nhập cho các mặt hàng của một phiếu nhập.
- Mỗi phiếu xuất hàng có số phiếu duy nhất (SOPX) để phân biệt, và có ngày
lập phiếu, phiếu xuất cho biết xuất tại kho nào, chữ ký của nhân viên đi nhận
hàng tại kho đó. Trong chi tiết của phiếu xuất cho biết số lượng xuất cho các
mặt hàng của một phiếu xuất.
- Thông tin của nhân viên phụ trách địa điểm tại các kho và nhân viên đi nhận

hàng từ các kho bao gồm: Mã số nhân viên (MSNV) để phân biệt giữa các
nhân viên, có họ tên, phái, năm sinh, địa chỉ thường trú, số điện thoại của
nhân viên.
Yêu cầu: Xây dựng ERD) cho toàn hệ thống trên.
Ví dụ 5: Trường Đại học KTH có nhu cầu xây dựng hệ thống quản lý việc đăng ký
môn học của sinh viên. Cho biết một số thông tin liên quan đến hoạt động của hệ
thống như sau:
- Mỗi sinh viên vào trường được cấp một mã sinh viên duy nhất và được quản
lý với các thông tin bao gồm họ tên, ngày sinh, nơi sinh, giới tính, địa chỉ, số
điện thoại.
- Căn cứ ngành học mà sinh viên thi đậu vào mà sinh viên đó sẽ thuộc sự quản
lý của một khoa nào đó (được quản lý thông qua mã khoa, tên khoa, địa chỉ,
số điện thoại). Mỗi khoa đào tạo một số ngành học khác nhau, dĩ nhiên
không tồn tại trường hợp một ngành do hai khoa khác nhau đào tạo. Mỗi một
ngành học khi được mở sẽ được gán một mã ngành học. Ngoài ra, mỗi ngành
học còn có các thông tin như tên ngành, trình độ đào tạo, loại hình đào tạo,
thời gian đào tạo.
- Mỗi ngành học bao gồm nhiều môn học và mỗi môn học có thể được học
trong nhiều ngành khác nhau và do nhiều giáo viên dạy. Giáo viên chịu sự
quản lý của khoa thông qua các thuộc tính mã giáo viên, họ tên, ngày sinh,
học hàm, học vị. Mỗi giáo viên có thể dạy một số môn học khác nhau.
- Vào đầu mỗi học kì của một năm học, sinh viên đến phòng giáo vụ đăng ký
các môn học trong học kỳ đó thông qua một phiếu đăng ký như sau:

PHIẾU ĐĂNG KÝ MÔN HỌC
Số phiếu:…
Học kì: … Năm học: … Ngày đăng ký: ….
Mã sinh viên: …… Họ tên: ……………………
Mã môn học
Tên môn học

Số tín chỉ









Tổng số tín chỉ:….

Yêu cầu: thiết kế ERD của hệ thống được mô tả như trên.
Ví dụ 6: Vẽ ERD cho CSDL của một diễn đàn, biết rằng:
- Muốn tham gia vào diễn đàn thì phải là thành viên của diễn đàn, khi là thành
viên thì có tên và mật khẩu đăng nhập.
- Trong một diễn đàn chia ra các nhóm chủ đề, chẳng hạn: thể thao, giải trí, âm
nhạc, CNTT, … Mỗi nhóm chủ đề được quản lý thông qua mã chủ đề, tên
chủ đề, mô tả chủ đề.
- Trong một nhóm chủ đề có thể chứa các nhóm chủ đề khác và theo phân cấp
cha con (ví dụ: chủ đề CNTT sẽ bao gồm các chủ đề con: CSDL, mạng, lập
trình, …)
- Các bài viết được gửi lên diễn đàn từ các thành viên, mỗi một bài viết thì
phải nằm trong một chủ đề nhất định. Mỗi bài viết được đánh mã để thuận
tiện trong quá trình quản lý. Mỗi mã bài viết sẽ xác định tiêu đề bài viết,
ngày đăng tải, cũng như nội dung bài viết.
- Một bài viết khi gửi lên diễn đàn thì có thể làm một bài thảo luận cho một
bài viết đã tồn tại trước đó.
- Thông qua diễn đàn các thành viên có thể gửi tin nhắn cho nhau, mỗi tin
nhắn do một thành viên nào đó soạn ra ở một thời điểm nào đó và có thể gửi

cho nhiều người. Các tin nhắn được quản lý thông qua mã tin nhắn, nôi dung
tin nhắn, và ngày gửi tin. Các thành viên khác nhau có thể nhận được tin
nhắn vào những thời điểm khác nhau.

×