1. Trang chủ
  2. » Giáo Dục - Đào Tạo

tiểu luận cuối kỳ môn cơ sở dữ liệu nội dung các bài thực hành

49 2 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Nội dung các bài thực hành
Tác giả Vũ Thành Hưng
Người hướng dẫn ThS. Nguyễn Danh Tú
Trường học Trường Đại học Bách Khoa Hà Nội
Chuyên ngành Cơ sở dữ liệu
Thể loại Tiểu luận cuối kỳ
Năm xuất bản 2021
Thành phố Hà Nội
Định dạng
Số trang 49
Dung lượng 4,82 MB

Nội dung

9 BÀI THỰC HÀNH TUẦN 2 : THỰC HÀNH CÁC CÂU LỆNH TRUY VẤN DỮ LIỆU TRÊN CSDL MẪU ..... https://www.sqlservertutorial.net/sql-server-sample-VŨ THÀNH HƯNG 20173523 9 Bài 2: Tạo được một sơ s

Trang 1

VIỆN TOÁN ỨNG DỤNG VÀ TIN HỌC

TIỂU LUẬN CUỐI KỲ MÔN CƠ SỞ DỮ LIỆU

NỘI DUNG CÁC BÀI THỰC HÀNH

Giáo viên hướng dẫn: ThS NGUYỄN DANH TÚ Sinh viên thực hiện: VŨ THÀNH HƯNG

Mã số sinh viên: 20173523 Lớp: Hệ thống thông tin quản lý – K62

Hà Nội 2021

Trang 2

VŨ THÀNH HƯNG 20173523 2

MỤC LỤC

LỜI NÓI ĐẦU 5

BÀI THỰC HÀNH TUẦN 1: THIẾT LẬP MÔI TRƯỜNG THỰC HÀNH 6

Bài 1: Thiết lập được hệ quản trị cơ sở dữ liệu trên máy tính cá nhân 6

Bài 2: Tạo được một sơ sở dữ liệu mẫu để làm việc 9

BÀI THỰC HÀNH TUẦN 2 : THỰC HÀNH CÁC CÂU LỆNH TRUY VẤN DỮ LIỆU TRÊN CSDL MẪU 10

Bài 1: SELECT, ORDER BY, WHERE, SELECT DISTINCT 10

Bài 2: AND, OR, IN 10

Bài 3: BETWEEN,LIKE, LIMIT 11

Bài 4: IS NULL, Table & Column Aliases 12

Bài 5: Joins, Inner join, Left join, Right join, Self join, Cross join 12

Bài 6: GROUP BY, HAVING, ROLLUP 15

Bài 7: Subquery, Derived Tables, EXISTS 16

Bài 8: UNION, MINUS, INTERSECT 17

BÀI THỰC HÀNH TUẦN 3: TÌM HIỂU ĐƯỢC CẤU TRÚC CỦA MỘT CƠ SỞ DỮ LIỆU 19

Bài 1: Tên các bảng 21

Bài 2: Tên các cột của một bảng và tính chất các cột đó 21

BÀI THỰC HÀNH TUẦN 4: THỰC HÀNH XÂY DỰNG CẤU TRÚC CỦA MỘT CƠ SỞ DỮ LIỆU 22

Bài 1: Thiết lập bảng dữ liệu (PK, UK, DataType, Null, constraint) 22

Trang 3

VŨ THÀNH HƯNG 20173523 3

Bài 2: Thiết lập quan hệ dữ liệu (Relationship) 22

Bài 3: Thiết lập khung nhìn (Views) 23

Bài 4: Thiết lập thủ tục và hàm (procedure & function) 24

BÀI THỰC HÀNH TUẦN 5: THỰC HÀNH CÁC CÂU LỆNH THAO TÁC DỮ LIỆU 25

Bài 1: Thực hiện các câu lệnh cập nhật (insert, update, delete dữ liệu) 25

Bài 2: Cập nhật do liệu từ 1 bảng excel qua sinh tự động SQL Script 27

Bài 3: Cập nhật dữ liệu từ một bảng khác 27

Bài 4: Cập nhật dữ liệu qua một procedure 28

