1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Thiết kế cơ sở dữ liệu: Chương 1 - GV. Dương Khai Phong

54 26 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 54
Dung lượng 3,09 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Thiết kế cơ sở dữ liệu: Chương 1 Giới thiệu tổng quan về cơ sở dữ liệu nhằm trình bày về chu kỳ sống của một cơ sở dữ liệu, các giai đoạn thiết kế cơ sở dữ liệu, khái niệm về hệ thống cơ sở dữ liệu, mục tiêu chính của hệ quản trị cơ sở dữ liệu.

Trang 1

ĐH CÔNG NGHỆ THÔNG TIN http://sites.google.com/site/khaiphong

Số tiết lý thuyết: 45 tiết

Trang 2

Chương 1: Giới thiệu tổng quan

Chương 2: Mô hình dữ liệu và các phụ thuộc dữ liệu

Chương 4: Lý thuyết đồ thị quan hệ

Chương 5: Thiết kế CSDL ở mức vật lý

 Nội dung môn học:

Trang 3

Nội dung đánh giá Tỷ lệ

điểm Ghi chú

BÀI TẬP TẠI LỚP

30%

Bài tập có thể làm việc theo nhóm (từ 2-3 sv) BÀI TẬP THỰC HÀNH

THI HẾT MÔN 70% Theo lịch thi PĐT

http://sites.google.com/site/khaiphong

 Hình thức đánh giá:

Trang 4

Chương 1: Giới thiệu tổng quan

Chương 2: Mô hình dữ liệu và các phụ thuộc dữ liệu

Chương 4: Lý thuyết đồ thị quan hệ

Chương 5: Thiết kế CSDL ở mức vật lý

 Nội dung môn học:

Trang 5

Các giai đoạn thiết kế CSDL

 Chương 1: Giới thiệu tổng quan

Giới thiệu

Chu kỳ sống của một CSDL

Trang 6

Khái niệm Hệ thống cơ sở dữ liệu:

 Chương 1: Giới thiệu tổng quan

Hệ thống CSDL của một ứng dụng tin học là 1 tập hợp dữ liệu được tổ chức 1 cách chọn lọc, ghi trên các thiết bị trữ tin, nhằm phục vụ đồng thời cho nhiều người, với nhiều mục đích xử lý và khai thác khác nhau.

Ví dụ: Trong một công ty phần mềm:

Bộ phận quản lý tiền lương có nhu cầu lập bảng

lương cho đơn vị vđi các thông tin ghi trên bảng lươngnhư sau: STT, họ tên, hệ số lương, tiền lương, Chữ kýTrong đó, Tiền lương = hệ số lương X 500000; hệ sốlương được phân chia dựa trên học vị

Bộ phận quản lý dự án có nhu cầu lập danh sách

phân công nhân viên cho các dự án, với các thông tin:

STT, họ tên, chuyên môn, dự án

đó, nhân viên được phân công phải có chuyên

Trang 7

Khái niệm Hệ thống cơ sở dữ liệu:

 Chương 1: Giới thiệu tổng quan

Hệ thống CSDL của một ứng dụng tin học là 1 tập hợp dữ liệu được tổ chức 1 cách chọn lọc, ghi trên các thiết bị trữ tin, nhằm phục vụ đồng thời cho nhiều người, với nhiều mục đích xử lý và khai thác khác nhau.

Ví dụ: Trong một công ty phần mềm:

Hệ thống CSDL được xây dựng sao cho có thể phục vụ

cho các mục tiêu trên của các phòng ban?

Trang 8

Khái niệm Hệ thống cơ sở dữ liệu:

 Chương 1: Giới thiệu tổng quan

Hệ thống CSDL của một ứng dụng tin học là 1 tập hợp dữ liệu được tổ chức 1 cách chọn lọc, ghi trên các thiết bị trữ tin, nhằm phục vụ đồng thời cho nhiều người, với nhiều mục đích xử lý và khai thác khác nhau.

