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ả

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ố: /-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
1
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 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.
2
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ư ọc có kiến thức, i h
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 ây dựng hàm, thủ tục, trigger, , cách x
bảo mật sở dữ liệu,... Tuy rất nhiều cố gắng trong công tác biên soạn nhưng
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
3
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 i ...................................................... 9 th ệu hệ quản trị cơ sở dữ liệu SQL Server
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 Server ......................................................... 13SQL
4.1. ....................................................... 14 Công cụ SQL Server Management Studio
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 H NH ............................................................................................... 23À THỰC À
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. ........................................................................................................ 25Bộ điều hướng
3. Quản lý cơ sở dữ liệu ............................................................................................. 26
3.1. ................................................................ 26 Tạo cơ sở dữ liệu trong SQL Server
3.2. ............................................................................................. 27 Xóa cơ sở dữ liệu
3.3. ......................................................................................... 27 Attach cơ sở dữ liệu
3.4. ......................................................................................... 28 Detach cơ sở dữ liệu
3.5. ............................................................................. 28 Tạo bảng trong SQL Server
3.6. ..................................................... 30 Tạo quan hệ trong SQL Server (Diagrams)
3.7. ....................................................................... 30 Nhập dữ liệu trong SQL Server
4. Bảo trì cơ sở dữ lịêu ............................................................................................... 31
4.1. .................................................................................... 31 Tạo một backup device
4.2. Backup database ............................................................................................... 32
4.3. ...................................................................................... 33 Phục hồi cơ sở dữ liệu
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
4
BÀI T ............................................................................................... 36ẬP THỰC HÀNH
B I ................................................................. 37À 3: THAO TÁC DỮ LIỆU VỚI T-SQL
1. .................................................................. 37Ngôn ngữ thao tác trên dữ liệu (DML)
2. L ng t b n t i ............................................................. 37a chọn các trườ ảng đang tồ
3. Truy v n n p - ................................................................................. 38 i, k t hế JOIN
4. Chèn dữ ệu vào bả li ng Lnh Insert ..................................................................... 40
5. C p nh t d u trong b ng - L nh Update ........................................................... 40 li
6. Xóa dữ liu trong bng - Lnh Delete .................................................................... 41
7. Truy v n TOP- ........................................................ 41 k và tìm kiếm văn bản đầy đ
BÀI TẬP TH ............................................................................................... 41ỰC HÀNH
B I -SQL .............................................................. 44À 4: ĐỊNH NGHĨA DỮ LIỆU VỚI T
1. Ngôn ngữ định nghĩa dữ liu (DDL)...................................................................... 44
2. Qu d u ............................................................................................. 44ản lý cơ sở li
2.1. o m t database: ............................................................................................ 44 T
2.2. h m t database: ........................................................................................ 44 Attac
2.3. ................................................................................................... 47 Xóa Database
3. Các kiểu d liu ..................................................................................................... 47
4. Qu ng .......................................................................................................... 49ản lý bả
4.1. o b ng ........................................................................................................... 49 T
4.2. ng ..................................................................................... 51 Thay đổi cấu trúc bả
5. Qu ............................................................... 52ản lý các đố ợng SQL Server kháci tư
5.1. B ng o ................................................................................................ 52 View
5.2. m - Index ............................................................................................... 57 Ch c
5.3. - Diagrams ......................................................................................... 62 Lượ c đ
BÀI TẬP THỰC HÀNH ............................................................................................... 64
B I ........................................................................... 65À 5: BẢO MẬT CƠ SỞ DỮ LIỆU
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. ......................................................................................... 65 Quản lý người dùng
2.2. ................................................................................................. 67 Quản lý vai trò
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
5
6. Các lựa chọn khác về bảo mật ................................................................................ 70
6.1. .................................................................................................. 70 Thu hồi quyền
6.2. ..................................................... 70 Thu hồi quyền trên đối tượng cơ sở dữ liệu
6.3. ............................................................... 72 Thu hồi quyền thực thi các câu lênh:
BÀI TẬP THỰC HÀNH ............................................................................................... 73
B I ............................ 74À 6: TẠO THỦ TỤC VÀ HÀM ĐỊNH NGHĨA NGƯỜI DÙNG
1. Khái niệm xử lý bó - Batch .................................................................................... 74
2. Câu lệnh điều khiển ................................................................................................ 74
2.1. ............................................................................... 74 Cấu trúc lênh IF, IF .. Else
2.2. ........................................................................................... 74 Cấu trúc lặp While
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. ....................................................................................................... 76 Tạo thủ tục
4.2. ................................................................................................. 77 Sửa đổi thủ tục
4.3. ....................................................................................................... 78 Xóa thủ tục
4.4. .................................................................... 78 Giá trị trả về trong thủ tục lưu trữ
4.5. .............................................................................. 78 Sử dụng tham số OUTPUT
4.6. ................................................................................... 79 Sử dụng lệnh RETURN
4.7. ........................................................................... 79 Tham số với giá trị mặc định
4.8. .............................................................................. 80 Thực thi các thủ tục lưu trữ
5. Thực thi các hàm định nghĩa người dùng .............................................................. 80
5.1. ........................................................................... 80 Hàm vô hướng (Scalar UDF)
5.2. ............................................................................ 82 Hàm nội tuyến (Inline UDF)
5.3. .................... 82 Hàm bao gồm nhiều câu lệnh bên trong (Multi statement UDF)
5.4. ................................................................................................... 83 Thay đổi hàm
5.5. ........................................................................................................... 84 Xóa hàm
6. Sự khác nhau của các thủ tục và hàm người dùng ................................................. 84
6.1. ............................................................................................... 84 Cách định nghĩa
6.2. ................................................................................... 84 Cách gọi thủ tục và hàm
BÀI TẬP THỰC HÀNH ............................................................................................... 85
B I ................................................................................................. 86À 7: TẠO TRIGGER
1. Giới thiệu về Trigger .............................................................................................. 86
1.1. .................................................................................. 86 Các đặc điểm của trigger
6
1.2. ....................................................................... 86 Các trường hợp sử dụng trigger
1.3. ........................................................................................ 86 Khả năng của trigger
2. Tạo, thay thế, loại bỏ trigger .................................................................................. 87
3. Làm việc với Trigger.............................................................................................. 87
3.1. .................................... 90 Kích hoạt trigger dựa trên sự thay đổi dữ liệu trên cột
3.2. ............................................ 90 Sử dụng trigger và giao dịch (TRANSACTION)
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 ......................................................... 95À 8: THIẾT LẬP RÀNG BUỘC TOÀN VẸN
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. ............................................................................ 96 Tạo ràng buộc Primary Key:
4.2. .................................................................................. 97 Tạo ràng buộc duy nhất:
4.3. ............................................................................... 97 Tạo ràng buộc khóa ngoại:
4.4. ............................................................................ 98 Tạo ràng buộc NOT NULL:
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 .............................................................. 100À 9: QUẢN LÝ GIAO DỊCH VÀ KHÓA
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. .............................................................................................. 103 Chọn kiểu khoá
5.2. ................................................................................................ 104 Đặt mức khoá.
5.3. ................................................................................... 104 Khoá chết (DeadLock)
CÂU HỎI ÔN TẬP ..................................................................................................... 105
B I ......................................................... 106À 10: SỬ DỤNG CÁC DỊCH VỤ DỮ LIỆU
7
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 ............................................................................................. 114ẬP THỰC HÀNH
TÀI LIỆU THAM KHẢO ........................................................................................... 115
8
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í: 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 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:
9
B I 1: SQL À XÁC ĐỊNH VAI TRÒ VÀ CHỨC NĂNG CỦA SERVER
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 i th ệu hệ quản trị cơ sở dữ liệu SQL Server
SQL Serv ler à một hệ t ống uản sở iệu (Reh q d l lational Database
Manag nt System (RDBMS) ) s d -SQL t i ient eme ụng Transact để rao đổi dliệu g ữa Cl
và SQL Server. M t RDBMS bao g m databases, database engine và các ng dụng ng
để q l duản ý liệu và các hận kb p hác nh ong RDBMS. au tr
SQL Server được tối ưu để có thể chạy trên i trường cơ sở dữ liệu rất lớn (Very
Large Database En n nt t v h v ng l c cho hviro me ) lên đến Tera-By e à t phục ú àng
ng user. Microsoft SQL Servàn er t ết ợp với cáchk h server khác n Mi osocr ft
Internet Information Serv (IIS), E- Commerce Server, Proxy Server er
Ng ng c (SQL) v c q d i u quan h l ôn ữ truy vấn ấu trúc à ác hệ uản trị sở ữ l à
m t t nh n n t ng k thu t quan tr ng trong c ng nghi m y t nh. rong ững ô ệp á í Cho đến
nay, th n i r ng SQL x l n ng chu n t d li u. ó đã được em à gôn rong sở Các
h q tr uản ơ c sở d liu qu an hệ ươ th ng mại hiện như Oracle, Serv InformSQL er, ix,
DB2,... ch n l m ng s n ph đều SQL à ngôn ữ cho ẩm của mình
Vậy thực s SQL là gì? T i sao lại các quan tr ng trong h qu n tr sở
d li u? c nh g nh th n o? c s SQL ó th làm được ững ì ư ế à đượ d sao trong ụng ra
các h qu n t rị cơ sở d li qu h ? N dung c h ng s cung ệu an ội ủa c ươ này cấp cho
ch ta n t quan v v m t s v n n úng cái hìn ổng SQL à đề liê quan.
SQL, Str vi c a ết tắt uctur ng ge (ng ng ced Query La ua ôn truy vấn u
t l s d ng t ch q l v uy rúc), à công c để ức, uản ý à tr xut d l u l u t t iệu đ ợc ư rữ rong
c s l u. l m t h th ng ng b m t p c l d ác dữ iệ SQL à ống ôn ao gồ ác câu ệnh sử ụng để
tươ ng tác v i s li d u quan h ệ.
Tên gọi ô ó à ê tưở đế ng n ng truy vấn c c u trúc ph n n o làm c ng ta li n ng n
m t c g c n ng d ng truy d li trong c s d li u. Th s ôn (ngô ữ) ù để xuất ệu các ơ ực
m n i, k n SQL v xa mà ó hả nă g của ượt so với t c ng c uy xu u, mô tr ất dữ li ặc dù đây là
m c ban u khi x d ng n n v truy x d li u v n l m t đích đầ SQL được ây ê à uất còn à
| 1/116

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. Gii 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