BÀI THỰC HÀNH TUẦN 6: THỰC HÀNH CÁC CÂU LỆNH SỬ DỤNG HÀM TRONG TRUY VẤN 29

Bài 1: Aggregate Functions, Math Functions, Comparison Function 29

Bài 2: Control Flow Functions and Expressions 30

Bài 3: Window Functions 31

Bài 4: Date Functions, String Functions 32

Bài 5: Thực hành đánh chỉ mục dữ liệu 32

BÀI THỰC HÀNH TUẦN 7: THỰC HÀNH THIẾT KẾ CƠ SỞ DỮ LIỆU LƯU TRỮ ĐƠN HÀNG 33

Bài 1+2: Xây dựng lược đồ R-E, E-R 33

Bài 3: Thiết kế trên hệ quản trị cơ sở dữ liệu 34

Bài 4: In diagram cơ sở dữ liệu 35

THỰC HÀNH CÂU LỆNH SQL 35

Trang 4

VŨ THÀNH HƯNG 20173523 4

Bài 1: Viết câu lệnh thêm dữ liệu và bảng 36

Bài 2: Viết câu lệnh truy vấn 36

Bài 3: Thay đổi cấu trúc CSDL 37

BÀI THỰC HÀNH TUẦN 8: 38

Bài 1 38

Bài 2 40

Bài 3 41

Bài 4 42

Bài 5 + 6 44

BÀI THỰC HÀNH TUẦN 9: THỰC HÀNH QUẢN TRỊ CSDL 46

Bài 1: Start, Stop, and Restart MySQL Server 46

Bài 2: Users, Roles, and Privileges 47

TỔNG KẾT 48

TÀI LIỆU THAM KHẢO 49

Trang 5

VŨ THÀNH HƯNG 20173523 5

LỜI NÓI ĐẦU

Bài báo cáo dưới đây là tổng hợp các bài tập thực hành trong 9 tuần liên tiếp học môn Cơ sở dữ liệu của em Mặc dù chưa hoàn thành được xuất sắc nhưng em đã cố gắng tìm hiểu và làm gần như đầy đủ các bài được giao Em xin cảm ơn thầy Nguyễn Danh Tú vì những tiết học bổ ích và thú vị cũng như sự chỉ bảo của thầy trong suốt thời gian qua Nhờ đó mà em đã hiểu rõ hơn về bộ môn này và tích thêm nhiều kiến thức mới lạ Trong quá trình thực hành, cũng như là trong quá trình làm bài báo cáo khó tránh khỏi sai sót, rất mong thầy bỏ qua Đồng thời, do trình độ cũng như kinh nghiệm thực tiễn còn hạn chế nên bài thực hành của em còn đơn giản và không tránh khỏi những thiếu sót, em rất mong nhận được ý kiến đóng góp của thầy để em học thêm được nhiều kinh nghiệm và sẽ hoàn thành tốt hơn bài báo cáo sau này

Lời cuối cùng, em xin kính chúc thầy nhiều sức khỏe, thành công và hạnh phúc Em xin chân thành cảm ơn thầy!

Sinh viên thực hiện

Hưng

Vũ Thành Hưng

Trang 6

Input: Click vào đường link sau đây và chọn tải bản phù hợp với máy tính

Output: Sau khi hoàn các bước được hướng dẫn khi cài MySQL, ta có thể kiểm tra bằng một số lệnh thông qua command line

Trang 7

VŨ THÀNH HƯNG 20173523 7

Trang 8

VŨ THÀNH HƯNG 20173523 8

4 Cài đặt một database mẫu: database/

Trang 9

https://www.sqlservertutorial.net/sql-server-sample-VŨ THÀNH HƯNG 20173523 9

Bài 2: Tạo được một sơ sở dữ liệu mẫu để làm việc

Trang 10

VŨ THÀNH HƯNG 20173523 10

BÀI THỰC HÀNH TUẦN 2 : THỰC HÀNH CÁC CÂU LỆNH TRUY VẤN DỮ LIỆU TRÊN CSDL MẪU

Bài 1: SELECT, ORDER BY, WHERE, SELECT DISTINCT