Ví dụ: Trong một công ty phần mềm:

Bộ phận quản lý tiền lương có nhu cầu lập bảng

lương cho đơn vị vđi các thông tin ghi trên bảng lươngnhư sau: STT, họ tên, hệ số lương, tiền lương, Chữ kýTrong đó, Tiền lương = hệ số lương X 500000; hệ sốlương được phân chia dựa trên học vị

Bộ phận quản lý dự án có nhu cầu lập danh sách

phân công nhân viên cho các dự án, với các thông tin:

STT, họ tên, chuyên môn, dự án

đó, nhân viên được phân công phải có chuyên

Môi trường CSDL

CT QLTL

CT QLDA

Bảng Lương

Bảng Phân công

Danh mụcHSL

Danh mục

Dự ánNhân viên

Trang 9

Mục tiêu chính của thiết kế CSDL:

 Chương 1: Giới thiệu tổng quan

 Làm thế nào chuyển đổi nhu cầu lưu trữ và khai thác dữ liệu của người dung thành một hệ thống CSDL hiệu quả?

 Tính hiệu quả được thể hiện cụ thể bởi các tính chất:

Trang 10

Mục tiêu chính của thiết kế CSDL:

 Chương 1: Giới thiệu tổng quan

Ví dụ: Thiết kế CSDL dữ liệu cho công ty phần mềm trên, với

cùng các nhu cầu lưu trữ và khai thác dữ liệu, có thể có nhiều cấu trúc CSDL khác nhau:

Trang 11

Tiêu chuẩn để lựa chọn một cấu trúc CSDL hiệu quả:

 Chương 1: Giới thiệu tổng quan

• Thời quan truy xuất dữ liệu đáp ứng cho một yêu cầu

khai thác?

• Thời gian phục hồi CSDL khi có sự cố ?

• Chi phí tổ chức và cài đặt CSDL ?

• Dễ bảo trì, nâng cấp, sửa đổi khi phát sinh những nhu

cầu mới hay không?

Trang 12

Các thông tin vào / ra quy trình thiết kế:

 Chương 1: Giới thiệu tổng quan

(1) Yêu cầu về thông tin: dùng CSDL cho vấn đề gì?

Xuất phát từ người sử dụng có nhu cầu và quan điểm?

(2) Yêu cầu về xử lý: mỗi nhóm người sử dụng sẽ nêu

ra các yêu cầu xử lý của riêng mình; Tần suất xử lý vàkhối lượng dữ liệu

(3) Đặc trưng kỹ thuật của hệ quản trị CSDL cần sử

(1) Cấu trúc quan niệm CSDL

(2) Cấu trúc Logic CSDL

(3) Cấu trúc Vật lý CSDL

Trang 13

Các thông tin vào / ra quy trình thiết kế:

 Chương 1: Giới thiệu tổng quan

CTLGCSDLCTVLCSDL

Trang 14

Các giai đoạn thiết kế CSDL

 Chương 1: Giới thiệu tổng quan

Giới thiệu

Chu kỳ sống của một CSDL

Trang 15

Chu kỳ sống của một CSDL:

 Chương 1: Giới thiệu tổng quan

Một ứng dụng tin học được triển khai thực hiện trải qua các giai đoạn:

G

Giai đoạn xây dựng CSDL

Giai đoạn thử nghiệm

và khai thác

Trang 16

Chu kỳ sống của một CSDL:

 Chương 1: Giới thiệu tổng quan

 Giai đoạn xây dựng CSDL

(A) Phân tích các nhu cầu của người sử dụng

(B) Thiết kế CSDL ở mức quan niệm: nghĩa là xác định nội dung CSDL (chứanhững thông tin gì ?) Chỉ quan tâm ở mức dữ liệu

(C) Thiết kế CSDL ở mức Logic: Chia vấn đề cần xử lý ra thành nhiều bước Ởđây chỉ chú ý đến các xử lý đặt ra, nhưng chưa chú ý đến phần mềm và phầncứng

