1. Trang chủ
  2. » Giáo án - Bài giảng

Nhập môn cơ sở dữ liệu

410 2,5K 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 410
Dung lượng 9,34 MB

Nội dung

 Các khái niệm cơ bản và định nghĩa Hệ thống xử lý tập tin truyền thống  Cách tiếp cận cơ sở dữ liệu  Các thành phần của môi trường hệ quản trị cơ sở dữ liệu  Các chức năng của hệ q

Trang 1

NHẬP MÔN CƠ SỞ DỮ LIỆU

Trang 2

NỘI DUNG MÔN HỌC

• Chương 1: Gi ớ i thiệu chung về lý thuyết CSDL

• Chương 2: M ô hình thực thể kết hợp

• Chương 3: M ô hình quan hệ

• Chương 4: Chuyển từ mô hình thực thể kết hợp

sang mô hình quan hệ

• Chương 5: Ngôn ngữ truy vấn SQL

• Chương 6: Chuẩn hóa dữ liệu

• Chương 7: Thiết kế vật lý cơ sở dữ liệu

• Chương 8: Thủ tục lưu trữ và trigger

• Chương 9: Bảo mật và quyền của người dùng

• Tổng cộng: 45 LT+60TH

Trang 3

NỘI DUNG MÔN HỌC

CHƯƠNG TÊN CHƯƠNG LÝ THUYẾT THỰC HÀNH

Trang 4

TÀI LIỆU THAM KHẢO

• [1]Concepts of Database management – Philip

J Pratt & Joseph J Adamski – Thomson , 5th edition

• [2] Database Systems: Design, Implementation

& Management – Peter Rob & Carlos Coronel – Thomson, 6th edition

• [3] Programming Logic and Design – Joyce

Farrell – Thomson, 3rd Edition

• [4] Giáo trình cơ sở dữ liệu - Trường ĐH Công nghiệp TP HCM

[5] Các bài thực hành môn cơ sở dữ liệu-

Trường ĐH Công nghiệp TP HCM

• [6] Principles of database and knowledge base systems - JEFFREY D ULLMAN

Trang 5

Giới thiệu chung về lý thuyết

Cơ Sở Dữ Liệu (CSDL)

Chương 1

Trang 6

 Các khái niệm cơ bản và định nghĩa

 Hệ thống xử lý tập tin truyền thống

 Cách tiếp cận cơ sở dữ liệu

 Các thành phần của môi trường hệ quản trị cơ sở dữ liệu

 Các chức năng của hệ quản trị cơ sở

dữ liệu

 Kiến trúc cơ sở dữ liệu ba lược đồ

Nội dung

Trang 7

 D ữ liệu và thông tin

Dữ liệu (data):

• Là một mô tả hình thức thích hợp về những sự kiện(event), khái niệm (concept) hay chỉ thị để giúp con người giao tiếp, diễn giải hay xử lý hoặc thực hiện 1 cách tự động

• Dữ liệu được mô tả bất kỳ dạng nào, chẳng hạn

ký tự hay số gắn liền với ngữ nghĩa

Thông tin (Information):

• Là dữ liệu đã được qua xử lý nhằm đáp ứng yêu cầu của người sử dụng trong những hoàn cảnh cụ thể

• Dữ liệu trong ngữ cảnh

• Dữ liệu được tổng hợp / xử lý

1 Các khái niệm cơ bản và định nghĩa

Trang 8

Thông tin: dữ liệu trong ngữ cảnh

STT Mã sinh viên Họ và tên sinh viên Lớp

Tuổi

Dữ liệu

Trang 9

1 Các khái niệm cơ bản và định nghĩa

Trang 10

 Siêu dữ liệu ( metadata)

Siêu dữ liệu là dữ liệu dùng để mô tả các tính chất / đặc tính của dữ liệu khác (dữ liệu về dữ liệu).

 Các đặc tính: định nghĩa dữ liệu, cấu trúc dữ liệu, qui tắc / ràng buộc.

1 Các khái niệm cơ bản và định nghĩa

Trang 11

 Hệ thống xử lý tập tin( file processing system)

Hệ thống xử lý tập tin là tập hợp các chương trình dùng để lưu trữ, thao tác và truy xuất các tập tin

dữ liệu có kích thước lớn.

 Các tập tin dữ liệu được lưu trữ trong các thư mục

(folder).

2.1 Hệ thống xử lý tập tin theo lối cũ

2 Quá trình quản lý dữ liệu

Trang 12

 Các chương trình quản lý tập tin

 Các chương trình ứng dụng tạo các báo cáo từ các

