Bước 2: Xác định các bảng dữ liệu cần thiết - Chia CSDL thành các chủ đề riêng biệt, mỗi chủ đề sẽ được tổ chức trong một bảng riêng, các bảng duy trì mối quan hệ với nhau thông qua khoá
Trang 1Môn học:
TIN HỌC CƠ BẢN 2
Số đơn vị học trình: 3
Trang 2Hệ quản trị cơ sở dữ liệu
Microsoft Access
Trang 3 Chương 1:
Tổng quan về hệ quản trị
cơ sở dữ liệu Access.
Trang 4I Hệ quản trị cơ sở dữ liệu Microsoft
Access.
1 Khái niệm về Microsoft Access:
- Là một ứng dụng nằm trong bộ Microsoft Office.
- Là hệ quản trị CSDL quan hệ, cho phép lưu trữ, xử lý,
kết xuất DL
2 Cơ sở dữ liệu (CSDL) là gì?
- Là tập hợp các thông tin, được sắp xếp theo những
nguyên tắc nhất định nào đấy, cho phép người sử dụng
có thể làm việc với chúng.
Ví dụ: CSDL quản lý SV, CSDL quản lý nhân sự …
3 Hệ quản trị CSDL:
Trang 52 CSDL trong Access là gì ?
- Hệ chương trình của Access được hiểu là một tổ hợp bao gồm cả chương trình và dữ liệu Để ngắn gọn nhiều khi ta gọi là chương trình hay CSDL thay cho thuật ngữ hệ chương trình
- Trong Access, toàn bộ chương trình và dữ liệu được chứa trong một tệp duy nhất có đuôi *.mdb
VD: quanlySinhVien.mdb
quanlyNhansu.mdb
Trang 66 Môi trường làm việc của Acces
6.1 Khởi động chương trình:
Cách 1 Sử dụng menu Start
Start – Programs - (Microsoft
Access) - Microsoft
Office-Microsoft Access.
Trang 7 Cách 2: Kích chọn biểu tượng Access nếu nó có mặt trên màn hình nền:
Microsoft Access
Trang 84.3 Cửa sổ làm việc của chương trình:
Thanh thực đơn
(Menu Bar)
Thanh công cụ (Toolbars)
Thanh trạng thái (Status Bar)
Trang 96.2 Thoát khỏi chương trình
Trang 107 Tạo một cơ sở dữ liệu mới
* Nên tạo một thư mục riêng để chứa CSDL
Cách 1- tạo CSDL mới, trống: File-New- Blank database…
Trang 11Tạo cơ
sở dữ liệu
Cách 2: Tạo CSDL theo mẫu có sẵn:
Trang 14II Quá trình thiết kế một cơ sở dữ liệu
Trang 15Bước 2:
Xác định các bảng dữ liệu cần thiết
- Chia CSDL thành các chủ đề riêng biệt, mỗi chủ đề sẽ được tổ chức trong một bảng riêng, các bảng duy trì mối quan hệ với nhau thông qua khoá chính.
Ví dụ: CSDL Quản lý điểm SV là một bảng như sau:
Nếu lưu trữ DL trong một bảng như trên thì giá trị tại các cột MASV, HOTEN, MONHOC, TENKHOA, sẽ bị trùng lặp kéo theo một số những bất tiện khác khi nhập và chỉnh sửa dữ liệu Bởi
Trang 16 Bước 3: Thiết lập khoá chính (Primary Key)
- Khoá chính có thể là một hay nhiều trường của bảng đáp ứng đủ các tiêu chuẩn: không trùng lặp và không được phép rỗng.
- Access dùng khoá chính để tạo liên kết giữa các bảng.
Ví dụ: Tiếp tục với ví dụ ở trang trước: khi ta tách bảng lớn ra thành các bảng con, ở mỗi bảng con ta đặt các
mã : Mã SV, Mã Khoa, Mã MH, Mã Điểm … Các mã đấy
là duy nhất đối với bản ghi trong các bảng đấy và là khoá chính của bảng.
- Khóa ngoại: là khóa chính của bảng này, nằm ở bảng khác và không phải là khóa chính trong bảng khác này.
Trang 17 Bước 4: Thiết lập quan hệ giữa các bảng:
- Quan hệ một - một (One to One): mỗi bản ghi của bảng này
có quan hệ với duy nhất một bản ghi của bảng kia và ngược lại (trong hai bảng LYLICH và DIEM đều có MaSV, hai bảng này có QH một-một bởi chỉ có một SV duy nhất mang mã số đấy trong trường)
- Quan hệ một - nhiều (One to Many): một bản ghi của bảng này có quan hệ với nhiều bản ghi của bảng kia nhưng không có chiều ngược lại (trong 2 bảng KHOA và LOP đều có trường MaKHOA, mỗi bản ghi của bảng KhOa có thể có QH với nhiều bản ghi của bảng LOP, bởi một khoa có nhiều lớp)
- Quan hệ nhiều - nhiều ( many to Many): một bản ghi của bảng này có quan hệ với nhiều bản ghi của bảng kia và
Trang 18 Bước 5: Hoàn thiện cơ sở dữ liệu
Sau khi đã hoàn tất việc thiết kế CSDL, cần nhập vào một số bản ghi để kiểm tra xem
có thiếu sót gì không Cụ thể:
- Điều chỉnh, bổ sung các trường.
có đủ và phù hợp không.
- Kiểm tra xem DL có trùng lặp không.
Trang 19Câu hỏi kiểm tra:
1 CSDL là gì?
2 Access là gì?
3 Các bước thiết kế một CSDL?
4 Đặc điểm để xác định khoá chính?
5 Các loại quan hệ trong CSDL?
6 CSDL Access bao gồm những thành phần nào ? Chức
năng của chúng?
Trang 21BÀI 1
Quản lý hồ sơ sinh viên:
• Mỗi sinh viên có một mã duy nhất Mã Sv xác định tất cả các thông tin về sinh viên đấy.
• Mỗi lớp có một mã lớp duy nhất, mỗi lớp chỉ thuộc về một khoa nào đấy.
• Mỗi khoa có một mã khoa duy nhất, mỗi mã khoa xác định các thông tin như: tên, số điện thoại, địa chỉ…
• Mỗi môn học có một mã môn học duy nhất, mỗi
Trang 22Bài 2
Quản lý phòng thi:
• Mỗi thí sinh có một số báo danh, nó xác định Ho
và tên, Ngày sinh, Quê quán, giới tính
• Mỗi số báo danh tương ứng với một số phách
• Mỗi số phách sẽ gắn liền với điểm thi của các
môn của thí sinh đấy.
Trang 23Bài 3
Quản lý điểm của sinh viên
• Mỗi Sv có một mã duy nhất, mã SV xác định các
thông tin: Họ tên, giới tính, ngày sinh, địa chỉ…
• Mỗi môn học có một mã môn học, xác định các thông tin: Tên môn học, Số đơn vị học trình, Tên giáo viên
• Mỗi mã điểm chứa các thông tin về: sinh viên,
môn học, điểm…
Trang 24BÀI 4
Quản lý thư viện:
Một thư viện tổ chức việc quản lý sách như sau:
• Mỗi cuốn sách được đánh một mã sách, mỗi mã sách xác định các thông tin khác nhau như: tên sách, tên tác giả, nhà xuất bản, năm xuất bản v.v.
• Mỗi độc giả có một thẻ mượn, trong đó ghi rõ: mã độc giả,và các thông tin khác như: họ tên, địa chỉ, quê quán, số điện thoại…
• Cứ mỗi lượt mượn sách độc giả phải viết vào một phiếu mượn, mỗi phiếu mượn có một số duy nhất, và các thông tin như: ngày mượn, tên người mượn, số thẻ, sách mượn, ngày trả….
Trang 25BÀI 5
Quản lý bán hàng:
• Mỗi khách hàng có một mã duy nhất, mỗi mã KH xác định các thông tin như: họ tên KH, số điện thoại, địa chỉ…
• Các mặt hàng được phân loại theo từng nhóm, mỗi nhóm
có mã số duy nhất, mỗi mã nhóm xác định các thông tin như: tên nhóm Trong mỗi nhóm có một số mặt hàng, mỗi mặt hàng được đánh một mã số duy nhất, xác định các thông tin về mặt hàng: tên hàng, đơn giá, đơn vị tính …
• Hàng được bán theo hoá đơn, mỗi hoá đơn có một số duy
Trang 26• Mỗi nhân viên có một mã lương khác nhau, nó xác
định các thông tin như: mã nhân viên, phòng ban quản lý, Hệ số lương, Ngày lên lương, Hệ số phụ
Trang 27BÀI 7
Quản lý lao động:
• Cùng lúc công ty có nhiều công trình, mỗi công trình có một mã số duy nhất, nó xác định các thông tin như: tên công trình, địa điểm, ngày khởi công…
• Mỗi nhân viên có một mã số NV duy nhất, xác định các thông tin: họ tên, ngày sinh, giới tính, địa chỉ…
• Mỗi công trình có thể được phân cho nhiều nhân viên và mỗi nhân viên có thể tham gia một hoặc
Trang 30Bài 3:
KHACH_HANG: MaKH, HoTen, DiaChi, SoDienThoai, SoCMND.
MAT_HANG: MaHang, MaNhomHang, TenHang, DonGiaBan, DonViTinh.
NgayLap, SoluongBan, ThanhTien.
Trang 31Bài 4:
Quản lý công trình:
• CONGTRINH: MaCT, TenCT, DiaDiem,
NgayKhoiCong, NgayKetThuc.
• NHANCONG: MaNC, HoTen, Ngaysinh,
GioiTinh, DiaChi, GiaDinh, ToChucSH.
• CHAMCONG: MaLuong, MaCT, MaNV,
Trang 33Bài 6:
• NHAN_SU: MaNV, HoTen, GioiTinh, Ngaysinh,
QueQuan, DiaChi, NgayVaoNganh
• PHONG_BAN: MaPhong, TenPhong, DiaChi,
SoDienThoai, TruongPhong.
• LUONG: MaLuong, MaNV, MaPhong, HesoLuong, NgayLenLuong, HeSoPhuCap.
Trang 35 Chương 2:
BẢNG DỮ LIỆU (TABLE)
Trang 36I Một số khái niệm cơ bản:
bản ghi) và cột (Field - trường)
- Các bảng thường có liên kết với nhau.
Trang 372 Trường (Field):
Mỗi cột dữ liệu của bảng sẽ tương ứng với một trường
dữ liệu Mỗi trường dữ liệu sẽ có một tên gọi (Field name), một dạng dữ liệu (Data type) và tập hợp các thuộc tính (Field Properties) miêu tả trường dữ liệu đó.
ví dụ: kiểu dữ liệu, trường khoá, độ lớn, định dạng,
* Tên trường không được vượt quá 64 ký tự, không chứa các ký tự đặc biệt như: (!), (.), (‘), (+), …, dấu cách, không nên dùng tiếng Việt.
3 Bản ghi (Record)
Mỗi dòng dữ liệu của bảng được gọi một bản ghi
Mỗi bảng có một con trỏ bản ghi Con trỏ bản ghi đang nằm ở bản ghi nào thì đấy là bản ghi hiện hành.
Trang 38II Tạo bảng
1 Các phương thức tạo bảng:
DesignView T thi t kT thi t kự ự ế ế ế ế b¶ng
Datasheet T¹o b¶ng d liÖu d¹ng b¶ng tÝnh T¹o b¶ng d liÖu d¹ng b¶ng tÝnh ữ ữ
TableWizard T¹o b¶ng theo mÉu cã s½n
Import Table NhËp b¶ng tõ c¸c CSDL kh¸c
Link Tabale Liªn kÕt víi b¶ng tõ c¸c CSDL kh¸c Make Table Query T¹o b¶ng b»ng truy vÊn
Trang 391: Tạo cấu trúc bảng
- Tạo tệp tin CSDL: File – New –
Blank Database
– Lưu tên CSDL bằng hộp thoại
File New Database.
2 Tạo cấu trúc bảng bằng Design View
Trang 40-Nhập tên trường vào mục Field Name
-Xác định dạng DL trong mục Data Type
Trang 41 Kiểu dữ liệu:
Memo Văn bản Dài <= 65,536 Byte
Number Số nguyên, thực Dài: 1, 2, 4 hoặc 8 Byte Date/ time Ngày tháng/ giờ Dài 8 Byte
Currency Tiền tệ Dài 8 Byte
OLE Đối tượng nhúng kết
hình ảnh, nhị phân.
1 Giga Byte AutoNumber Số tự động 4 bytes
HyperLink Siêu liên kết <=64000 ký tự
Trang 42Tập hợp cỏc thuộc tớnh của trường:
Properties(thuộcưtính) ýưnghĩa
FieldưSize Đ Đ ộưdàiưtrườngư(textưho cưnumber ộưdàiưtrườngư(textưho cưnumber ặ ặ )
Format Đ Đ ịnhưdạngưd ưliệuưtrongưtrường ịnhưdạngưd ưliệuưtrongưtrường ữ ữ
InputưMask Mặ ặ t t nạưnhậpưliệu
Caption Tênưđầyưđủưcủaưtrường
DefaultưValue Giáưtrịưngầmưđịnh
ValidationưRule Quyưtắcưnhậpưd ưliệu Quyưtắcưnhậpưd ưliệu ữ ữ
ValidationưText Vănưbảnưthôngưbáoưl i nưbảnưthôngưbáoưl i ỗ ỗ
Required No/Yesưư:ưchoưphépư(Yes)ưhoặcưkhôngư
choưphépư(No)ưđểưtrống AllowưZeroưlength Yes/No:ưưChấpưnhậnư(Yes)ưchuỗiưrỗngư
Trang 43Bước 2 : Tạo khoá chính
-Chọn trường đặt làm khoá chính
-Kích vào biểu tượng chìa khoá hoặc chọn lệnh Edit-Primary Key,
hoặc dùng Shortcut menu.
- Để huỷ
bỏ khoá
chính ta
Trang 44Bước 3: Lưu cấu trúc bảng
File – Save (hoặc biểu tượng ):
Nếu chưa chọn khoá chính:
Trang 452.2 Cách 2: Table Wizard
Database – Tables – Create by using wizard:
Hoặc New – Table Wizard
Trang 47 Cửa sổ thiết kế quan h ệ :
Trang 48 Chỉnh sửa quan hệ: Chỉnh sửa
quan hệ
Xóa quan
hệ
Trang 493 Nhập dữ liệu vào bảng
Nhập trực tiếp vào bảng
Nhập dữ liệu thông qua truy vấn
Nhập dữ liệu thông qua mẫu biểu
Có thể:
• Nhập dữ liệu sau khi đã tạo quan hệ: lúc đấy cần chú ý
nhập bảng có chứa khóa chính trước, bảng chứa khóa ngoại sau
• Nhập dữ liệu trước khi tạo quan hệ: cần chú ý để dữ liệu
trong trường khóa ngoại tuyệt đối trùng với dữ liệu của trường khóa chính
Thao tác:
C1: Nháy đúp vào tên bảng trong cửa sổ Database
C2: Chọn tên bảng trong Database – kích Open
C3: Nếu đang ở cửa sổ thiết kế (chế độ Design View) chọn
Trang 50* Một số lỗi thường gặp khi nhập dữ liệu:
1 Trùng khoá chính (Primary Key)
2 Sai kiểu dữ liệu (Field Type)
3 Không nhập dữ liệu vào trường bắt buộc (Required)
Trang 514 Khoá ngoại không tồn tại (Foregn Key)
5 Sai định dạng qui định (Input Mask)
Trang 52III Chỉnh sửa cấu trúc bảng:
* Thao tác này thực hiện trong chế độ thiết kế: (Design
Trang 531 Lựa chọn một hay nhiều trường:
Nháy chuột vào
Trang 54- Edit – Undo delete (Ctrl+Z)
- Hoặc dùng lệnh Undo trên thanh công cụ chuẩn.
- Hoặc đóng bảng lại, không ghi thay đổi.
2 Xoá và phục hồi trường
Trang 56IV Các thao tác trên bảng:
1 Hiệu chỉnh bảng ở CĐ hiển thị dữ liệu:
Trang 57- CĐ datasheet: chọn giá trị muốn lọc
- Record - Filter – Filter By Selection
Filter Excluding Selection: lọc lấy những giá trị không được chọn
- Chọn giá trị
- Record - Filter – Filter Excluding Selection
Trang 58Lọc dữ liệu nâng cao:
Tên trường
Điều kiện lọc 1 Điều kiện lọc 2
Trang 59 Chương 3:
TRUY VẤN DỮ LIỆU
(QUERRY)
Trang 60I KHÁI QUÁT VỀ TRUY VẤN
- Khi thực hiện truy vấn, DL được tập hợp vào
bảng kết quả - Dynaset – nó không được ghi vào đĩa và sẽ bị xoá ngay sau khi kết thúc (đóng) truy vấn.
Trang 612 Khả năng của truy vấn:
Đưa vào các điều kiện tìm kiếm, lựa chọn.
Đưa vào các trường để sắp xếp, và nhóm
dữ liệu.
Trang 623 Cỏc loại truy vấn:
• 1- SELECT QUERY (Truy vấn lựa chọn)
• 2- CROSSTAB QUERY (Truy vấn tham chiếu chéo)
• 3- ACTION QUERY (Truy vấn hành động)
• - Make Table Query (Truy vấn tạo bảng)
• - Append Query (Truy vấn nối)
• - Update Query (Truy vấn cập nhật)
• - Delete Query (Truy vấn xóa)…
4 Các chế độ hiển thị truy v n ấ
Menu View:
• - Design View
• - Datasheet View
Trang 63 Chọn nguồn DL.
Tạo lập quan hệ giữa các bảng, truy vấn nguồn.
Chọn các trường từ các bảng, truy vấn nguồn.
Đưa vào các điều kiện để chọn lọc bản ghi.
Chon các trường dùng để sắp xếp các mẫu tin trong Dynaset.
Xây dựng các trường mới từ các trường đã có
5 Các bước chính để tạo một truy vấn mới:
Trang 65Cửa sổ thiết kế (Design View):
- Database – New – Design View.
Ẩn/ hiện các trường
Trang 66+ Nháy đúp vào trường
muốn đưa vào truy vấn
(hoặc kéo thả tên trường
vào dòng Field)
+ Để chọn tất cả các trường
Trang 673 Sắp xếp, chèn xoá, điều chỉnh độ rộng các trường trong QBE:
Di chuyển trường
Chèn thêm trường
Xoá trường
Điều chỉnh độ rộng
Đổi tên trường
Thêm trường biểu thức:
Sort:
Criteria
Trang 684 Ghi l ại truy vấn:
File – Save hoặc biểu tượng
trên thanh công cụ
Trang 69 Chọn Queries – New –
Simple Query Wizard.
3.2 Thiết kế truy vấn bằng Simple Query Wizard:
Chọn các bảng hay truy vấn làm nguồn
Các trường của bảng hay truy vấn nguồn
Trang 70Hiển thị chi tiết toàn bộ giá trị các trường đã chọn
Tổng hợp số liệu (dùng cho các trường có DL số)
Trang 724 Phép toán và hàm trong Acces
Trang 734 Phép nối chuỗi: ghép các giá trị bt lại với nhau.
& : bt1 & bt2 & … & btn.
+ : bt1 + bt2 +…+ btn
5 Phép toán ngày tháng:
Ngày – Ngày: khoảng cách giữa 2 ngày
Giờ - Giờ: khoảng cách giữa 2 giờ
Ngày + số: ngày tương lai
Ngày - số: ngày quá khứ.
B Một số hàm thông dụng:
1 Hàm ngày tháng:
NOW (), DATE (), DAY ( kiểu ngày ), MONTH ( kiểu ngày ),
Trang 742 Hàm xử lý chuỗi:
LEFT( text,n ), RIGHT( text,n ), MID( text,m,n ), LEN (text ), LCASE(t ext ), UCASE( text)
3 Các hàm số học, thống kê:
ABS( số hay bt số ), SQR( số hay bt số ), INT( số hay bt
số ), SUM( bt số ), AVG( b t số ), MAX( bt số ), MIN( bt
số ), COUNT( bt ).
4 Hàm lôgic:
IF (bt logic, bt1, bt2)
Trang 755 Xây dựng các điều kiện trong truy vấn
Các phép toán được phép sử dụng:
• So sánh: =, <>, >, >=, <, <=
• Logic: AND, OR, NOT, BETWEEN … AND…
• LIKE với các ký tự thế chân
• NULL, NOT NULL, IS NULL, IS NOT NULL
• IN
Trang 76 BETWEEN…AND…: dùng để hiển thị một khoảng giá trị.
• VD: between KT0025 and KT0045 (MASV)
LIKE: dùng với trường kiểu text và Data/Time để tìm
gt theo một mẫu nào đó.
• VD: LIKE “H” (trường họ tên)
NULL và NOT NULL: để kiểm tra một trường đã có
DL hay chưa
• VD: đặt NOT NULL vào ô Criteria của trường ngày sinh để
kiểm tra xem những bản ghi nào chưa nhập ngày sinh.
IN : kiểm tra xem giá trị của trường có nằm trong một tập hợp nào đó hay không IN(gt1,gt2,gt3,…,gtn).
• VD: để tìm những SV có điểm toán là 7 hay 8 hay 9 ta viết ở
dòng Criteria của trường điểm toán IN(7,8,9)
Trang 776 Tính tổng trong truy vấn (Total
Query)
Các bước t ạo truy vấn tính tổng:
• Phân nhóm (Group By trên dòng Total)
• Điều kiện, tiêu chuẩn tham gia phân nhóm
• Chọn hàm tính toán trên dòng Total
• Sort
Trang 787 Truy vấn chéo (Crosstab Query)
Dùng để tóm lược dữ liệu và trình bày kết quả theo dạng cô đọng như một bảng tính.
Thực hiện:
• Như truy vấn Total Total
• Trong mỗi nhóm lại chia thành các nhóm con,
thực hiện phép toán trên mỗi nhóm con và trình bày kết quả của các nhóm con theo từng cột.
Cách xây dựng:
1 Chọn bảng/truy vấn nguồn.
2 Chọn Crosstab Query trong menu Query.