TIN QUẢN LÝ 2
NGUYỄN MẠNH HÙNG
Hà Nội 11/2007
Tin quản lý 2 - 1
2
Một số siểm lưu ý
l Tài liệu
l Giáo trình Tin quản lý 2 (tài liệu của trường)
l Hướng dẫn sử dụng Access 7.0 – NXB Trẻ
l Access 2000 – Ngọc Anh Thư Express
l Phần mềm sử dụng: MS Access 2000
l Đánh giá môn học
l Kiểm tra giữa kỳ (02 bài)
l Bài thi cuối kỳ
l Bài tập lớn: Thiết kế CSDL cho 1 bài toán quản lý cụ
thể với các yêu cầu thực tế
l Thi thực hành: Thiết kế dữ liệu (3đ) + Thực hành
trên Access (7đ)
Tin quản lý 2 - 1
3
Lịch trình
l Tuần 1 + 2: Một số khái niệm thiết kế cơ sở dữ liệu
l Tuần 3: Thiết kế và xây dựng CSDL bằng công cụ MS Access
(DATABASE + Table)
l Tuần 4 ÷ 7: Xây dựng câu truy vấn (QUERY)
l
Tuần 4 + 5
: Simple Query
l
Tuần 6
: Total Query
l
Tuần 7
: Parameter + Crosstab + Action Query
l Tuần 8: Thiết kế Report
l Tuần 9: Report (tiếp) + Ôn tập
Bài 1
THIẾT KẾ CƠ SỞ DỮ LIỆU
MỘT SỐ KHÁI NIỆM
QUY TRÌNH THIẾT KẾ CƠ SỞ DỮ LIỆU
MỘT SỐ MÔ HÌNH CẦN XÂY DỰNG
Tin quản lý 2 - 1
5
ĐẶT VẤN ĐỀ
l Nếu cứ dùng Excel thì sao?
l Dư thừa dữ liệu
l Mâu thuẫn dữ liệu khi thêm, xoá, cập nhật
l Tốn nhiều thời gian khi thao tác
l Việc hỗ trợ tìm kiếm thông tin không mạnh
l Giải pháp
l Tách bảng ® Dữ liệu sẽ không trùng lặp
l Việc kết nối dữ liệu giữa các bảng với nhau
l Sử dụng công cụ quản trị CSDL tốt hơn:
MS ACCESS
Tin quản lý 2 - 1
6
MS ACCESS
l Là hệ quản trị CSDL dùng cho mô hình CSDL có
quy mô nhỏ
l Lưu trữ thông tin dưới dạng bảng,
l
Hỗ trợ việc kết nối
giữa các bảng,
l Khả năng khai thác CSDL mạnh,
l Cung cấp một số chức năng quản trị dữ liệu.
l Dễ dàng tạo ra các ứng dụng mà không cần quá
nhiều kiến thức, kỹ năng lập trình.
Tin quản lý 2 - 1
7
MỘT SỐ KHÁI NIỆM CƠ BẢN
l CSDL : là
tập hợp các bảng
dữ liệu có
quan hệ với
nhau
, cùng phục vụ nhu cầu của nhiều người sử
dụng theo một mục đích nào đó.
l Ví dụ
l CSDL Quản lý học tập
l Mục đích: theo dõi thông tin sinh viên và quản lý điểm
l Người dùng: Sinh viên, người quản lý,
l CSDL Quản lý bán hàng
l Mục đích: Theo dõi nghiệp vụ bán hàng, xuất, nhập
hàng hóa
l Người dùng: Nhân viên, trưởng phòng, giám đốc,
Tin quản lý 2 - 1
8
MỘT SỐ KHÁI NIỆM CƠ BẢN (tiếp)
l Bảng dữ liệu
l Bao gồm
l Một số các trường (cột, thuộc tính), là tên chung dùng
để ghi nhận tính chất của đối tượng quản lý
l Các bản ghi (dòng) là tập hợp các giá trị tương ứng
với các trường, dùng để mô tả 1 đối tượng cần quản lý
l Dùng để chứa số liệu cơ sở, ghi nhận thông tin về
các nghiệp vụ phát sinh và biến động xung quanh
đối tượng quản lý.
l Ví dụ: Bảng Sinhviên gồm Mã SV, Tên SV,
Tin quản lý 2 - 1
9
MỘT SỐ KHÁI NIỆM CƠ BẢN (tiếp)
l Dữ liệu và Thông tin
l Dữ liệu
l Giá trị ghi nhận các sự kiện được lưu trữ trong CSDL
để phục vụ 1 yêu cầu quản lý
l VD: Sự kiện bán hàng cần lưu số hoá đơn, ngày mua,
người mua, tên mặt hàng, số lượng,
l Thông tin
l Dữ liệu đã được xử lý theo 1 cách nào đó để tăng
hàm lượng tri thức phục vụ cho yêu cầu của NSD
l VD: Báo cáo doanh thu, danh sách mặt hàng bán
chạy nhất, điểm trung bình của mỗi sinh viên,
Tin quản lý 2 - 1
10
VÍ DỤ
l
Số các cột là ít nhất có thể
và
tương đối ổn định
,
số các dòng là không hạn chế.
7 Thái Hà, ĐĐa, HNLê Kim ChiKH03
5 Tràng Tiền, HK, HNĐỗ Thu DungKH02
2 Giải Phóng, HBT, HNVũ Ngọc TháiKH01
DIACHIHOTENMAKH
Bảng KhachHang
Tên
thuộc tính
Bản ghi
Giá trị
Tin quản lý 2 - 1
11
CÁC BƯỚC THIẾT KẾ MỘT CSDL
• Xác định mục tiêu quản lý và khai thác CSDL
của bạn ð
‚ Xác định các bảng dữ liệu cần thiết ð
ƒ Xác định các thuộc tính, khóa cho các bảng ð
„ Xác định các mối quan hệ giữa các bảng ð
… Chuẩn hóa lại thiết kế ð
Tin quản lý 2 - 1
12
1. Xác định mục tiêu quản lý
l Nhằm xác định các bảng cần thiết và các thuộc
tính mô tả một cách đầy đủ về đối tượng cần
quản lý.
l Thảo luận cùng người dùng CSDL về các nhu
cầu khai thác thông tin,…
l Thu thập các chứng từ, sổ sách, phác thảo các
báo cáo, biểu mẫu phục vụ mục tiêu quản lý
l Phân biệt đầu vào và đầu ra của ứng dụng tương
lai (dựa vào việc thảo luận hoặc các mẫu giấy tờ
thu được, )
Tin quản lý 2 - 1
13
2. Xác định các bảng trong CSDL
l Mỗi bảng thường chứa tập hợp các thông tin xung
quanh đối tượng nào đó tham gia vào quá trình
quản lý
l Ví dụ: khách hàng, nhà cung cấp, hàng hóa, sinh
viên, giáo viên, môn học, …
l Thông tin trong các sổ sách, chứng từ ghi nhận
nghiệp vụ phát sinh của các đối tượng quản lý là
cơ sở để hình thành các bảng.
l Ví dụ: hoá đơn mua/bán, chứng từ,
l Mỗi dòng chứa thông tin đầy đủ về một đối tượng
cụ thể mà bạn cần lưu trữ.
Tin quản lý 2 - 1
14
l Trường (tên cột) là các thuộc tính chung dùng
để mô tả đối tượng (bảng)
l Thông tin về từng đối tượng cụ thể là
giá trị
l Trường (tên cột) không thay đổi,
giá trị
của mỗi
trường
có thể thay đổi
.
l Một số phương pháp xác định trường.
l Xác định trường khóa chính.
3.1. Xác định trường (cột, thuộc tính)
Tin quản lý 2 - 1
15
Một số phương pháp xác định trường
l Mỗi trường có quan hệ trực tiếp đến đối tượng mà
nó mô tả; trường mô tả chỉ thuộc về 1 bảng
l Giá trị sơ đẳng: không thể tách/ chia nhỏ… ð
l Giá trị đơn: không phải là một tập giá trị… ð
l Không có những trường tính toán dựa trên các
trường khác
l Chứa đầy đủ các thông tin cần thiết mô tả đối
tượng đó
Tin quản lý 2 - 1
16
Giá trị sơ đẳng
l Không thể tách thành các thành phần nhỏ hơn
mà vẫn có nghĩa.
l Việc tách 1 trường thành nhiều trường tuỳ thuộc
vào mục đích sử dụng của người sử dụng
7 Thái Hà, Đđa, HNLê Kim ChiKH03
5 Tràng Tiền, HK, HNĐỗ Thu DungKH02
2 Giải Phóng, HBT, HNVũ Ngọc TháiKH01
DIACHIHOTENMAKH
Bảng KhachHang
Tin quản lý 2 - 1
17
Giá trị đơn (1 giá trị)
l Không phải là một dãy hay một tập các giá trị.
l Xử lý khi trường là 1 dãy giá trị
l Mỗi giá trị biến thành một cột?
l Mỗi giá trị xuất hiện trên một dòng?
Đức, Hàn, AnhLê Kim ChiKH03
Đỗ Thu DungKH02
Anh, Pháp, NhậtVũ Ngọc TháiKH01
NGOAINGUHOTENMAKH
Bảng KhachHang
Tin quản lý 2 - 1
18
3.2 Xác định trường khoá chính
l Phụ thuộc hàm A à B
l Ví dụ: MASV à HOTEN, NGAYSINH
l Ý nghĩa
l Với mỗi sinh viên sẽ có 1 mã SV duy nhất
l Mỗi mã sinh viên cho biết họ tên, ngày sinh của SV
có mã SV có
19/08/1975Hà Thái SơnA00124
12/11/1975Trương Bách DiệpA00123
NGAYSINHHOTENMASV
Bảng SINHVIEN
Tin quản lý 2 - 1
19
Trường khóa chính
l Là tập nhỏ nhất các trường mà
xác định duy
nhất một dòng trong
bảng.
l Một số lưu ý khi chọn khóa chính:
l Không nhận giá trị trống (không nhập hoặc không
có giá trị).
l Không nhận giá trị trùng nhau.
l Giá trị trường khóa ngắn gọn.
l Kích thước khóa nhỏ vừa đủ để xác định mọi giá
trị các đối tượng trong bảng.
Tin quản lý 2 - 1
20
4. Xác định mối quan hệ giữa các bảng
l Quan hệ giữa các bảng (thực thể) chỉ ra
sự ràng
buộc về mặt dữ liệu
của các bảng (thực thể) đó.
l Ví dụ
l Hóa đơn bán hàng do nhân viên nào lập
l Quan hệ giữa HOADON & NHANVIEN
l Hóa đơn bán hàng đó là của Khách hàng nào
l Có bao nhiêu Khách hàng cùng sở hữu 1 Hóa đơn
l Quan hệ giữa HOADON & KHACHHANG
l Sinh viên tham gia học các Môn học
l Có bao nhiêu Sinh viên cùng học 1 Môn học
l …
Tin quản lý 2 - 1
21
Phân loại quan hệ giữa các bảng
l Quan hệ 1-n ð
l Quan hệ n-n ð
l Quan hệ 1-1 ð
KhachHang HoaDon
n
1
Co
Don Vi Nhanvien
n
1
Bao gồm
NhanVien CongTrinh
n
n
Tham gia
SinhVien Monhoc
n
n
Học
Phongban
Truongphong
1
1
Có
Lop
Loptruong
1
1
Là
Tin quản lý 2 - 1
22
Quan hệ 1-n
HD05
HD04
HD03
HD02
HD01
SOHD
4/12/03KH04
3/12/03KH01Hà ĐứcKH04
2/12/03KH01Trần HàKH03
1/12/03KH02Mai AnhKH02
1/12/03KH01Lê NaKH01
NGAYMAKHHOTENMAKH
HoaDonKhachHang
Tin quản lý 2 - 1
23
Quan hệ n-n
CongTrinh
NV03CT02
NV01CT02Hà ĐứcNV04
NV04CT01Trần HàNV03
NV02CT01Mai AnhNV02
NV01CT01Lê NaNV01
MANVMACTHOTENMANV
NhanVien
Tin quản lý 2 - 1
24
Quan hệ 1-1
HS03
HS02
HS01
MAHS
Hà ĐứcKH04
Nhân viênKH03Trần HàKH03
Quản lýKH02Mai AnhKH02
Kế toánKH01Lê NaKH01
CHUCVUMANVHOTENMAKH
HoSoCongtacNhanVien
Tin quản lý 2 - 1
25
Thuộc tính của quan hệ
l Là thuộc tính dùng để mô tả tính chất cho 1 mối
quan hệ nào đó
l Thuộc tính này thường thuộc về quan hệ n – n
l Ví dụ
l Một Sinh viên học nhiều Môn học, nhưng mỗi Môn
học đó sẽ có điểm khác nhau.
l Một Hóa đơn gồm nhiều Mặt hàng, mỗi Mặt hàng
được mua với số lượng khác nhau.
Æ Điểm, Số lượng là thuộc tính mô tả cho quan hệ
Học và Bao gồm.