Input: Cơ sở dữ liệu mẫu classicmodels database

Output: customerName, contaclasName, contacfirsNam, phone, tình trạng (state) và tên thành phố (city) tương ứng với điều kiện state khác NULL từ bảng customers

Bài 2: AND, OR, IN

Input: cơ sở dữ liệu mẫu classicmodels database

Output: tên thành phố, số điện thoại và postalCode với điều kiện country là UK

Trang 11

VŨ THÀNH HƯNG 20173523 11

Bài 3: BETWEEN,LIKE, LIMIT

Input: cơ sở dữ liệu mẫu classicmodels database

Output: truy vấn dữ liệu theo yêu cầu như trong ảnh chương trình chạy

Trang 12

VŨ THÀNH HƯNG 20173523 12

Bài 4: IS NULL, Table & Column Aliases

Input: cơ sở dữ liệu mẫu classicmodels database

Output: truy vấn dữ liệu theo yêu cầu như trong ảnh chương trình chạy

Bài 5: Joins, Inner join, Left join, Right join, Self join, Cross join

Input: cơ sở dữ liệu mẫu classicmodels database

Output: truy vấn dữ liệu theo yêu cầu như trong ảnh chương trình chạy

LEFT JOIN: Giống như INNER JOIN ở phía trên nhưng thay bằng LEFT JOIN

RIGHT JOIN: Liên kết bên phải của bảng offices với bảng employees trên cột officeCode rồi lấy ra các thông tin officeCode, firstName và jobTitle

Trang 14

VŨ THÀNH HƯNG 20173523 14

Trang 15

VŨ THÀNH HƯNG 20173523 15

Bài 6: GROUP BY, HAVING, ROLLUP

Input: cơ sở dữ liệu mẫu classicmodels database

Output: truy vấn dữ liệu theo yêu cầu như trong ảnh chương trình chạy

1 Group by

2 Having

Trang 16

VŨ THÀNH HƯNG 20173523 16

Bài 7: Subquery, Derived Tables, EXISTS

Input: cơ sở dữ liệu mẫu classicmodels database

Output: truy vấn dữ liệu theo yêu cầu như trong ảnh chương trình chạy

1 Derived Tables

2 Subquery

Trang 17

VŨ THÀNH HƯNG 20173523 17

Bài 8: UNION, MINUS, INTERSECT

Input: cơ sở dữ liệu mẫu classicmodels database

• UNION: Lấy ra tập hợp các giá trị id của bảng customers và bảng orders

• MINUS: Lấy ra tập hợp các giá trị id của bảng customers sao cho itLimit nhỏ hơn 100000

cred-Output: truy vấn dữ liệu theo yêu cầu như trong ảnh chương trình chạy

1 Union

UNION: Dùng toán tử UNION cho 2 tập customerNumber từ bảng cus-tomer và orders

2 Minus

Trang 18

VŨ THÀNH HƯNG 20173523 18

MINUS: Dùng left join trên customers vào chính nó dựa trên cột customer-Number

Trang 19

VŨ THÀNH HƯNG 20173523 19

BÀI THỰC HÀNH TUẦN 3: TÌM HIỂU ĐƯỢC CẤU TRÚC CỦA MỘT CƠ SỞ DỮ LIỆU

XÂY DỰNG LƯỢC ĐỒ (DIAGRAM)

Bài: Sử dụng công cụ vẽ được lược đồ

Input: Vẽ, đọc và phân tích lược đồ

Output: Hiển thị lược đồ trên MySQL Workbench, phân tích lược đồ

trên file text

Trang 20

VŨ THÀNH HƯNG 20173523 20

TRUY VẤN CÁC BẢNG HỆ THỐNG TRONG CSDL

Input: Truy vấn tên các bảng, các cột của một bảng và tính chất các cột đó

Output: Hiển thị các bảng hệ thống

Trang 21

VŨ THÀNH HƯNG 20173523 21

Bài 1: Tên các bảng

Bài 2: Tên các cột của một bảng và tính chất các cột đó

Trang 22

VŨ THÀNH HƯNG 20173523 22