dữ liệu được lưu trữ trong các tập tin.

 Con người: người quản lý, chuyên gia, người lập trình, người sử dụng cuối cùng.

 Các thủ tục: các lệnh và các qui tắc chi phối việc thiết kế và sử dụng các thành phần của phần mềm.

 Dữ liệu: tập hợp các sự kiện.

Trang 13

2 Quá trình quản lý dữ liệu

 Các chương trình xử lý tập tin

 Tạo cấu trúc tập tin.

 Thêm dữ liệu vào tập tin.

 Xóa dữ liệu của tập tin

 Sửa dữ liệu của tập tin.

 Liệt kê dữ liệu của tập tin.

Trang 14

Hệ thống xử lý tập tin theo lối cũ

 Phụ thuộc dữ liệu – chương trình (Program-Data

Dependence)

 Tất cả các chương trình ứng dụng phải duy trì siêu

dữ liệu (phần mô tả) của các tập tin mà chúng sử dụng.

 Dư thừa dữ liệu / Trùng lặp dữ liệu (Data

Redundancy / Duplication of Data)

 Các hệ thống / chương trình khác nhau có các bản

dữ liệu riêng biệt của cùng dữ liệu.

 Hạn chế việc dùng chung dữ liệu

 Mỗi ứng dụng có các tập tin riêng biệt, ít sử dụng chung dữ liệu với các ứng dụng khác.

Trang 15

Hệ thống xử lý tập tin theo lối cũ

 Nhược điểm của hệ thống xử lý tập tin

 Thời gian phát triển lâu

 Người lập trình phải thiết kế các dạng tập tin dữ liệu riêng và viết cách truy xuất tập tin cho mỗi ứng dụng mới.

 Chi phí bảo trì chương trình cao

 Các nhược điểm nêu trên làm cho việc bảo trì chương trình gặp nhiều khó khăn, thường chiếm khoảng 80% ngân sách phát triển HTTT.

Trang 16

 Mỗi người lập trình phải duy trì dữ liệu riêng biệt.

 Mỗi chương trình ứng dụng phải có mã lệnh cho siêu dữ liệu của mỗi tập tin.

 Mỗi chương trình ứng dụng phải có các chương trình con xử lý để đọc, thêm, sửa và xóa dữ liệu.

 Không có các điều khiển chung và phối hợp.

 Các dạng thức tập tin không có cùng chuẩn.

Phụ thuộc dữ liệu

Trang 17

 Tốn vùng nhớ để lưu trữ dữ liệu dư thừa.

 Gây ra các vấn đề khó về bảo trì dữ liệu.

Trang 18

Duplicate Data

Trang 19

2 Quá trình quản lý dữ liệu

2.2 Cách tiếp cận cơ sở dữ liệu

Trang 20

2 Quá trình quản lý dữ liệu

2.2 Cách tiếp cận cơ sở dữ liệu

Software 1

Software 2

Software 3 USER

DBMS The DBMS provides an interface between the user and the data

Database

administrator

Application

developer

Trang 21

 Cơ sở dữ liệu (CSDL)

Cơ sở dữ liệu là sự tập hợp có tổ chức các dữ liệu

có liên quan luận lý với nhau được lưu trữ trong các tập tin

 T ập dữ liệu này sẽ được lưu trữ trên các thiết bị thông tin lưu trữ như băng từ, đĩa…

nhằm thỏa mãn yêu cầu khai thác thông tin đồng thời của nhiều người dùng hay nhiều chương trình ứng dụng với nhiều mục đích

sử dụng khác nhau.

 Một hệ CSDL= CSDL+ hệ QTCSDL

Trang 22

 Hệ quản trị CSDL

DBMS – DataBase Management System

Hệ quản trị CSDL là tập hợp các chương trình, phần mềm dùng để quản lý cấu trúc và dữ liệu của CSDL và điều khiển truy xuất dữ liệu trong CSDL.

 Cho phép người sử dụng định nghĩa, tạo lập và bảo trì CSDL và cung cấp các truy xuất dữ liệu.

 Cung cấp một giao diện giưã người sử dụng và

dữ liệu.

Trang 23

3.1 Các cách nhìn khác nhau về dữ liệu

Logical (or Conceptal) Level

Các mức độ trừu tượng trong một DBMS

Sự trừu tượng đạt được thông qua mô tả mỗi mức dưới dạng một lược đồ bằng cách dùng một mô hình dữ liệu cụ thể

Trang 24

