CNTT-MĐ 17-Quản trị cơ sở dữ liệu với SQL Server TC - Tài liệu tham khảo | Đại học Hoa Sen
CNTT-MĐ 17-Quản trị cơ sở dữ liệu với SQL Server TC - Tài liệu tham khảo | Đại học Hoa Sen và thông tin bổ ích giúp sinh viên tham khảo, ôn luyện và phục vụ nhu cầu học tập của mình cụ thể là có định hướng, ôn tập, nắm vững kiến thức môn học và làm bài tốt trong những bài kiểm tra, bài tiểu luận, bài tập kết thúc học phần, từ đó học tập tốt và có kết quả
Môn: Morphology and Syntax (ANH303DE02)
Trường: Đại học Hoa Sen
Thông tin:
Tác giả:
Preview text:
UBND TỈNH ĐỒNG NAI
TRƯỜNG CAO ĐẲNG CÔNG NGHỆ CAO ĐỒNG NAI GIÁO TRÌNH
MÔ ĐUN: QUẢN TRỊ CƠ SỞ DỮ LIỆU VỚI SQL SERVER
NGHỀ: CÔNG NGHỆ THÔNG TIN (UDPM)
TRÌNH ĐỘ: TRUNG CẤP
(Ban hành kèm theo Quyết định số: /QĐ-TCĐ ngày…….tháng….năm
................... của Hiệu trưởng Trường Cao đẳng Công nghệ cao Đồng Nai)
ĐỒNG NAI, NĂM 2021
TUYÊN BỐ BẢN QUYỀN
Tài liệu này thuộc loại sách giáo trình nên các nguồn thông tin có thể được phép
dùng nguyên bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo.
Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh doanh thiếu
lành mạnh sẽ bị nghiêm cấm. 1 LỜI GIỚI THIỆU
Môđun Quản trị cơ sở dữ liệu SQL Server thuộc khối các môn học chuyên ngành
trong chương trình đào tạo trình độ trung cấp, cao đẳng, giúp người học có kiến thức,
kỹ năng xác định vai trò của hệ quản trị cơ sở dữ liệu khi khai thác và quản trị cơ sở dữ
liệu. Giáo trình Quản trị cơ sở dữ liệu SQL Server được biên soạn theo chương đào tạo
nghề Công Nghệ Thông Tin (Ứng dụng phần mềm) của Trường Cao đẳng Công nghệ
cao Đồng Nai. Mục đích biên soạn giáo trình nhằm cung cấp cho người học những kiến
thức cơ bản về Quản trị cơ sở dữ liệu SQL Server, cách xây dựng hàm, thủ tục, trigger,
bảo mật cơ sở dữ liệu,... Tuy có rất nhiều cố gắng trong công tác biên soạn nhưng có
thể giáo trình này còn nhiều thiếu sót. Chúng tôi xin trân trọng tiếp thu tất cả những ý
kiến đóng góp của các bạn học sinh, cũng như của các đồng nghiệp trong lĩnh vực này
để hoàn thiện giáo trình, phục vụ tốt hơn cho việc dạy và học. Xin chân thành cảm ơn!.
Nội dung mô đun gồm 10 bài:
Bài 1: Xác định vai trò chức năng của SQL Server
Bài 2: Xác định chức năng của bộ công cụ Management Studio
Bài 3: Thao tác dữ liệu với T-SQL
Bài 4: Định nghĩa dữ liệu với T-SQL
Bài 5: Bảo mật cơ sở dữ liệu SQL Server
Bài 6: Tạo thủ tục và hàm định nghĩa người dùng Bài 7: Xây dựng Trigger
Bài 8: Thiết lập ràng buộc toàn vẹn
Bài 9: Quản lý giao dịch và khóa
Bài 10: Sử dụng các dịch vụ dữ liệu
Đồng Nai, ngày tháng năm 2021 Tham gia biên soạn
1. Lý Hoàng Hà (Chủ biên) 2. Nguyễn Lê Tình 3. Phạm Khánh Sơn 2 MỤC LỤC
LỜI GIỚI THIỆU ............................................................................................................ 2
MỤC LỤC ....................................................................................................................... 3
GIÁO TRÌNH MÔ ĐUN ................................................................................................. 8
BÀI 1: XÁC ĐỊNH VAI TRÒ VÀ CHỨC NĂNG CỦA SQL SERVER ...................... 9 1. Giới t i
h ệu hệ quản trị cơ sở dữ liệu SQL Server ...................................................... 9
2. Mô hình dữ liệu quan hệ ........................................................................................ 10
3. Kiến trúc của một Hệ quản trị CSDL ..................................................................... 12
4. Các dịch vụ và các công cụ của SQL Se
rver ......................................................... 13
4.1. Công cụ SQL Server Management Studio ....................................................... 14
4.2. SQL Server Books Online ............................................................................... 15
5. Ngôn ngữ lập trình trong SQL Server .................................................................... 15
6. Sự phát triển của SQL Server................................................................................. 15
BÀI TẬP THỰC HÀNH ............................................................................................... 23
BÀI 2: XÁC ĐỊNH CHỨC NĂNG CỦA BỘ CÔNG CỤ MANAGEMENT STUDIO
....................................................................................................................................... 24
1. Môi trường quản lý tích hợp .................................................................................. 24
2. Bộ điều hướng ........................................................................................................ 25
3. Quản lý cơ sở dữ liệu ............................................................................................. 26
3.1. Tạo cơ sở dữ liệu trong SQL Server ................................................................ 26
3.2. Xóa cơ sở dữ liệu ............................................................................................. 27
3.3. Attach cơ sở dữ liệu ......................................................................................... 27
3.4. Detach cơ sở dữ liệu......................................................................................... 28
3.5. Tạo bảng trong SQL Server ............................................................................. 28
3.6. Tạo quan hệ trong SQL Server (Diagrams) ..................................................... 30
3.7. Nhập dữ liệu trong SQL Server ....................................................................... 30
4. Bảo trì cơ sở dữ lịêu ............................................................................................... 31
4.1. Tạo một backup device .................................................................................... 31
4.2. Backup database ............................................................................................... 32
4.3. Phục hồi cơ sở dữ liệu ...................................................................................... 33
5. Tạo và thực thi các truy vấn, trình soạn thảo truy vấn ........................................... 34
6. Làm việc với dữ liệu mẫu, kịch bản ....................................................................... 35 3
BÀI TẬP THỰC HÀNH ............................................................................................... 36
BÀI 3: THAO TÁC DỮ LIỆU VỚI T-SQ
L ................................................................. 37
1. Ngôn ngữ thao tác trên dữ liệu (DML) .................................................................. 37
2. Lựa chọn các trường từ bảng đang tồn tại ............................................................. 37
3. Truy vấn nội, kết hợp - JOIN ................................................................................. 38 4. Chèn dữ l ệ
i u vào bảng – Lệnh Insert ..................................................................... 40
5. Cập nhật dữ liệu trong bảng - Lệnh Update ........................................................... 40
6. Xóa dữ liệu trong bảng - Lệnh Delete .................................................................... 41
7. Truy vấn TOP-k và tìm kiếm văn bản đầy đủ ........................................................ 41
BÀI TẬP THỰC HÀNH ............................................................................................... 41
BÀI 4: ĐỊNH NGHĨA DỮ LIỆU VỚI T-SQL .............................................................. 44
1. Ngôn ngữ định nghĩa dữ liệu (DDL)...................................................................... 44
2. Quản lý cơ sở dữ liệu ............................................................................................. 44
2.1. Tạo một database: ............................................................................................ 44
2.2. Attach một database: ........................................................................................ 44
2.3. Xóa Database ................................................................................................... 47
3. Các kiểu dữ liệu ..................................................................................................... 47
4. Quản lý bảng .......................................................................................................... 49
4.1. Tạo bảng ........................................................................................................... 49
4.2. Thay đổi cấu trúc bảng ..................................................................................... 51
5. Quản lý các đối tượng SQL Server khác ............................................................... 52
5.1. View – Bảng ảo ................................................................................................ 52
5.2. Chỉ mục - Index ............................................................................................... 57
5.3. Lược đồ - Diagrams ......................................................................................... 62
BÀI TẬP THỰC HÀNH ............................................................................................... 64
BÀI 5: BẢO MẬT CƠ SỞ DỮ LIỆU ........................................................................... 65
1. Mô hình bảo mật cơ sở dữ liệu SQL Server .......................................................... 65
2. Quản lý việc nhập, người dùng và các vai trò ........................................................ 65
2.1. Quản lý người dùng ......................................................................................... 65
2.2. Quản lý vai trò ................................................................................................. 67
3. Quản lý sự cho phép ............................................................................................... 67
4. Bảo mật bằng ngôn ngữ điều khiển dữ liệu ........................................................... 67
5. Thực thi việc bảo mật thông qua đối tượng cơ sở dữ liệu ..................................... 68 4
6. Các lựa chọn khác về bảo mật ................................................................................ 70
6.1. Thu hồi quyền .................................................................................................. 70
6.2. Thu hồi quyền trên đối tượng cơ sở dữ liệu ..................................................... 70
6.3. Thu hồi quyền thực thi các câu lênh: ............................................................... 72
BÀI TẬP THỰC HÀNH ............................................................................................... 73
BÀI 6: TẠO THỦ TỤC VÀ HÀM ĐỊNH NGHĨA NGƯỜI DÙNG ............................ 74
1. Khái niệm xử lý bó - Batch .................................................................................... 74
2. Câu lệnh điều khiển ................................................................................................ 74
2.1. Cấu trúc lênh IF, IF .. Else ............................................................................... 74
2.2. Cấu trúc lặp While ........................................................................................... 74
3. Định nghĩa và gán biến .......................................................................................... 76
4. Thực thi các thủ tục lưu trữ trong (Stored Procedure) ........................................... 76
4.1. Tạo thủ tục ....................................................................................................... 76
4.2. Sửa đổi thủ tục ................................................................................................. 77
4.3. Xóa thủ tục ....................................................................................................... 78
4.4. Giá trị trả về trong thủ tục lưu trữ .................................................................... 78
4.5. Sử dụng tham số OUTPUT .............................................................................. 78
4.6. Sử dụng lệnh RETURN ................................................................................... 79
4.7. Tham số với giá trị mặc định ........................................................................... 79
4.8. Thực thi các thủ tục lưu trữ .............................................................................. 80
5. Thực thi các hàm định nghĩa người dùng .............................................................. 80
5.1. Hàm vô hướng (Scalar UDF) ........................................................................... 80
5.2. Hàm nội tuyến (Inline UDF) ............................................................................ 82
5.3. Hàm bao gồm nhiều câu lệnh bên trong (Multi statement UDF) .................... 82
5.4. Thay đổi hàm ................................................................................................... 83
5.5. Xóa hàm ........................................................................................................... 84
6. Sự khác nhau của các thủ tục và hàm người dùng ................................................. 84
6.1. Cách định nghĩa ............................................................................................... 84
6.2. Cách gọi thủ tục và hàm ................................................................................... 84
BÀI TẬP THỰC HÀNH ............................................................................................... 85
BÀI 7: TẠO TRIGGER ................................................................................................. 86
1. Giới thiệu về Trigger .............................................................................................. 86
1.1. Các đặc điểm của trigger .................................................................................. 86 5
1.2. Các trường hợp sử dụng trigger ....................................................................... 86
1.3. Khả năng của trigger ........................................................................................ 86
2. Tạo, thay thế, loại bỏ trigger .................................................................................. 87
3. Làm việc với Trigger.............................................................................................. 87
3.1. Kích hoạt trigger dựa trên sự thay đổi dữ liệu trên cột .................................... 90
3.2. Sử dụng trigger và giao dịch (TRANSACTION) ............................................ 90
4. Người dùng TRIGGER .......................................................................................... 91
5. Hiệu suất xem xét ................................................................................................... 93
BÀI TẬP THỰC HÀNH ............................................................................................... 94
BÀI 8: THIẾT LẬP RÀNG BUỘC TOÀN VẸN ......................................................... 95
1. Các loại ràng buộc dữ liệu toàn vẹn ....................................................................... 95
2. Ràng buộc tính toàn vẹn của dữ liệu ...................................................................... 95
3. Định nghĩa toàn vẹn dữ liệu ................................................................................... 95
4. Thể loại ràng buộc .................................................................................................. 96
4.1. Tạo ràng buộc Primary Key: ............................................................................ 96
4.2. Tạo ràng buộc duy nhất: .................................................................................. 97
4.3. Tạo ràng buộc khóa ngoại: ............................................................................... 97
4.4. Tạo ràng buộc NOT NULL: ............................................................................ 98
5. Vô hiệu hóa ràng buộc trong SQL ......................................................................... 98
6. Sử dụng mặc định và các nguyên tắc ..................................................................... 98
7. Lựa chọn phương thức ràng buộc .......................................................................... 99
BÀI TẬP THỰC HÀNH ............................................................................................... 99
BÀI 9: QUẢN LÝ GIAO DỊCH VÀ KHÓA .............................................................. 100
1. Giao dịch .............................................................................................................. 100
2. Xem lại giao dịch đăng nhập trong SQL Server .................................................. 100
3. Quản lý các giao dịch ........................................................................................... 101
4. Quản lý khóa ........................................................................................................ 102
5. Xác định về cấu trúc khóa của SQL Server ......................................................... 103 5.1. Chọn kiểu kho
á .............................................................................................. 103
5.2. Đặt mức khoá. ................................................................................................ 104
5.3. Khoá chết (DeadLock) ................................................................................... 104
CÂU HỎI ÔN TẬP ..................................................................................................... 105
BÀI 10: SỬ DỤNG CÁC DỊCH VỤ DỮ LIỆU ......................................................... 106 6
1. Chuyển đổi cơ sở dữ liệu từ các nguồn cơ sở dữ liệu .......................................... 106
2. Tạo cơ sở dữ liệu SQL Server từ nguồn cơ sở dữ liệu Access ............................ 106
3. Xuất cơ sở dữ liệu SQL Server sang cơ sở dữ liệu Access .................................. 110
4. Dịch vụ SQL Server Reporting Services ............................................................. 110
BÀI TẬP THỰC HÀNH ............................................................................................. 114
TÀI LIỆU THAM KHẢO ........................................................................................... 115 7 GIÁO TRÌNH MÔ ĐUN
Tên mô đun: QUẢN TRỊ CƠ SỞ DỮ LIỆU VỚI SQL SERVER
Mã mô đun: CNTT-MĐ 17
Thời gian thực hiện mô đun: 75 giờ; (Lý thuyết: 24 giờ; Thực hành, thí nghiệm, thảo
luận, bài tập: 47 giờ; Kiểm tra: 04 giờ).
I. Vị trí, tính chất của mô đun:
- Vị trí: là môn học chuyên môn nghề của chương trình đào tạo Cao đẳng nghề
Công nghệ thông tin (Ứng dụng phần mềm), được bố trí sau các môn học cơ sở nghề.
- Tính chất: Là mô đun bắt buộc trong chương trình đào tạo Cao đẳng nghề Công
nghệ thông tin (ứng dụng phần mềm).
II. Mục tiêu mô đun: ❖ Kiến thức:
• Xác định vai trò của hệ quản trị cơ sở dữ liệu khi khai thác và quản trị cơ sở dữ liệu;
• Trình bày khái niệm về mô hình dữ liệu quan hệ: bảng/quan hệ, bản ghi/dòng dữ
liệu, thuộc tính (attributes), miền giá trị (domain), khóa (primary key, foreign key);
• Nhận diện kiến trúc bên trong của SQL Server 2008; các thành phần và dịch vụ;
• Phân biệt các ngôn ngữ lập trình tích hợp trong SQL Server 2008;
• Xác định cách xây dựng hàm, thủ tục, trigger;
• Xác định vai trò của khoá trong các giao dịch; ❖ Kỹ năng:
• Cài đặt và cấu hình được SQL Server 2008;
• Thực hiện thành thạo các thao tác quản trị tài khoản người dùng và tài khoản
nhóm đối với hệ thống SQL Server 2008;
• Bảo vệ tài nguyên dữ liệu trên các hệ thống SQL Server 2008;
• Xây dựng chính xác các điều kiện truy vấn;
• Thiết kế được một số truy vấn cơ sở dữ liệu bằng các công cụ;
• Xây dựng được một số hàm, thủ tục và trigger giúp cho việc truy cập, khai thác
cơ sở dữ liệu được hiệu quả hơn;
• Quản lý được các giao dịch của hệ thống;
• Sử dụng được một số dịch vụ của SQL server 2008;
❖ Năng lực tự chủ và trách nhiệm:
• Có khả năng làm việc độc lập và làm việc nhóm.
• Có khả năng lập kế hoạch và lập qui trình thực hiện công việc.
• Ứng dụng tốt 5S và an toàn trong quá trình làm việc.
III. Nội dung mô đun: 8
BÀI 1: XÁC ĐỊNH VAI TRÒ VÀ CHỨC NĂNG CỦA SQL SERVE R Mục tiêu:
− Xác định được sự tiến hoá của hệ quản trị cơ sở dữ liệu SQL Server;
− Xác định được vai trò của SQL Server trong các ứng dụng quản trị dữ liệu;
− Trình bày được các khái niệm về mô hình dữ liệu quan hệ;
− Phân biệt được kiến trúc bên trong của hệ quản trị cơ sở dữ liệu SQL Server;
− Giải thích chi tiết cấu trúc dữ liệu của một cơ sở dữ liệu có sẵn;
− Thiết kế một cơ sở dữ liệu cho bài toán cụ thể;
− Có thái độ làm việc cẩn thận, khoa học, chính xác.
1. Giới thiệu hệ quản trị cơ sở dữ liệu SQL Server
SQL Server là một hệ thống quản lý cơ sở dữ liệu (Relational Database
Management System (RDBMS) ) sử dụng Transact-SQL để trao đổi dữ liệu giữa Client
và SQL Server. Một RDBMS bao gồm databases, database engine và các ứng dụng dùng
để quản lý dữ liệu và các bộ phận khác nhau trong RDBMS.
SQL Server được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn (Very Large Database Environm n e t) lên đến Tera-B t
y e và có thể phục vụ cùng lúc cho hàng
ngàn user. Microsoft SQL Server có thể kết hợp với các server khác như Microsoft
Internet Information Server (IIS), E- Commerce Server, Proxy Server…
Ngôn ngữ truy vấn có cấu trúc (SQL) và các hệ quản trị cơ s ở dữ liệu quan hệ là
một trong những nền tảng kỹ thuật quan trọng trong công nghiệp máy tính. Cho đến
nay, có thể nói rằng SQL đã được xem là ngôn ngữ chuẩn trong cơ s ở dữ liệu. Các
hệ quản trị cơ sở dữ liệu quan hệ thương mại hiện có như Oracle, SQ L Server, Informix, DB2,... đều chọn SQ
L làm ngôn ngữ cho sản phẩm của mình
Vậy thực sự SQL là gì? Tại sao nó lại quan trọng trong các hệ quản trị cơ sở
dữ liệu? SQL có thể là
m được những gì và như thế nào? Nó được sử dụng ra sao trong
các hệ quản trị cơ sở dữ liệu quan hệ? Nộ i dung của chương này sẽ cung cấp cho
chúng ta cái nhìn tổng quan về SQ
L và một số vấn đề liên quan.
SQL, viết tắ t của Structured Query Language (ngôn ngữ truy vấn có cấu trúc), là công c
ụ sử dụng để tổ chức, quản lý và truy xuất dữ liệu đuợ c lưu trữ trong các cơ sở dữ li u ệ . SQ
L là một hệ thống ngôn ngữ bao gồm tập các câu lệnh sử dụng để
tương tác với cơ sở dữ liệu quan hệ.
Tên gọi ngôn ngữ truy vấn có cấu trúc phần nào làm chúng ta liên tưởng đến
một công cụ (ngôn ngữ) dùng để truy xuất dữ liệu trong các cơ sở dữ liệu. Thực sự
mà nói, khả năng của SQL vượ txa so với một công cụ truy xuất dữ liệu, mặc dù đây là
mục đích ban đầu khi SQL được xây dựng nên và truy xuất dữ liệu vẫn còn là một 9