BÀI THỰC HÀNH TUẦN 4: THỰC HÀNH XÂY DỰNG CẤU TRÚC CỦA MỘT CƠ SỞ DỮ LIỆU

Bài 1: Thiết lập bảng dữ liệu (PK, UK, DataType, Null, constraint)

Input: Thiết lập các ràng buộc (PK, UK, Datatype, ) và tạo ra các quan hệ giữa các bảng dữ liệu

Output: Một cơ sở dữ liệu đã được định nghĩa

Bài 2: Thiết lập quan hệ dữ liệu (Relationship)

Input: Thiết lập các ràng buộc (PK, UK, Datatype, ) và tạo ra các quan hệ giữa các bảng dữ liệu

Output: Một cơ sở dữ liệu đã được định nghĩa

Trang 23

VŨ THÀNH HƯNG 20173523 23

Bài 3: Thiết lập khung nhìn (Views)

Input: Tạo view cho danh sách những địa chỉ email mà khách hàng có thể liên hệ Ootput: Bảng gồm id khách hàng, tên khách hàng và email của nhân viên phục vụ khách hàng

Trang 24

VŨ THÀNH HƯNG 20173523 24

Bài 4: Thiết lập thủ tục và hàm (procedure & function)

Input: Lấy ra tất cả bản ghi của bảng KH

Output: Trả về bảng KH

Trang 25

VŨ THÀNH HƯNG 20173523 25

BÀI THỰC HÀNH TUẦN 5: THỰC HÀNH CÁC CÂU LỆNH THAO TÁC DỮ LIỆU

Bài 1: Thực hiện các câu lệnh cập nhật (insert, update, delete dữ liệu)

Input: Dùng các bảng trong MySQL sinh ra các câu lệnh INSERT, UPDATE, DELETE

Output: Các bảng đã được thay đổi

1 Delete

Trang 26

VŨ THÀNH HƯNG 20173523 26

2 Insert

3 Update

Trang 27

VŨ THÀNH HƯNG 20173523 27

Bài 2: Cập nhật do liệu từ 1 bảng excel qua sinh tự động SQL Script

Bài 3: Cập nhật dữ liệu từ một bảng khác

Input: Xét bảng studentmanagement thêm class, jion student on classID

Output: Bảng studentmanagement đã được cập nhật

Trang 28

VŨ THÀNH HƯNG 20173523 28

Bài 4: Cập nhật dữ liệu qua một procedure

Input: Dùng delimiter Tạo một procedure để update CPA, GPA float bắt đầu set CPA, where semester = semesterNow

Output: Bảng scores đã được update

Trang 29

• Hàm AVG: Tính giá trung bình của từng dòng sản phẩm

• Hàm SUM: Tính tổng giá trị số lượng các sản phẩm đã được đặt hàng

• Hàm MAX: Tìm giá sản phẩm cao nhất của từng dòng sản phẩm

Output:

• Hàm AVG: Bảng gồm 3 cột productLine, amount và average_Price

• Hàm SUM: Bảng gồm 3 cột productCode, productName và total

• Hàm MAX: Bảng gồm 2 cột productLine và MAX

Trang 30

VŨ THÀNH HƯNG 20173523 30

Bài 2: Control Flow Functions and Expressions

Input: Bảng product_id trong database classicmodels

Output: Các thông tin thỏa mãn yêu cầu

Trang 31

VŨ THÀNH HƯNG 20173523 31

Bài 3: Window Functions

Input: Bảng product_id trong database classicmodels

Output: Các thông tin thỏa mãn yêu cầu

Trang 32

VŨ THÀNH HƯNG 20173523 32

Bài 4: Date Functions, String Functions

Input: Bảng customer_id trong database classicmodels

Output: Các thông tin thỏa mãn yêu cầu

Bài 5: Thực hành đánh chỉ mục dữ liệu

Trang 33

VŨ THÀNH HƯNG 20173523 33

BÀI THỰC HÀNH TUẦN 7: THỰC HÀNH THIẾT KẾ CƠ SỞ

DỮ LIỆU LƯU TRỮ ĐƠN HÀNG