3.2 Mô hình dữ liệu, lược đồ và thể hiện

 Mô hình Dữ liệu – Data Model: Tập hợp các khái niệm mô tả:

 Dữ liệu và mối kết hợp giữa dữ liệu

 Ngữ nghĩa dữ liệu và ràng buộc dữ liệu

 Các thao tác trên Mô hình Dữ liệu: Các thao tác rút trích và cập nhật CSDL bằng cách tham chiếu đến các khái niệm của Mô

hình Dữ liệu

Trang 25

3.2 Mô hình dữ liệu, lược đồ và thể hiện

 Mô hình Quan hệ- Relational Model

 Mô hình Mạng-Network Model

 Mô hình Dữ liệu Phân cấp-Hierarchical Data Model

 Mô hình Hướng đối tượng-Object-oriented Data Models

 Mô hình Quan hệ Đối Relational Models

Trang 26

3.2 Mô hình dữ liệu, lược đồ và thể hiện

 Lược đồ CSDL-Database Schema: Mô tả

về CSDL Bao gồm mô tả về cấu trúc CSDL

và các ràng buộc trên CSDL đó

 Thể hiện CSDL-Database Instance: Dữ liệu hiện thời được lưu trong một CSDL ở một thời điểm nào đó, hay còn gọi là trạng thái CSDL- database state(hay thể hiện-

occurrence)

 Lược đồ CSDL rất ít khi thay đổi Trạng thái CSDL thay đổi mỗi khi CSDL được cập nhật

Trang 27

 M ột kho chứa dữ liệu được định nghĩa 1 lần, được duy trì và truy xuất bởi nhiều người dùng

 B ản chất tự mô tả của 1 hệ CSDL

 M ột DBMS catalog lưu trữ mô tả về CSDL(mô

tả này gọi là meta-data)

 CSDL+ m ô tả về cấu trúc và ràng buộc của CSDL

 Ph ần mềm DBMS làm việc với nhiều ứng dụng CSDL

 Sự tách biệt giữa chương trình và dữ liệu,

sự trừu tượng của dữ liệu

3.3 Các đặc điểm của Cách tiếp cận cơ sở dữ liệu

Trang 29

3.4 Các đối tượng dùng Cơ sở dữ liệu

 Những người lập trình : Những người này phải hiểu

rõ cấu trúc CSDL, cách lưu trữ dữ liệu

 Những người sử dụng không chuyên : Chỉ cần biết

nội dung CSDL và cách truy xuất

 Những người quản trị CSDL: Đối tượng này xuất

hiện do tính chất quá phức tạp của hệ quản trị CSDL, không phải ai cũng có toàn quyền đối với CSDL Những người thuộc đối tượng này có nhiệm

vụ cài đặt cấu trúc CSDL vào hệ quản trị CSDL, nhập dữ liệu ban đầu, giải quyết các biến cố xảy ra, backup , restore dữ liệu, sửa đối cấu trúc CSDL theo yêu cầu của người thiết kế, nắm các quyền ưu tiên, lập cơ chế bảo mật của hệ thống CSDL.

Trang 30

 D ữ liệu tạo thành một tài sản của tổ chức: Điều khiển tích hợp

