Học xong học phần này, sinh viên sẽ có nhận thức đúng đắn về vai trò của cơ sở dữ liệu, của hệ quản trị cơ sở dữ liệu trong lĩnh vực quản lý thông tin, dữ liệu nói chung và trong ngành T
Trang 1CƠ SỞ DỮ LIỆU
Mã số HP: 05005
1 Giới thiệu HP:
- Số tớn chỉ lý thuyết: 01; số buổi học của TC: 03 buổi
- Số tín chỉ thực hành: 01; số buổi học của TC:08buổi
- Vị trí HP ở học kỳ số/khóa học: 5
- Điều kiện tiên quyết: Tin học cơ bản
2 Mục tiêu đào tạo của HP:
2.1 Mục tiêu lý thuyết:
Trang bị cho sinh viên các kiến thức tổng quan về cơ sở dữ liệu, mô hình cơ sở
dữ liệu quan hệ Học xong học phần này, sinh viên sẽ có nhận thức đúng đắn về vai trò của cơ sở dữ liệu, của hệ quản trị cơ sở dữ liệu trong lĩnh vực quản lý thông tin, dữ liệu nói chung và trong ngành Thông tin học nói riêng; thấy được những thuận lợi khi
có một cơ sở dữ liệu được thiết kế tốt; thấy được những khó khăn, những bài toán phải giải quyết trong quá trình xây dựng cơ sở dữ liệu
2.2 Mục tiêu thực hành:
Cung cấp cho sinh viên các kỹ năng về lập mô hình dữ liệu, thiết kế cơ sở dữ liệu quan hệ, đánh giá và khai thác cơ sở dữ liệu
Giúp sinh viên bước đầu giải quyết các tình huống thực tế làm tiền đề cho việc xây dựng hệ thống thông tin sau này
3 Nội dung cơ bản của HP:
• Tổng quan về cơ sở dữ liệu (CSDL), hệ quản trị CSDL
• Các mô hình cơ sở dữ liệu – Mô hình thực thể liên kết ( E- R )
• Mô hình CSDL quan hệ
• Các phương pháp thiết kế CSDL
• Các ngôn ngữ thao tác CSDL - Bảo mật và tính toàn vẹn
4 Nội dung chi tiết tín chỉ
4.1 Tín chỉ số 1 (lý thuyết): Cơ bản về lý thuyết cơ sở dữ liệu quan hệ
4.1.1 Kiến thức cốt lõi: Tìm hiểu tổng quan về cơ sở dữ liệu, mô hình cơ sở dữ liệu
quan hệ và cách tổ chức dữ liệu vật lý Ngôn ngữ thao tác dữ liệu; Lý thuyết thiết kế CSDL quan hệ và tối ưu hóa câu hỏi
4.1.2 Kiến thức mở rộng: Thông qua bai học HSSV có thể hiểu thêm về các bài toán
quản lý; Các vấn đề thường gặp khi xử lý thông tin của một tổ chức; Sự bùng nổ thông
Trang 2tin; Siêu dữ liệu; Siêu xa lộ thông tin…
4.1.3 Hệ thống các chủ đề thảo luận/ Hệ thống các bài tập thường xuyên
1 Sự cần thiết phải bảo vệ an toàn cơ sở dữ liệu
2 Nguy cơ mất an toàn dữ liệu
3 Các kiêu tấn công và giải pháp bảo mật
4 Vấn đề an toàn và quyền truy cập cơ sở dữ liệu
5 Bảo mật trong SQL
6 Mã hóa dữ liệu và tính xác thực
4.1.4 Tổng quát khung tín chỉ:
tiết
Số tiết
lý thuyết
Thảo luận
Giảng viên thực hiện
1
Bài 1: Tổng quan về cở sở dữ liệu
1.1 Các khái niệm và đĩnh nghĩa về CSDL
1.1.1 Định nghĩa cơ sở dữ liệu
1.1.2 Hệ quản trị cở sở dữ liệu
1.1.3 Con người trong hệ cơ sở dữ liệu
1.2 Các mô hình cơ sở dữ liệu-Mô hình
thực thể liên kết (E-R)
1.2.1 Khái niệm mô hình dữ liệu (Data
Model)
1.2.2 Phân chia mô hình dữ liệu theo mức
(mức khái niệm, mức vật lý, mức thực hiện)
1.2.3 Các loại mô hình dữ liệu
1.2.4 Mô hình thực thể quan hệ ER (The
Entity Relationship Model)
Lê Ngọc Hoàn Lưu Vũ Nam
2 Bài 2: Mô hình CSDL quan hệ và các
phương pháp thiết kế CSDL.
2.1 Mô hình CSDL quan hệ
2.1.1 Các khái niệm cơ bản
2.1.2 Biểu diễn RBTV bằng phụ thuộc
hàm
2.1.3 Thuật toán tìm khoá của lược đồ quan
hệ
Hoàn Lưu Vũ Nam
Trang 32.1.4 Phép tách các lược đồ quan hệ và kết
nối không mất mát thông tin
2.1.5 Các thuật toán chuẩn hoá các lược đồ
quan hệ
2.2 Các phương pháp thiết kế CSDL
2.2.1.Phương pháp tổng hợp
2.2.2 Phương pháp tách bảo toàn thong tin
và phụ thuộc hàm theo chuẩn 3 (3NF)
2.2.3 Phương pháp tách bảo toàn thông tin
theo chuẩn Boyce – Codd
3
Bài 3: Truy vấn - Bảo mật - tính toàn vẹn
dữ liệu và tối ưu hóa câu hỏi
3.1 Đại số quan hệ và truy vấn; Ngôn ngữ
truy vấn SQL chuẩn5.2
3.2 Tính toàn vẹn và tối ưu hóa câu hỏi
3.3 Vấn đề an toàn và quyền truy nhập cơ sở
dữ liệu
3.4 Tính bảo mật trong SQL
3.5 Mã hóa dữ liệu và tính xác thực
Lê Ngọc Hoàn Lưu Vũ Nam
4.1.2 Tóm lược nội dung tín chỉ: 01
Bài 1: Tổng quan về cở sở dữ liệu
- Vấn đề 1: Các khái niệm và đĩnh nghĩa về CSDL: Trong phần này nhằm giới thiệu
cho các em HSSV những khái niệm, định nghĩa bản nhất về CSDL, hệ quản trị CSDL, vai trò vị trí của con người trong việc quản trị cơ sở dữ liệu bằng ngôn ngữ CSDL quan hệ thông qua một số hệ quản trị CSDL phổ biến
1 Định nghĩa cơ sở dữ liệu
Là một bộ sưu tập rất lớn về các loại dữ liệu tác nghiệp, được mã hoá dưới dạng các chuỗi bit và được lưu trữ dưới dạng File dữ liệu trong các bộ nhớ của máy tính
Cở sở dữ liệu sau khi thu thập phải được phân tích, phân loại và tổ chức lưu trữ bằng các công cụ phần mềm dưới dạng các ngôn ngữ thao tác cở sở dữ liệu con
2 Hệ quản trị CSDL (DataBase Management System - DBMS):
Là một hệ thống gồm một CSDL và các thao tác trên CSDL đó, được thiết kế
Trang 4trên một nền tảng phần cứng, phần mềm và với một kiến trúc nhất định Hệ quản trị CSDL, nó là một tập hợp các chương trình cho phép người dùng định nghĩa, tạo lập, bảo trì các CSDL và cung cấp các truy cập có điều khiển đến các CSDL này
Hay có thể hiểu hệ quản trị CSDL là, phần mềm điều khiển các chiến lược truy nhập CSDL Khi người sử dụng đưa ra yêu cầu truy nhập bằng một ngôn ngữ con dữ liệu nào đó, hệ quản trị CSDL tiếp nhận và thực hiện các thao tác trên CSDL lưu trữ
3 Con người trong hệ CSDL
Người quản trị CSDL là một người hay một nhóm người có khả năng chuyên môn cao về công nghệ tin học, có trách nhiệm quản lý và điều khiển toàn bộ hoạt động của các hệ CSDL Vì vậy người quản trị CSDL cần phải đặt ra các hình thức, quy định cho người sử dụng nhằm ngăn chặn việc truy nhập trái phép vào các hệ CSDL Người quản trị CSDL có thể cho phép người sử dụng những quyền truy nhập như chỉ được phép đọc, đọc một phần, có thể sửa, bổ sung một phần
- Vấn đề 2: Các mô hình cơ sở dữ liệu-Mô hình thực thể liên kết (E-R)
1 Khái niệm mô hình dữ liệu: Một mô hình dữ liệu là một hệ thống hình thức toán
học, bao gồm:
- Hệ thống các ký hiệu biểu diễn dữ liệu
- Tập hợp các phép toán thao tác trên cơ sửo dữ liệu
Đặc trưng của một mô hình dữ liệu:
- Tính ổn định khi thiết kế mô hình dữ liệu
- Tính đơn giản có nghĩa là dễ hiểu và dễ thao tác
- Tính dư thừa cần phải kiểm tra kỹ lưỡng
- Tính đối xứng phải được bảo toàn và
- Có cơ sở lý thuyết vững chắc
Nằm dưới cấu trúc của một cơ sở dữ liệu là mô hình dữ liệu: một bộ các công cụ quan niệm để mô tả dữ liệu, quan hệ dữ liệu, ngữ nghĩa dữ liệu và các ràng buộc nhất quán Có ba nhóm mô hình: Các mô hình luận lý dựa trên đối tượng (Object-based logical models), các mô hình luận lý dựa trên mẩu tin (record-based logical models), các mô hình vật lý (physical models)
2 Phân chia mô hình dữ liệu theo mức: (Mức khái niệm, mức vật lý, mức thực hiện)
3 Các loại mô hình dữ liệu (Mô hình phân cấp, mô hình mạng, mô hình quan hệ, mô
hình E-R, mô hình hướng đối tượng).
Bài 2: Mô hình CSDL quan hệ và các phương pháp thiết kế CSDL
Mô hình CSDL quan hệ bao gồm các quan hệ toán học, là các tệp truyền thống
Trang 5tuân theo các ràng buộc của quan hệ toán học Ngôn ngữ con thao tác dữ liệu gồm các toán tử có cấu trúc quan hệ toán học thao tác trên các quan hê
1 Các khái niệm cơ bản về: Miền, thuộc tính, bộ và quan hệ, các đặc trưng của các
quan hệ
2 Biểu diễn ràng buộc toàn vẹn bằng phụ thuộc hàm, bao gồm: Ràng buộc miền;
Ràng buộc khóa và ràng buộc trên các giá không xác định (null); Cơ sở dữ liệu quan
hệ và lược đồ cơ sở dữ liệu quan hệ Toàn vẹn thực thể, toàn vẹn tham chiếu và khóa ngoài
3 Thuật toán tìm khoá của lược đồ quan hệ: Phép toán cập nhật (chèn, xóa, cập
nhật); Phép toán đại số quan hệ (phép chọn, phép chiếu, phép đặt lại tên, phép nối, phép toán lý thuyết tập hợp )
4 Phép tách các lược đồ quan hệ
5 Các thuật toán chuẩn hoá các lược đồ quan hệ: Sự cần thiết của chuẩn hóa dữ
liệu; Giới thiệu các chuẩn 1NF, chuản 2NF, chuẩn 3NF, chuẩn 4NF, chuẩn Boyce Codd, và nhận biết dạng chuẩn 3NF và BCNF
- Vấn đề 2: Các phương pháp thiết kế CSDL
Một CSDL được thiết kế tốt cho phép người sử dụng truy cập nhanh chóng đến những thông tin cần tham khảo, giúp tiết kiệm được thời gian truy xuất thông tin Một CSDL thiết kế tốt giúp người sử dụng rút ra được những kết quả nhanh chóng và chính xác hơn Để thiết kế một CSDL tốt chúng ta phải hiểu cách mà một Hệ QTCSDL quản trị các CSDL như thế nào MS Access hay bất kỳ một Hệ QTCSDL nào có thể cung cấp các thông tin cho chúng ta một cách chính xác và hiệu quả nếu chúng được cung cấp đầy đủ mọi dữ kiện về nhiều đối tượng khác nhau lưu trữ trong các bảng dữ liệu Ví dụ ta cần một bảng để chứa thông tin về lý lịch của cán bộ, một bảng khác để chứa các đề tài nguyên cứu khoa học của các cán bộ
Khi bắt tay thiết kế CSDL, chúng ta phải xác định và phân tích các thông tin muốn lưu trữ thành các đối tượng riêng rẽ, sau đó báo cho Hệ QTCSDL biết các đối tượng đó liên quan với nhau như thế nào Dựa vào các quan hệ đó mà Hệ QTCSDL có thể liên kết các đối tượng và rút ra các số liệu tổng hợp cần thiết
1 Phương pháp tổng hợp.
2 Phương pháp tách bảo toàn thông tin và phụ thuộc hàm theo chuẩn 3 (3NF)
3 Phương pháp tách bảo toàn thông tin theo chuẩn Boyce – Codd
Bài 3: Truy vấn - Bảo mật - tính toàn vẹn dữ liệu và tối ưu hóa câu hỏi
- Vấn đề 1: Đại số quan hệ và truy vấn; Ngôn ngữ truy vấn SQL chuẩn5.2
- Vấn đề 2: Tính toàn vẹn và tối ưu hóa câu hỏi
Trang 6- Vấn đề 3: Vấn đề an toàn và quyền truy nhập cơ sở dữ liệu
- Vấn đề 4: Tính bảo mật trong SQL
- Vấn đề 5: Mã hóa dữ liệu và tính xác thực
4.1.3 Yêu cầu về kiến thức và kỹ năng ở tín chỉ số 1
- Kiến thức:
Trang bị cho sinh viên kiến thức về cơ sở dữ liệu quan hệ; mô hình cơ sở dữ liệu, cách thức tổ chức dữ liệu vật lý, ngôn ngữ truy vấn dữ liệu và lý thuyết về thiết kế
cơ sở dữ liệu cho ứng dụng trong công tác quản lý
- Kỹ năng:
Sinh viên nắm được kĩ năng thiết kế cơ sở dữ liệu
4.1.4 Giới thiệu tài liệu tham khảo tín chỉ số 1
1 Cơ sở dữ liệu – Đỗ Trung Tuấn, NXB Đại học quốc gia Hà Nội 2007
2 Cơ sở dữ liệu – TS Phạm Thế Quế, Học viện Bưu chính Viến thông 2006
3 Các hệ cơ sở dữ liệu: Lý thuyết và thực hành – TS Hồ Cẩm Hà, Hồ Thuần NXBGD 2004 – 2005
4 Đỗ Trung Tuấn, Cơ sở dữ liệu quan hệ, NXBGD 1998
5 nhập môn CSDL – Vũ Tuyết Trinh, Đại học Bách khoa Hà Nội
6 Nguyễn Tuệ, Giáo Trình Nhập Môn Hệ Cơ Sở Dữ Liệu, Nxb Giáo dục, 2007.
4.1.5 Phương pháp và nguyên tắc tổ chức dạy- học ở tớn tớn chỉ 1:
* Đối với giảng viên:
1 Giảng viên giảng dạy có thể là GV phụ trách HP hoặc GV cùng dạy thuộc chuyên ngành đào tạo Công nghệ Thông tin
2 Giảng viên giảng lý thuyết, minh hoạ bằng ví dụ thực tiễn
3 Phần thảo luận đưa ra các vấn đề yêu cầu tư duy logic nhằm mục đích củng cố, ghi nhớ, khắc sâu kiến thức đã học
4 Trong quá trình giảng dạy tuỳ theo từng ngành nghề đào tạo, GV liên hệ với kiến thức chuyên ngành
5 Trao đổi bài tự luận qua Email của giảng viên
* Đối với sinh viên:
1 Nghe giảng, thảo luận các tình huống thực tế, giải bài tập
2 Sinh viên đọc tài liệu tham khảo trước buổi học và làm bài tập cuối chương, bài tập thảo luận nhóm
3 Để học tốt môn học, sinh viên cần phải nghiên cứu các tài liệu, giáo trình như
Trang 7giới thiệu ở trên để dễ dàng tiếp thu bài giảng, tham gia thảo luận và làm bài tập.
* Tổ chức, biên chế, thiết bị dạy- học cần có:
- Quy mô lớp chung: 25-30 SV
- Nhóm thảo luận, nghiên cứu: 3-4SV/nhóm
- GV chuẩn bị ĐCCT 3 cấp, Thuyết trình PowerPoint
- Phòng học phải có các thiết bị dạy học như: máy tính, máy chiếu
- Sinh viên phải có giáo trình, tập bài giảng của giảng viên lên lớp, tài liệu tham khảo và cần chuẩn bị bài trước khi lên lớp
4.1.6 Phương pháp đánh giá kết quả học tập của SV trong tín chỉ:
- Sinh viên phải tham gia đầy đủ số giờ học trên lớp theo qui định (không nghỉ quá 20% tổng số giờ học)
- Sinh viên phải thực hiện đầy đủ các nhiệm vụ (chuẩn bị bài ở nhà, đọc tài liệu, tham gia thảo luận và làm các bài tập tại lớp, làm kiểm tra tín chỉ theo đúng yêu cầu của giảng viên phụ trách môn học
- Tín chỉ có 2 điểm KTTX được đánh giá cụ thể như sau:
Nội dung kiểm tra, đánh giá Hỡnh thức kiểm tra, đánh
giá
Phần trăm điểm
1 Kiểm tra đánh giá chuyên cần tín chỉ:
1 Tinh thần, thái độ học tập (đi
học, chuẩn bị bài, nghe giảng…)
- Điểm danh
- Kiểm tra chuẩn bị bài
- Quan sát trên lớp
20%
(~2 điểm)
(~2 điểm)
2 Kiểm tra đánh giá kết quả học tập tín chỉ:
Bài tập kiểm tra trong tín chỉ - Bài tập tại lớp và bài tập về
nhà
60%
(~6 điểm)
(10 điểm)
Trang 84.2 Tín chỉ số 2: Thực hành xây dựng cơ sở dữ liệu trên ACCESS
4.2.1 Tổng quát hệ thống bài học và nội dung khái lược bài trong tín chỉ:
tiết
Số tiết
GV HDTH
Số tiết SVTH
Giảng viên thực hiện
1
Bài 1: Giới thiệu và khởi động access
2003
1.1 Tổng quan access 2003
1.1.1 Access là gì?
1.1.2 Các đặc tính của access
1.2 Khởi động access 2003
1.2.1 Khởi động access
1.2.2 Mở một CSDL mới
1.2.3 Mở một CSDL có sẵn
1.2.4 Xem trợ giúp
1.2.5 Nén CSDL
Lê Ngọc Hoàn Lưu Vũ Nam
2
Bài 2: Làm việc với bảng - Tạo các quan
hệ (Thiết kế bảng)
2.1 Thao tác với bảng
2.1.1 Cơ sở về bảng dữ liệu
2.1.2 Tạo bảng mới
2.1.3 Xác lập khóa chính
2.1.4 Xác lập các tính chất cho trường
2.1.5 Sử dụng thuật đồ mặt nạ nhập liệu
2.1.6 Nhập khẩu dữ liệu từ các ứng dụng
khác
2.2 Tạo các quan hệ (Thiết kế bảng)
2.2.1 Thiết kế bảng chuẩn hóa
2.2.2 Thực hiện bài tập 1
Lê Ngọc Hoàn Lưu Vũ Nam
3 Bài 3: Công cụ truy vấn
3.1 Truy cấn cơ bản
3.1.1 Sử dụng truy vấn để tìm các thông tin
cần thiết
Hoàn Lưu Vũ Nam
Trang 93.1.2 Năm thao tác cơ bản của truy vấn
(chiếu, sắp xếp theo thứ tự, lựa chọn, liên
kết, tiêu chuẩn lựa chon phức hợp)
3.1.3 Cách tạo các trường tính toán
3.1.4 Thực hiện bài tập 2
3.2 Truy vấn bằng ngôn ngữ cấu trúc
(SQL)
3.2.1 Sự khác biệt giữa QBE và SQL
3.2.2 Thực hiện bài tập 3
4
Bài 4: Làm việc với các biểu mẫu - Biểu
mẫu phụ
4.1 Làm việc với các biểu mẫu
4.1.1 Sử dụng biểu mẫu như thành phần cơ
bản của một ứng dụng
4.1.2 Thực hiện bài tập 4
4.2 Biểu mẫu phụ
4.2.1 Ưu điểm của việc sử dụng các biểu
mẫu phụ
4.2.2 Thực hiện bài tập 5
Lê Ngọc Hoàn Lưu Vũ Nam
4.2.2 Kiến thức liên quan đến yêu cầu thực hành
1 Giới thiệu về access 2003
- Access là gi?
Microsoft Access là một Hệ quản trị cơ sở dữ liệu (HQTCSDL) dạng quan hệ ở mức độ cơ sở, HQTCSDL là một chương trình cho phép lưu trữ và truy cập tới các thông tin có cấu trúc Các công cụ của chương trình cũng cho phép thực hiện các thao tác với dữ liệu như chèn, xoá và tìm kiếm dữ liệu Mục tiêu hàng đầu của một HQTCSDL là tạo điều kiện thuận lợi nhất cho người sử dụng trong việc lưu trữ, cập nhật và truy cập dữ liệu mà không nhất thiết phải biết chính xác cấu trúc vật lý của cơ
sở dữ liệu.
- Các đặc tính của access: bao gồm các yếu tố
2 Khởi động access 2003
- Cách khởi động microsoft access 2003
- Cách mở một file dữ liệu mới, mở một file dữ liệu có sẵn.
Trang 10- Cách xem trợ giúp và nén cơ sở dữ liệu dữ liệu
3 Làm việc với bảng (Thiết kế bảng)
- Cơ sở về bảng dữ liệu
Giới thiệu về bảng dữ liệu, các thành phần về bảng.
+ Các trường
+ Các bản ghi
+ Cách hiệu chỉnh độ rộng của cột, dòng
+ Ký hiệu và các hiển thị trên bảng.
- Tạo bảng mới
Cách tạo một bảng mới và nhập thông tin, lưu tên bảng dữ liệu mới.
- Xác lập khóa chính
Mỗi bảng có khả năng có một khoá chính cho phép xác định tính duy nhất của các thanh ghi chứa trong bảng Khi gán cho một trường vai trò khoá chính của bảng, Access sẽ không cho phép nhập các giá trị trùng lặp vào trường đó.
- Xác lập các tính chất cho trường
Xác lập một số tính chất cho trường START_DATE
- Sử dụng thuật đồ mặt nạ nhập liệu
Cách tạo quy tắc nhập dữ liệu cho một trường nhờ thuật đồ Mặt nạ nhập liệu
- Nhập khẩu dữ liệu từ các ứng dụng khác
Access cho phép dễ dàng nhập khẩu dữ liệu từ các ứng dụng khác Chẳng hạn, bạn có thể tạo một bảng mới bằng cách sử dụng dữ liệu từ một bảng Excel.
4 Tạo các quan hệ
- Thiết kế bảng chuẩn hóa
Thiết kế bảng chuẩn hóa nhằm mục đích:
+ Tốn nhiều chỗ chứa dữ liệu
+ Khó thay đổi cấu trúc cơ sở dữ liệu
+ Các vấn đề nảy sinh khi xoá dữ liệu
+ Các vấn đề nảy sinh khi thêm dữ liệu
- Thực hiện bài tập 1
Bài tập thực hành về thiết kế bảng chuẩn hóa (từ một bảng tách thành các bảng nhỏ, tạo các quan hệ cho các bảng này và đảm bảo tính toàn vẹn tham chiếu)
5 Công cụ truy vấn
- Sử dụng truy vấn để tìm các thông tin cần thiết