(D) Thiết kế CSDL ở mức vật lý: Cài đặt CSDL như thế nào? Giải quyết nhữngvấn đề mang tính kỹ thuật

Ví dụ: Sử dụng phần mềm nào? Với cấu hình máy ra sao?.

 Giai đoạn thử nghiệm và khai thác

(E) Cài đặt và chạy thử nghiệm: Nếu có sai sót thì phải hiệu chỉnh lại cấu trúcCSDL ở các mức quan niệm; logic; vật lý

(F) Đưa cho người sử dụng khai thác

(G) Thích ứng CSDL theo những nhu cầu mới

Trang 17

Các giai đoạn thiết kế CSDL

 Chương 1: Giới thiệu tổng quan

Giới thiệu

Chu kỳ sống của một CSDL

Trang 18

Các giai đoạn thiết kế CSDL:

 Chương 1: Giới thiệu tổng quan

Quy trình thiết kế CSDL

Phân tích nhu cầu

Bản đặc tả các nhu cầu

Thiết kế quan niệm

Cấu trúc quan niệm CSDL

Trang 19

 Chương 1: Giới thiệu tổng quan

Phân tích nhu cầu Đây là bước khó nhất trong quá trình thiết kế vì nó

được thực hiện thông qua sự tiếp xúc giữa người thiết kế

và người sử dụng

Nội dung:

• Thu thập thông tin về dữ liệu và xử lý từ người sửdụng, từ các tài liệu, chứng từ, biểu mẫu thống kêliên quan đến CSDL và cả những tài liệu của CSDL

cũ (nếu có)

• Sau khi thu thập phải tổng hợp và phân tích nhữngnhu cầu đó Kiểm tra xem có những mâu thuẩngiữa các nhu cầu không?

Trang 20

DỊCH VỤ MƯỢN SÁCH THƯ VIỆN

TÍNH LƯƠNG SẢN XUẤT

- Có độ trễ

- Xử lý riêng từng trường hợp

- Có định kỳ

- Xử lý chung toàn bộ

Phân tích nhu cầu

Các giai đoạn thiết kế CSDL:

Trang 21

• Đưa ra những dữ liệu cần thiết nhất.

• Phải có bộ hồ sơ hệ thống hoá những nhu cầu vàviết theo ngôn ngữ bình thường để người dùng đọclại và bổ sung những yêu cầu của họ

• Bộ hồ sơ này còn được dùng để nghiệm thu CSDL

Phân tích nhu cầu

Các giai đoạn thiết kế CSDL:

Trang 22

• Phân chia các nhu cầu ra thành từng mảng Điều

đó dẫn đến sẽ có nhiều mô hình quan niệm dữ liệu,mỗi mô hình liên quan đến 1 mảng

• Cuối cùng cần tích hợp các mô hình đó lại Khi tổnghợp, cần phải xác định tất cả các ràng buộc toànvẹn và tạo ra từ điển dữ liệu

Phân tích nhu cầu

Thiết kế quan niệm

Các giai đoạn thiết kế CSDL:

Trang 23

 Chương 1: Giới thiệu tổng quan

 Ví dụ: Thiết kế CSDL quản lý một công ty gồm có 2 đốitượng: nhóm người quản trị kinh doanh và nhóm ngườiquản lý kho

Phân tích nhu cầu

Thiết kế quan niệm

Đối với người quản trị kinh doanh: chỉ quantâm đến các thành phẩm: Mã thành phẩm,tên, số lượng tồn, đơn giá bán

Đối với người quản lý kho: ngoài thông tínthành phẩm, người quản lý kho còn quantâm đến các chứng từ liên quan đến cácthành phẩm: số đợt, giá thành, số lượng

Các giai đoạn thiết kế CSDL:

Trang 24

 Chương 1: Giới thiệu tổng quan

Mục đích:

• Dựa trên nhu cầu xử lý, nghiên cứu cách sử dụng

dữ liệu thông qua xử lý các thông tin cần: tần suất,khối lượng