Giảm tối thiểu sự dư thừa dữ liệu (data

Trang 31

 N âng cao an toàn dữ liệu

 Tăng hiệu suất phát triển ứng dụng

Độc lập dữ liệu – chương trình (data - program

independence).

DBMS chứa siêu dữ liệu (metadata), do đó các ứng

dụng không cần quan tâm đến các dạng thức của

dữ liệu.

 DBMS quản lý các truy vấn và cập nhật dữ liệu, do

đó ứng dụng không cần xử lý việc truy xuất dữ liệu.

3.5 Sự cần thiết của CSDL

Trang 32

 Các chức năng của hệ quản trị CSDL

 Lưu trữ, truy xuất và cập nhật dữ liệu

 Ngôn ngữ định nghĩa dữ liệu ( DDL - Data Definition Language)

Ngôn ngữ thao tác dữ liệu (DML - Data Manipulation Language).

Quản lý giao tác (transaction management).

Điều khiển tương tranh (concurrency control)

 Chép lưu(backup) và phục hồi dữ liệu(rescovery).

 Bảo mật dữ liệu(security)

Ngôn ngữ điều khiển dữ liệu (DCL - Data Control Language).

 Hỗ trợ truyền thông dữ liệu.

 Duy trì tính toàn vẹn / nhất quán dữ liệu.

 Cung cấp các tiện ích.

3.6 Các chức năng của hệ quản trị CSDL

Trang 33

 Các yêu cầu của 1 DBMS

 Kh ả năng đáp ứng cao

 Độ tin cậy cao

 Lưu lượng cao

 Thời gian phản hồi thấp

4 Nội dung và kiến trúc của DBMS

Trang 34

 Các yêu cầu của 1 DBMS

 Chu k ỳ sống lâu

 An toàn

 Xác thực (authentication), chứng thực (authorization), mã hóa (encryption)

4 Nội dung và kiến trúc của DBMS

Trang 35

 Phân loại DBMS:

 D ựa trên mô hình dữ liệu được dùng:

 Truyền thống: Quan hệ, mạng, phân cấp

 Đang thịnh hành: hướng đối tượng, Quan hệ Đối tượng

Trang 36

 Các thành phần của DBMS:

4 Nội dung và kiến trúc của DBMS

Ngôn ngữ định nghĩa dữ liệu: Tạo cấu trúc của bảng SinhVien

CREATE TABLE SinhVien

(MaSV NUMBER(7,0) NOT NULL,

HoTen VARCHAR(25) NOT NULL,

DiaChi VARCHAR(30),

NoiSinh VARCHAR(20),

CONSTRAINT PK_SinhVien PRIMARY KEY (MaSV));

Ngôn ngữ thao tác dữ liệu: Liệt kê mã, tên và địa chỉ của các sinh viên thuộc thành phố ‘HCM’

SELECT MaSV, HoTen, DiaChi

Trang 37

Mô hình thực thể kết hợp (Mô hình liên kết thực thể)

Chương 2

Trang 38

1 Quá trình thiết kế Cơ sở dữ liệu

 Thu thập và phân tích các yêu cầu

 Thiết kế mức quan niệm

 Ánh xạ thiết kế logic/mô hình dữ liệu

 Thiết kế mức vật lý

Trang 39

Phụ thuộc DBMS cụ thể

Trang 40

• Hiện nay mô hình dữ liệu quan hệ thường

được dùng trong các hệ quản trị CSDL, tuy

nhiên mô hình này không được trực quan

• Để thuận lợi trong việc thiết kế mô hình dữ liệu quan hệ, người ta thường dùng một mô hình trung gian đó là mô hình thực thể kết hợp.

2 Mô hình thực thể kết hợp

Trang 41

• Hiện nay mơ hình thực thế kết hợp được coi là

mơ hình chuẩn để thiết kế hệ thống thơng tin.

• Mô hình ER đôi khi còn được gọi là mô hình ý

niệm dữ liệu (Conceptual Data Model) hay đơn giản là mô hình dữ liệu (data model)

2 Mơ hình thực thể kết hợp

Trang 42

• Các thực thể và mối kết hợp nào cần quan tâm?

• Thông tin nào về thực thể và mối quan hệ giữa các thực thể cần được lưu trữ trong CSDL?

• Các ràng buộc nào cần được bảo đảm đối với thực thể và mối kết hợp?

Vấn đề khi thiết kế CSDL?

Trang 43

 L à một đối tượng hay sự vật của thế giới thực tồn tại cụ thể hay tồn tại quan niệm mà có thể phân biệt được với các đối tượng khác

 Ví dụ : Thực thể SINHVIEN Nguyễn Thị Lan Anh, LOP TCTH36D,….

2.1 Thực thể, Thuộc tính, Loại Thực thể,

Tập Giá trị

occurence):

Trang 44

 đối tượng có nhiều thể hiện trong CSDL.

 đối tượng có nhiều thuộc tính.

 đối tượng cần được mô hình hóa.

 Thực thể không nên là

 kết xuất của hệ CSDL (ví dụ bản báo cáo).

 Đặc điểm của thực thể là tính phân biệt (distinctness):

có thể phân biệt giữa thực thể này với thực thể khác.

Trang 45

 Là các đặc tính riêng dùng để mô tả 1 thực thể

 Ví dụ : Thực thể SINHVIEN có các thuộc tính MASV,TENSV, DCHI, PHAI, NGAYSINH

 Ví dụ : Thực thể sinh viên cụ thể có các thuộc tính:

Trang 46

2.1 Thực thể, Thuộc tính, Loại Thực thể, Tập Giá trị

Thuộc tính đơn (simple attribute) là thuộc tính

không bị phân rã thành nhiều thuộc tính khác.

Thuộc tính phức hợp (composite attribute) là

thuộc tính bị phân rã thành nhiều thuộc tính khác.

Trang 47

2.1 Thực thể, Thuộc tính, Loại Thực thể, Tập Giá trị

Thuộc tính đơn

Thuộc tính ph c hợp ức hợp

Trang 48

2.1 Thực thể, Thuộc tính, Loại Thực thể, Tập Giá trị