Bài 1+2: Xây dựng lược đồ R-E, E-R

Input: Xây dựng lược đồ E-R, R-E

Output: Tạo được CSDL lưu trữ đơn hàng

Trang 34

VŨ THÀNH HƯNG 20173523 34

Bài 3: Thiết kế trên hệ quản trị cơ sở dữ liệu

Input: Database classicmodels

Output: Các dữ liệu trong các bảng

Trang 35

VŨ THÀNH HƯNG 20173523 35

Bài 4: In diagram cơ sở dữ liệu

Input: Từ E-R, R-E

Output: Thu được diagram cơ sở dữ liệu

THỰC HÀNH CÂU LỆNH SQL

Trang 36

VŨ THÀNH HƯNG 20173523 36

Bài 1: Viết câu lệnh thêm dữ liệu và bảng

Bài 2: Viết câu lệnh truy vấn

Trang 37

VŨ THÀNH HƯNG 20173523 37

Bài 3: Thay đổi cấu trúc CSDL

Trang 42

VŨ THÀNH HƯNG 20173523 42

Bài 4

Input: U = {H,I,K,L,M,N} và F = {I → LM, HI → K, K → N, KN → I}

Output: a, Một khóa tối thiểu của R

b, Kết luận tính mất mát thông tin của R sau khi tách

c, Chuẩn hóa về dạng 3NF

Trang 43

VŨ THÀNH HƯNG 20173523 43

Trang 44

VŨ THÀNH HƯNG 20173523 44

Bài 5 + 6

Input: U = {A,B,C,D,E,F,G,H} và F = {A → C, AB → G, B → DE, G → H, GH

→ A}

Output: a, Một khóa tối thiểu của R

b, Kết luận tính mất mát thông tin của R sau khi tách

c, Chuẩn hóa về dạng 3NF

Trang 45

VŨ THÀNH HƯNG 20173523 45

Trang 46

VŨ THÀNH HƯNG 20173523 46

BÀI THỰC HÀNH TUẦN 9: THỰC HÀNH QUẢN TRỊ CSDL

Bài 1: Start, Stop, and Restart MySQL Server

1 Start

2 Stop

Trang 47

VŨ THÀNH HƯNG 20173523 47

Bài 2: Users, Roles, and Privileges

1 Users

2 Privileges

Trang 48

VŨ THÀNH HƯNG 20173523 48

TỔNG KẾT

Những điều mà đã làm được và học được sau khi thực hành bài tập các tuần:

- Thiết lập MySQL và SQL Server trên máy tính (Lap top)

- Thiết lập được môi trường làm việc với cơ sở dữ liệu từ máy chủ đơn vị

- Biết cách truy vấn được dữ liệu theo yêu cầu

- Hiểu và xây dựng được cấu trúc cơ sở dữ liệu (xây dựng R-E, E-R) và tạo cơ

sở dữ liệu lưu trữ

- Chuyển đổi được dữ liệu từ các cơ sở dữ liệu theo cách đơn giản (Export, import; copy-paste; procedure, backup restore)

- Biết sử dụng các hàm có sẵn trong hệ quản trị cơ sở dữ liệu

- Tối ưu thời gian thực hiện truy vấn qua Index

- Thiết kế được cơ sở dữ liệu với mục đích cụ thể ở mức độ đơn giản

- Tạo các cấu trúc và đối tượng trên cơ sở dữ liệu

Những điều mà em chưa làm được:

- Chuyển đổi được dữ liệu từ các cơ sở dữ liệu qua sinh tự động SQL Script và qua attaPH detach

- Thiết lập thực hiện công việc tự động (Job)

- Bảo mật & phân quyền dữ liệu

- Chưa hiểu và trình bày được tối ưu qua Partition, chưa hiểu Transaction

Trang 49

VŨ THÀNH HƯNG 20173523 49

TÀI LIỆU THAM KHẢO

• Slide bài giảng của thầy Nguyễn Danh Tú

• Ngoài ra còn một số bài viết liên quan đến cơ sở dữ liệu trên internet

Ngày đăng: 06/08/2024, 20:47

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w