• Trong giao đoạn thiết kế quan niệm, dữ liệu cần loại

bỏ những thông tin trùng lắp Nhưng ở giai đọanthiết kế logic, cần phải cân nhắc, dựa trên hiệu quả

xử lý, để quyết định có hay không có cài đặt thôngtin trùng lắp

Phân tích nhu cầu

Thiết kế quan niệm

Thiết kế logic

Các giai đoạn thiết kế CSDL:

Trang 25

Giai đoạn này, đơn giản hay phức tạp tùy thuộc vàođặc trưng kỹ thuật của phần mềm và phần cứng

Phân tích nhu cầu

Thiết kế quan niệm

Thiết kế logic

Thiết kế vật lý

Các giai đoạn thiết kế CSDL:

Trang 26

ĐH CÔNG NGHỆ THÔNG TIN http://sites.google.com/site/khaiphong

Trang 27

mã ID cho khách hang đã đăng ký.

b) Các nhân viên làm việc được lưu trữ các thông tin: mã nhân viên, họ tên,ngày sinh, địa chỉ, ngày vào làm việc và lương

c) Mỗi sản phẩm được bán có thể cung cấp bởi nhiều nhà cung ứng (thông tin

về mỗi mặt hàng bao gồm: mã sản phẩm, tên sản phẩm, giá và đơn vị tính).Mỗi nhà cung ứng cần lưu tên công ty, địa chỉ, số phone, số fax

d) Mỗi khách hàng mua hàng thì chọn lựa hàng và sau đó đến quầy tính tiền

Ở quầy tính tiền sẽ in ra 1 bill gồm số hóa đơn, ngày lập hóa đơn, tên kháchmua, tên người bán và danh sách các mặt hàng mua kèm theo đơn giá bán

Câu hỏi : Liệt kê các quan hệ cần quản lý trên.

Trang 28

(Tên Giảng viên) TEN_GV

(Học hàm Giảng viên) HH_GV

(Mức lương Giảng viên) ML_GV

(Tổng số sinh viên) TSSV

Cho dữ liệu của việc quản lý thông tin giảng dạy tại một Trường như sau:

Xây dựng bản đặc tả cho các CSDL dựa trên các thông tin trên

Trang 29

 Chương 1: Giới thiệu tổng quan

Bài 3

Hãy thiết kế CSDL cho bài toán quản lý giáo vụ của một trường dựa trên các mô

tả và các quy tắc như sau:

a) Lưu trữ thông tin: Học viên , giáo viên, môn học

b) Xếp lớp cho học viên, chọn lớp trưởng cho lớp

c) Phân công giảng dạy: giáo viên dạy lớp nào với môn học gì, ở học kỳ, nămhọc nào

d) Lưu trữ kết quả thi: học viên thi môn học nào, lần thi thứ mấy, điểm thi baonhiêu

Câu hỏi : Liệt kê các quan hệ cần quản lý trên.

Trang 30

ĐH CÔNG NGHỆ THÔNG TIN http://sites.google.com/site/khaiphong

Trang 31

 MÔ HÌNH DỮ LIỆU QUAN HỆ

MÔ HÌNH

• Tên gọi: dãy ký tự (gợi nhớ)

• Kiểu dữ liệu: Số, Chuỗi, Thời gian,

Luận lý, OLE

• Miền giá trị: tập giá trị mà thuộc

tính có thể nhận Ký hiệu miền giátrị của thuộc tính A là Dom(A)

Trang 32

MÔ HÌNH

 MÔ HÌNH DỮ LIỆU QUAN HỆ

Trang 33

MÔ HÌNH

 Quan hệ là một bảng (table) với các

cột là các thuộc tính và mỗi dòngđược gọi là bộ

 Một bộ của quan hệ Q(A1,A2, ,AN) làq(a1,a2, ,aN) với ai Dom(Ai)

 Ví dụ:

HOCVIEN(Mahv, Hoten, Ngsinh,Noisinh) có q=(1003,Nguyen VanLam, 1/1/1987,Dong Nai) nghĩa làhọc viên có mã số là 1003, họ tên là

 MÔ HÌNH DỮ LIỆU QUAN HỆ

Trang 34

MÔ HÌNH

Thể hiện của quan hệ

 Là tập hợp các bộ giá trị của quan hệtại một thời điểm nhất định

Ký hiệu:

Thể hiện của quan hệ Q là T Q

 MÔ HÌNH DỮ LIỆU QUAN HỆ

Trang 35

MÔ HÌNH

Ký hiệu: ||Q||

 MÔ HÌNH DỮ LIỆU QUAN HỆ

Trang 36

MÔ HÌNH

Ký hiệu: phép chiếu quan hệ R lên

tập thuộc tính A là R[A] hoặc R.A

 Chiếu của một bộ lên tập thuộc tính:

dùng để trích chọn các giá trị cụ thểcủa bộ giá trị đó theo các thuộc tínhđược chỉ ra trong danh sách thuộctính của một quan hệ

Ký hiệu: chiếu của một bộ giá trị t

lên tập thuộc tính A của quan hệ R

t R [A] hoặc t[A].Nếu A có 1 thuộc tính t R A

 MÔ HÌNH DỮ LIỆU QUAN HỆ

Trang 37

MÔ HÌNH

 MÔ HÌNH DỮ LIỆU QUAN HỆ

Trang 38

MÔ HÌNH

Nghĩa là:  t1, t2  TQ, t1[K]

t2[K] K là siêu khóa của Q

Một quan hệ có ít nhất một siêukhóa (Q+) và có thể có nhiều siêukhóa

 MÔ HÌNH DỮ LIỆU QUAN HỆ

Trang 39

MÔ HÌNH

- Thuộc tính tham gia vào mộtkhóa gọi là thuộc tính khóa, ngược lại là thuộc tính không

khóa.

 MÔ HÌNH DỮ LIỆU QUAN HỆ

Trang 40

MÔ HÌNH

và gọi là khóa chính

hiệu: các thuộc tính nằm trong

khóa chính khi liệt kê trong quan hệ

phải được gạch dưới.

 MÔ HÌNH DỮ LIỆU QUAN HỆ

Trang 41

MÔ HÌNH

Ta nói K 2 là khóa ngoại của S tham

chiếu đến khóa chính K1 của R nếuthỏa các điều kiện sau:

- K1 và K2 có cùng số lượng thuộctính và ngữ nghĩa của các thuộctính trong K1 và K2 cũng giốngnhau

- Giữa R và S tồn tại mối quan hệ1-n trên K1 và K2,

- s  S, !r  R sao cho

 MÔ HÌNH DỮ LIỆU QUAN HỆ

Trang 42

MÔ HÌNH

Cấu trúc của một quan hệ là tập

thuộc tính hình thành nên quan hệđó

Trang 43

MÔ HÌNH

Các quan hệ

 MÔ HÌNH DỮ LIỆU QUAN HỆ

Trang 44

ĐH CÔNG NGHỆ THÔNG TIN http://sites.google.com/site/khaiphong

Trang 45

 CÁC NGÔN NGỮ LIÊN QUAN CSDL

Chọn kết hợp các cặp câu sau cho phù hợp:

Trang 46

Cho CSDL QLDETAI (Quản lý đề tài) gồm các quan hệ:

G Giáo viên: G# Mã giáo viên, TG tên giáo viên, GT

giới tính, DC địa chỉ, NVL ngày vào làm

D Đề tài: D# mã đề tài, TD tên đề tài, NB ngày bắt

đầu, NK ngày kết thúc, G# giáo viên hướng dẫn, SL số

lượng sinh viên

S Sinh viên: S# mã sinh viên, TS tên sinh viên, D#

đề tài

 CÁC NGÔN NGỮ LIÊN QUAN CSDL

Trang 47