Thuộc tính đơn trị (single-valued attribute) là

thuộc tính chỉ chứa một giá trị.

Thuộc tính đa trị (multivalued attribute) là thuộc

tính chứa nhiều giá trị khác nhau thuộc một miền trị, được biểu diễn bằng hình bầu dục nét đôi

Trang 49

2.1 Thực thể, Thuộc tính, Loại Thực thể, Tập Giá trị

Thuộc tính chứa (stored attribute) là thuộc tính

mà giá trị của nó không được suy dẫn từ các thuộc tính khác.

Thuộc tính dẫn xuất (derived attribute) là thuộc

tính mà giá trị của nó được suy dẫn từ các thuộc tính khác, được biểu diễn bằng hình bầu dục nét đứt

Trang 50

2.1 Thực thể, Thuộc tính, Loại Thực thể, Tập Giá trị

 C òn được gọi là “Miền giá trị” của thuộc tính

 Tập các giá trị có thể được gán cho thuộc tính

đó đối với mỗi loại thực thể riêng

 Không được thể hiện trên giản đồ ER

Trang 51

2.1 Thực thể, Thuộc tính, Loại Thực thể, Tập Giá trị

Thuộc tính đơn trị

Thuộc tính đa trị Thuộc tính chứa Thuộc tính dẫn xuất

Trang 52

2.1 Thực thể, Thuộc tính, Loại Thực thể, Tập Giá trị

 Lo i thực thể (entity type, regular entity type,entity ại thực thể (entity type, regular entity type,entity class, generic entity) :

 Là tập hợp các thực thể thuộc cùng một loại (thường tương ứng với một bảng).

 Lo ại Thực thể thường được biểu diễn bởi một hình chữ nhật, và tên của thực thể được đặt trong hình chữ nh ật

 Tên của các loại thực thể (trong một hệ thống) phải khác nhau trong một mơ hình thực thể kết hợp

Trang 53

2.1 Thực thể, Thuộc tính, Loại Thực thể, Tập Giá trị

 T p thực thể (entity set): ập thực thể (entity set):

 Là tập hợp các thực thể thuộc cùng một loại n ào

đĩ ở một thời điểm bất kỳ

Trang 54

2.1 Thực thể, Thuộc tính, Loại Thực thể, Tập Giá trị

NHANVIEN(Ten, Tuoi, Luong)

CONGTY(Ten, Diachi, Giamdoc)

ENTITY TYPE:

N1: Tran A, 24, 2TrN2: Nguyen B, 34, 3Tr

N3: Le C, 56, 4Tr

C1: ABC, HCMC, Nguyen BC2: MNO, HNC, Tran A

ENTITY SET:

(Extension)

Trang 55

Khóa / thuộc tính xác định

key / identifier

Khóa là một thuộc tính hoặc tổ hợp các thuộc tính dùng để xác định duy nhất một thể hiện của một kiểu thực thể.

Thuộc tính khóa là thuộc tính ở trong khóa.

key attribute / prime attribute / identifier attribute

 Thuộc tính khóa được gạch dưới

Thuộc tính không khóa (non-key attribute) là

thuộc tính không ở trong khóa.

 Thuộc tính không khóa còn được gọi là thuộc tính

mô tả (descriptor).

2.2 Khóa của loại Thực thể

Trang 56

 Khóa đơn và khóa phức hợp

Khóa đơn (simple key) là khóa chỉ có một thuộc

Khóa dự tuyển là khóa của một kiểu thực thể.

 Một kiểu thực thể có ít nhất một khóa dự tuyển.

Trang 57

2.2 Khóa của loại Thực thể

primary key

Khóa chính là một khóa tiêu biểu trong các khóa

dự tuyển của một kiểu thực thể.

primary key

 Khóa chính dùng để liên kết giữa các thực thể.

Ngày đăng: 12/05/2014, 11:54

HÌNH ẢNH LIÊN QUAN

Hình Dữ liệu - Nhập môn cơ sở dữ liệu
nh Dữ liệu (Trang 24)
Bảng có thể có cùng miền giá trị với thuộc tính trong lược - Nhập môn cơ sở dữ liệu
Bảng c ó thể có cùng miền giá trị với thuộc tính trong lược (Trang 83)
Bảng là cơ bản để phát sinh một lược đồ quan hệ từ một - Nhập môn cơ sở dữ liệu
Bảng l à cơ bản để phát sinh một lược đồ quan hệ từ một (Trang 83)
Bảng sysmessage - Nhập môn cơ sở dữ liệu
Bảng sysmessage (Trang 327)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w