TRƯỜNG ĐẠI HỌC KINH DOANH VÀ CÔNG NGHỆ HÀ NỘIKHOA CÔNG NGHỆ THÔNG TIN Thiết kế và cài đặt Cơ sở dữ liệu Chương 2 1 Thiết kế các Bảng và xác định các mối quan hệ 2.. Mỗi trường trong bản
Trang 1TRƯỜNG ĐẠI HỌC KINH DOANH VÀ CÔNG NGHỆ HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
Thiết kế và cài đặt Cơ sở dữ liệu
Chương 2
1
Thiết kế các Bảng và xác định các mối quan hệ
2 Cài đặt các Bảng lên đĩa thông qua Access
2 Cài đặt các Bảng lên đĩa thông qua Access
2
3
3 Thiết lập các mối quan hệ giữa các Bảng
1
Trang 22.1 Phân tích CSDL
2.1.1 Đặt vấn đề
Trong một xí nghiệp, hàng ngày người ta xuất vật tư theo phiếu xuất kho:
Cùng một người nhận vật tư, nhưng ở phiếu khác thì ta phải ghi lặp lại tên và địa chỉ của họ
Nếu có thêm vật tư M3, M4, v.v thì cấu trúc trên bị thiếu cột, nghĩa
là cấu trúc trên không phù hợp nữa, mặt khác rất lãng phí để ghi tên trường mã vật tư
Bởi vậy phải biết phân tích CSDL để đưa ra được bảng hợp lý
Ta thấy cấu trúc bảng trên có những điều không hợp lý như sau:
2
Trang 3Để phân tích tốt phải hiểu được CSDL là gì ?
Đó là một môn học riêng (dành cho chuyên ngành) Ở đây ta chỉ dùng trực giác để xây dựng một cách tương đối, đáp ứng nhu cầu ứng dụng ngay của Access mà thôi
2.1.1 Đặt vấn đề
3
Trang 4 Giả sử bạn cần quản lý một cửa hàng bán hàng hóa trong thành phố Bạn hãy phân tích và thiết kế một CSDL nhằm thực hiện các yêu cầu quản lý thực tế Đó là quản lý các nhân viên trong cửa hàng, các sản phẩm, các khách hàng, các hoá đơn
Theo trực giác chúng ta cần gì?
NHÂN VIÊN: Mỗi một nhân viên cần có thông tin gì?
SẢN PHẨM: Mỗi sản phẩm cần có gì để quản lí
KHÁCH HÀNG: Mỗi khách hàng cần có thông tin gì?
HÓA ĐƠN: Mỗi một hóa đơn cần có những gì?
CHI TIẾT HÓA ĐƠN: Một chi tiết hóa đơn cho biết gì?
2.1.1 Giải quyết vấn đề
4
Trang 5Mỗi trường trong bảng phải mô tả một loại thông tin duy nhất
2
Mỗi bản ghi có một số trường tối thiểu, nhờ nó mà không có các
bản ghi trùng nhau (số trường tối thiểu đó gọi là khoá cơ bản)
3
Các trường trong bảng phải đầy đủ và liên quan đến khoá cơ
bản hay còn gọi là liên quan đến chủ thể của bảng (điều này
được gọi là phụ thuộc hàm)
Có thể thay đổi được một trường bất kỳ (trừ các khoá cơ bản)
mà không ảnh hưởng đến mọi trường khác
4
2.1.2 Một số các quy tắc về xây dựng CSDL
5
Trang 61 Mỗi trường trong bảng phải mô tả một loại thông tin duy nhất.
Giả sử ta có một phiếu
xuất kho như sau:
Ta thấy mã vật tư 1 và vật tư
2 đều mô tả một loại thông tin là mã vật tư vậy tại sao ta không để chung là mã vật tư
Trang 72 M i b n ghi có m t s trột số trường tối thiểu, nhờ nó mà không có các bản ghi ố trường tối thiểu, nhờ nó mà không có các bản ghi ường tối thiểu, nhờ nó mà không có các bản ghi ng t i thi u, nh nó mà không có các b n ghi ố trường tối thiểu, nhờ nó mà không có các bản ghi ểu, nhờ nó mà không có các bản ghi ờng tối thiểu, nhờ nó mà không có các bản ghi
trùng nhau (s trố trường tối thiểu, nhờ nó mà không có các bản ghi ường tối thiểu, nhờ nó mà không có các bản ghi ng t i thi u đó g i là khoá c b n)ố trường tối thiểu, nhờ nó mà không có các bản ghi ểu, nhờ nó mà không có các bản ghi ọi là khoá cơ bản) ơ bản)
Để xây dựng bảng Nhân Viên ta xây dựng gồm:
Ta thấy có hai bản ghi
thông tin giống hệt
nhau vậy làm cách nào
để phân biệt
Hãy thêm mã nhân viên
sẽ giúp chúng ta khác
phục điều này
Họ tên Giớ
i tính
Ngày sinh Địa chỉ
Lê Anh Nu 12/2/197
Hà Thi
Tú Nu 13/4/197 4 Hà Nam
Lê Anh Nu 12/2/197
M
ã N V
Hoten Giớ
i tính
Ngày sinh
Địa chỉ
01 Lê Anh Nu 12/2/197
02 Hà Thị
Tú Nu 13/4/197 4 Hà Nam
03 Lê Anh Nu 12/2/197
7
Hà nội
Trang 83 Các trường tối thiểu, nhờ nó mà không có các bản ghi ng trong b ng ph i đ y đ và liên quan đ n khoá c b n hay còn ầy đủ và liên quan đến khoá cơ bản hay còn ủ và liên quan đến khoá cơ bản hay còn ến khoá cơ bản hay còn ơ bản)
g i là liên quan đ n ch th c a b ng (đi u này đọi là khoá cơ bản) ến khoá cơ bản hay còn ủ và liên quan đến khoá cơ bản hay còn ểu, nhờ nó mà không có các bản ghi ủ và liên quan đến khoá cơ bản hay còn ều này được gọi là phụ thuộc hàm) ược gọi là phụ thuộc hàm)c g i là ph thu c hàm)ọi là khoá cơ bản) ụ thuộc hàm) ột số trường tối thiểu, nhờ nó mà không có các bản ghi
Ta thấy Họ tên, giới tính, ngày sinh, địa chỉ liên quan đến Mã
NV giúp cho thông tin nhân viên rõ ràng
Mã
NV Họ tên Giới tính Ngày sinh Địa chỉ
02 Hà Thị Tú Nu 13/4/1974 Hà Nam
Ta gọi Mã NV là khóa cơ bản
Ta gọi Mã NV là khóa cơ bản
Không thể thêm vào một trường chẳng hạn Số lượng vào bảng này
vì chẳng liên quan gì đến Mã NV cả
Trang 94 Có th thay đ i đểu, nhờ nó mà không có các bản ghi ổi được một trường bất kỳ (trừ các khoá cơ bản) mà không ược gọi là phụ thuộc hàm)c m t trột số trường tối thiểu, nhờ nó mà không có các bản ghi ường tối thiểu, nhờ nó mà không có các bản ghi ng b t kỳ (tr các khoá c b n) mà không ất kỳ (trừ các khoá cơ bản) mà không ừ các khoá cơ bản) mà không ơ bản)
nh hưởng đến mọi trường khácng đ n m i trến khoá cơ bản hay còn ọi là khoá cơ bản) ường tối thiểu, nhờ nó mà không có các bản ghi ng khác
Ở bảng Phiếu Kho bên
cạnh nếu dòng 1 ta vô tình
gõ sai tên người nhận là Lê
Anh Quân thì:
- Địa chi Lê Anh Quân chỉ
có là 13 Hàng Bài
- không có Lê Anh Quân nào
ở 35 Tràng Thi
- Thực ra Địa Chỉ là phụ thuộc vào Người Nhận
Do đó ta nên tách bảng
Phiếu Kho
thành 2 bảng:
Phiếu và Địa Chỉ như bên:
Bảng Phiếu
Bảng Địa Chỉ
Trang 10Bảng 1: Danh mục Khách Hàng (KHACHHANG): Danh mục Khách Hàng (KHACHHANG):
(SANPHAM):
Bảng 3:
Để rõ hơn về vấn đề này chúng ta phải hiểu Bảng là gì? Hãy hình dung bài toán CSDL vừa phân tích gồm các bảng
2.2 Cài đặt dữ liệu lên các bảng trong Access
10
Trang 11Bảng 4: Hóa đơn (HOADON): Hóa đơn (HOADON):
Bảng 5:
Bảng 5: Chi tiết hóa đơn (CTHD):
Một cơ sở dữ liệu Access bao gồm tập hợp các bảng dữ liệu có quan hệ chặt chẽ, phù hợp để phục vụ lưu trữ dữ liệu cho một ứng dụng quản lý
2.2 Cài đặt dữ liệu lên các bảng trong Access
11
Trang 122.3 Thiết kế các bảng và xác định mối quan hệ
Dựa vào số liệu thống kê trên ta xây dựng Bảng
Tìm hiểu cấu trúc của một bảng và cách tạo một bảng trong Access
12