Cho CSDL QLDIEM (Quản lý điểm) gồm các quan hệ:

S sinh viên: S# Mã sinh viên, TS tên sinh viên, GT giới

tính, K khoá, SoMonDat số môn đạt, DTB điểm trung

bình

M Môn học: M# mã môn học, TM tên môn học, SoTC

số tín chỉ

K Kết quả thi: S# , M# , D điểm thi

 CÁC NGÔN NGỮ LIÊN QUAN CSDL

Trang 48

Bài tập trên 1 quan hệ

Cho CSDL QLDETAI, viết các câu truy vấn sau bằng NN ĐSQH:

1 Liệt kê giáo viên (mã giáo viên, tên giáo viên) vào làm trong năm 2013

3 Liệt kê giáo viên (tên giáo viên) nữ vào làm trong năm 2010 hoặc 2013

(G:(GT=“nu”  (year(NVL) = 2010  year(NVL) = 2013))[TG]

 CÁC NGÔN NGỮ LIÊN QUAN CSDL

Trang 49

Bài tập trên 1 quan hệ

Cho CSDL QLDETAI, viết các câu truy vấn sau bằng NN ĐSQH:

4 Liệt kê các đề tài (tên đề tài) thực hiện trong năm 2013

5 Liệt kê các đề tài (tên đề tài) thực hiện trong năm 2013 và có số lượng

sinh viên thực hiện  2

6 Liệt kê các sinh viên (tên sinh viên) có chứa chữ Nguyen

Cho CSDL QLDIEM, viết các câu truy vấn sau bằng NN ĐSQH:

1 Liệt kê các sinh viên (tên sinh viên) khoá 10 có DTB  5

2 Liệt kê các sinh viên (tên sinh viên) nam khoá 10 có DTB  5 hoặc

sinh viên nữ khoá 12

 CÁC NGÔN NGỮ LIÊN QUAN CSDL

Trang 50

Bài tập trên n quan hệ

Cho CSDL QLDETAI, viết các câu truy vấn sau bằng NN ĐSQH:

1 Liệt kê các đề tài (tên đề tài) do giáo viên Nguyen hướng dẫn

Trang 51

Bài tập trên n quan hệ

Cho CSDL QLDETAI, viết các câu truy vấn sau bằng NN ĐSQH:

4 Liệt kê các đề tài (mã đề tài, tên đề tài, tên giáo viên) bắt đầu hay kết

thúc trong năm 2010

5 Liệt kê các đề tài (mã đề tài, tên đề tài, tên giáo viên) do giáo viên ở

TPHCM hướng dẫn bắt đầu năm 2010

6 Liệt kê các đề tài (mã đề tài, tên đề tài, tên sinh viên) bắt đầu năm

2010

7 Liệt kê các đề tài (mã đề tài, tên đề tài, tên giáo viên, tên sinh viên) )

do giáo viên nam ở TPHCM hướng dẫn

 CÁC NGÔN NGỮ LIÊN QUAN CSDL

Trang 52

Bài tập kết hợp các phép toán

Cho CSDL QLDETAI, viết các câu truy vấn sau bằng NN ĐSQH:

1 Liệt kê các giáo viên (mã giáo viên) không hướng dẫn đề tài nào

G[G#] D[G#]

2 Liệt kê các giáo viên (mã giáo viên) không hướng dẫn đề tài nào bắt

đầu trong năm 2010

Trang 53

Bài tập kết hợp các phép toán

Cho CSDL QLDIEM, viết các câu truy vấn sau bằng NN ĐSQH:

2 Liệt kê môn học (tên môn học) chưa có sinh viên nào thi hay chưa có

sinh viên nào thi đạt (D>=5)

1 Liệt kê sinh viên (mã sinh viên) nam (GT=‘Nam’) chưa thi hay chưa thi

Trang 54

ĐH CÔNG NGHỆ THÔNG TIN http://sites.google.com/site/khaiphong

Ngày đăng: 08/05/2021, 12:10

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm