Nội dung được tác giả trình bày cô động, dễ hiểu kèm theo các bước hướng dẫn thực hành chi tiết theo nguyên tắc quan tâm đến kết quả đầu ra, khả năng tự học và kỹ năng cần thiết để HSSV [r]
Trang 1UBND TỈNH BÀ RỊA – VŨNG TÀU
TRƯỜNG CAO ĐẲNG KỸ THUẬT CÔNG NGHỆ
GIÁO TRÌNH
MÔ ĐUN HỆ QUẢN TRỊ CSDL MS SQL SERVER
NGHỀ: CÔNG NGHỆ THÔNG TIN TRÌNH ĐỘ: TRUNG CẤP
(Ban hành kèm theo Quyết định số: ……/QĐ-CĐKTCN, ngày … tháng … năm 20…… của Hiệu trưởng Trường Cao đẳng Kỹ thuật Công nghệ BR-VT)
BÀ RỊA – VŨNG TÀU, NĂM 2020
Trang 2TUYÊN BỐ BẢN QUYỀN
Nhằm đáp ứng nhu cầu học tập và nghiên cứu cho giảng viên và sinh viênnghề Công nghệ Thông tin trong trường Cao đẳng Kỹ thuật Công nghệ Bà Rịa –Vũng Tàu, chúng tôi đã thực hiện biên soạn tài liệu Hệ quản trị CSDL MS SQLServer này
Tài liệu được biên soạn thuộc loại giáo trình phục vụ giảng dạy và học tập,lưu hành nội bộ trong Nhà trường nên các nguồn thông tin có thể được phépdù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 kinhdoanh thiếu lành mạnh sẽ bị nghiêm cấm
Trang 3LỜI GIỚI THIỆU
Giáo trình “Hệ quản trị CSDL MS SQL Server” được biên soạn dựa trênkhung chương trình đào tạo Trung cấp nghề Công nghệ Thông tin đã đượcTrường Cao đẳng Kỹ thuật Công nghê Bà Rịa – Vũng Tàu phê duyệt
Tác giả đã nghiên cứu một số tài liệu, công nghệ hiện đại kết hợp với kinhnghiệm làm việc thực tế để viết nên giáo trình này Nội dung được tác giả trìnhbày cô động, dễ hiểu kèm theo các bước hướng dẫn thực hành chi tiết theonguyên tắc quan tâm đến kết quả đầu ra, khả năng tự học và kỹ năng cần thiết đểHSSV sử dụng các phát biểu T-SQL: tạo CSDL, tạo user, truy vấn dữ liệu…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ảnnhóm đối với hệ thống MS SQL Server, đáp ứng nhu cầu thực tế của doanhnghiệp
Nội dung giáo trình được chia thành 11 bài, trong đó:
Bài 1: Tổng quan về mô hình Client/Server
Bài 2: Hệ quản trị cơ sở dữ liệu Microsoft SQL Server
Bài 3: Ngôn ngữ định nghĩa và thao tác dữ liệu (T-SQL)
Bài 4: Thủ tục lưu trữ
Bài 5: Quản lý giao tác
Bài 6: Bảo mật trong SQL Server
Trong quá trình biên soạn, chắc chắn giáo trình còn nhiều thiếu sót Tác giảrất mong nhận được ý kiến đóng góp của quý thầy/cô và các em học sinh, sinhviên để tiếp tục hoàn thiện hơn
Xin chân thành cảm ơn quý đồng nghiệp, bạn bè đã có những ý kiến đónggóp trong quá trình biên soạn giáo trình này
Bà Rịa – Vũng Tàu, ngày …… tháng …… năm ………
Tham gia biên soạn
1 Nguyễn Phạm Ái Hương – Chủ biên
Trang 4MỤC LỤC
LỜI GIỚI THIỆU 1
MỤC LỤC 3
BÀI 1: TỔNG QUAN VỀ MÔ HÌNH CLIENT/SERVER 11
1 Các kiến thức tổng quan về CSDL 19
1.1 Mô hình dữ liệu quan hệ 19
1.2 Bảng 19
1.3 Khóa của bảng 20
1.4 Mối quan hệ và khóa ngoài 20
2 Các giai đoạn phát triển của một hệ quản trị CSDL 21
3 Giới thiệu về mô hình Client Server và các hệ QTCSDL phục vụ cho mô hình Client Server 22
4 Các đặc trưng của mô hình Client Server 22
5 Tổng quan về cấu trúc Client /Server 23
6 Các mô hình dữ liệu của hệ thống Client /Server 23
6.1 Mô hình CSDL tập trung 23
6.2.Mô hình CSDL theo kiểu file - server 24
6.3 Mô hình xử lý từng phần CSDL 24
6.4 Mô hình CSDL Client Server 25
CÂU HỎI, BÀI TẬP 26
BÀI 2: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MS SQLServer 27
1 Giới thiệu hệ QTCSDL MS SQL Server 27
1.1 SQL là ngôn ngữ CSDL quan hệ 27
1.2 Vai trò của SQL 28
2 Cài đặt MS SQL Server 29
BM/QT08/P.ĐT/02/06 Ban hành lần: 3
Trang 52.1 Link download để cài đặt 29
2.2 Các phiên bản của SQL 29
2.2.3 Các bước cài đặt 30
3 Các công cụ của MS SQL Server 33
4 Làm việc với công cụ Enterprise Manager 34
4.1 Tạo CSDL 27
4.2 Tạo bảng 35
4.3 Tạo mối quan hệ giữa các bảng 37
4.4 Nhập dữ liệu cho bảng 37
5 Các dịch vụ của SQL 38
5.1 Khởi động dịch vụ trong MS SQL Server 38
5.2 Khởi động dịch vụ trong MS SQL Server 40
CÂU HỎI, BÀI TẬP 40
BÀI 3: NGÔN NGỮ ĐỊNH NGHĨA VÀ THAO TÁC DỮ LIỆU 43
1 Tạo cơ sở dữ liệu 43
2 Tạo bảng 43
2.1 Kiểu dữ liệu 44
2.2 Kiểu dữ liệu NULL 46
3 Sửa bảng 47
4 Toàn vẹn dữ liệu 49
4.1 Ràng buộc PRIMARY KEY 50
4.2 Ràng buộc UNIQUE 52
4.3 Ràng buộc FOREIGN KEY 53
5 Thêm dữ liệu 56
5.1 Bổ sung từng dòng dữ liệu với lệnh insert 56
5.2 Bổ sung nhiều dòng dữ liệu từ bảng khác 57
Trang 66 Xóa 58
6.1 Xóa dữ liệu trong 1 bảng 58
6.2 Xóa dữ liệu khi điều kiện liên quan đến nhiều bảng 58
6.3 Sử dụng truy vấn con trong câu lệnh Delete 59
6.4 Xóa toàn bộ dữ liệu trong bảng 59
7 Cập nhật (Update) 59
7.1 Sử dụng cấu trúc CASE trong câu lệnh UPDATE 60
7.2 Điều kiện cập nhật dữ liệu liên quan đến nhiều bảng 61
7.3 Câu lệnh UPDATE với truy vấn con 61
8 Chọn lọc (SELECT) 62
8.1 Mệnh đề FROM 63
8.2 Danh sách chọn trong câu lệnh SELECT 64
8.3 Chỉ định điều kiện trong truy vấn dữ liệu 70
8.4 Tạo mới bảng dữ liệu từ kết quả của câu lệnh SELECT 74
8.5 Sắp xếp kết quả truy vấn 74
8.6 Phép hợp 76
8.7 Phép nối 78
CÂU HỎI, BÀI TẬP 87
BÀI 4: THỦ TỤC LƯU TRỮ 93
1 Khái niệm về thủ tục lưu trữ 93
2 Tạo thủ tục lưu trữ: 94
3 Lời gọi thủ tục 96
4 Sử dụng biến trong thủ tục 97
5 Giá trị trả về của tham số trong thủ tục lưu trữ 98
6 Sửa đổi thủ tục 99
7 Xóa thủ tục 100
Trang 7CÂU HỎI, BÀI TẬP 101
BÀI 5: QUẢN LÝ GIAO TÁC 102
1 Định nghĩa TRIGGER 102
2 Sử dụng mệnh đề IF UPDATE trong TRIGGER 104
3 ROLLBACK TRANSACTION 106
4 Sử dụng TRIGGER trong trường hợp câu lệnh INSERT , UPDATE, DELETE có tác động đến nhiều dòng dữ liệu 108
4.1 Sử dụng truy vấn con 108
4.2 Sử dụng biến con trỏ 111
CÂU HỎI, BÀI TẬP 113
BÀI 6: BẢO MẬT TRONG SQL SERVER 115
1 Cơ chế an toàn dữ liệu 115
2 Khung nhìn (VIEW) như cơ chế bảo vệ dữ liệu 117
2.1 Tạo VIEW trong SQL 117
2.2 Xóa VIEW trong SQL upload.123doc.net 3 Tạo và quản lý người dùng (USER) upload.123doc.net 4 Tạo ROLES và sử dụng các loại ROLES 120
4.1 Bảo mật cấp Database Engine 121
4.2 Bảo mật chi tiết cấp Database 123
5 Tạo USER : cấp quyền, thu quyền trên SERVER, DB và OBJECT 124
5.1 Cấp quyền 124
5.2 Thu quyền 129
CÂU HỎI, BÀI TẬP 133
TÀI LIỆU THAM KHẢO 134
Trang 8CHƯƠNG TRÌNH MÔ ĐUN
( Ban hành kèm theo Quyết định số /QĐ–CĐKTCN ngày tháng năm của Hiệu
trưởng Trường Cao đẳng Kỹ thuật Công nghệ Bà Rịa – Vũng Tàu)
Tên mô đun: Hệ quản trị CSDL MS SQL Server
Mã mô đun: MD15
Thời gian thực hiện mô đun: 90 giờ; (Lý thuyết: 27 giờ; Thực hành, thí nghiệm,
thảo luận, bài tập: 55giờ; Kiểm tra: 8 giờ)
Vị trí, tính chất của mô đun:
- Vị trí: được giảng dạy sau khi học xong các module Cơ sở dữ liệu, Quản trị Cơ sở
dữ liệu Access, Quản trị mạng
- Tính chất: Là mô đun chuyên ngành của nghề công nghệ thông tin, trình bày cáckiến trúc của hệ quản trị cơ sở dữ liệu MS SQL Server, cách làm việc và tương tácgiữa các thành phần kiến trúc trong hệ thống Kết nối hệ thống mạng để sử dụng hệthống cơ sở dữ liệu
Mục tiêu mô đun:
- Về kiến thức:
+ Trình bày mô hình cơ sở dữ liệu Client/Server
+ Nêu các đặc trưng của mô hình Client/Server
+ Trình bày cú pháp và công dụng của các phát biểu T-SQL: tạo CSDL, tạouser
+ Thực hiện các ràng buộc dữ liệu: Check, primary
+ Trình bày cú pháp ngôn ngữ lập trình SQL để định nghĩa được các hàm+ Phân tích trigger, các nguyên lý quản lý giao tác cho CSDL
+ Biết chọn giải pháp cơ chế an toàn dữ liệu
- Về kỹ năng:
+ Kết nối hệ thống mạng để sử dụng hệ thống cơ sở dữ liệu
Trang 9+ 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àikhoản nhóm đối với hệ thống MS SQL Server.
+ Thiết lập cấu hình và giải quyết các vấn đề thường xảy ra trên mạng khi sửdụng truy cập cơ sở dữ liệu
+ Bảo vệ tài nguyên dữ liệu trên các hệ thống MS SQL Server
+ Sao lưu và phục hồi đồng thời lập được lịch sao lưu tự động trongHQTCSDL SQL Server
+ Rèn luyện tính cẩn thận, kiên trì, sáng tạo, độc lập và hoạt động nhóm
+ Bảo đảm an toàn và vệ sinh cho người và thiết bị trong phòng máy.
Nội dung mô đun:
Số
TT Tên các bài trong mô đun
Thời gian (giờ) Tổng
số
Lý thuyết
Thực hành, thí nghiệm, thảo luận, bài tập
Kiểm tra
1 Bài 1: Tổng quan về mô hình
2 Các giai đoạn phát triển của một
hệ quản trị cơ sở dữ liệu
Trang 103 Các công cụ của MS SQL Server 1.3 0.3 1 0
4 Làm việc với công cụ Enterprise
Trang 115 Bài 5: Quản lý giao tác 16 6 7 3
4 Sử dụng Trigger trong trường
hợp câu lệnh Insert, Update, và Delete có tác động đến nhiều dòng dữ liệu
2 Khung nhìn (view) như các cơ chế bảo vệ dữ liệu
4 Tạo roles và sử dụng các loại roles trên server, DB và Object
2 Nội dung chi tiết
Bài 1: Tổng quan về mô hình Client/Server Thời gian:
04giờMục tiêu:
- Hiểu rõ mô hình cơ sở dữ liệu Client/Server
- Nắm vững các đặc trưng của mô hình Client/Server
- Nghiêm túc, tự giác trong học tập
Nội dung:
1 Các kiến thức tổng quan về cơ sở dữ liệu
2 Các giai đoạn phát triển của một hệ quản trị cơ sở dữ liệu
Trang 123 Giới thiệu về mô hình Client server và các hệ quản trị cơ sở dữ liệu phục vụcho mô hình Client/Server
4 Các đặc trưng của mô hình Client/server
5 Tổng quan về cấu trúc Client/Server
6 Các mô hình dữ liệu của hệ thống Client/Server
Bài 2: Hệ quản trị cơ sở dữ liệu Microsoft SQL Server Thời gian: 10
giờMục tiêu:
- Trình bày lịch sử phát triển của hệ quản trị cơ sở dữ liệu MS SQL Server
- Cài đặt được phần mềm hệ quản trị cơ sở dữ liệu MS SQL Server
- Sử dụng được các công cụ hổ trợ của hệ quản trị cơ sở dữ liệu MS SQLServer
- Cấu hình được hệ thống quản trị cơ sở dữ liệu trên Server nội bộ
- Nghiêm túc, tự giác trong học tập
- Đảm bảo an toàn cho nguời và thiết bị
Nội dung:
1 Giới thiệu hệ quản trị cơ sở dữ liệu MS SQL Server
2 Cài đặt MS SQL Server
3 Các công cụ của MS SQL Server
4 Làm việc với công cụ Enterprise Manager
Trang 13Bài 3: Ngôn ngữ định nghĩa và thao tác dữ liệu (T-SQL) Thời gian:
24 giờMục tiêu:
⁻ Trình bày cú pháp và công dụng của các phát biểu
⁻ Thực hiện được việc truy vấn dữ liệu trên câu lệnh T-SQL đúng yêu cầu
⁻ Tạo được các loại khóa: Khóa chính, khóa phụ, khóa ngoài;
⁻ Các ràng buộc dữ liệu: Check, primary,
⁻ Thực hiện các thao tác an toàn với máy tính
⁻ Nghiêm túc, tự giác trong học tập
⁻ Đảm bảo an toàn cho nguời và thiết bị
Nội dung:
1 Tạo cơ sở dữ liệu (Create Database)
2 Tạo bảng (Create Table)
3 Sửa bảng (Alter Table)
4 Toàn vẹn dữ liệu (Contrains)
5 Thêm dữ liệu (Insert)
- Sử dụng được ngôn ngữ lập trình SQL để định nghĩa được các hàm
- Cài đặt thủ tục nội tại
- Bẫy lỗi, cách dùng con trỏ trong xử lý dữ liệu
- Thực hiện các thao tác an toàn với máy tính
Nội dung:
1 Khái niệm về thủ tục lưu trữ
Trang 14⁻ Hiểu được thế nào là trigger
⁻ Hiểu các nguyên lý quản lý giao tác
⁻ Quản lý truy xuất cạnh tranh, phục hồi sau sự cố
⁻ Thực hiện các thao tác an toàn với máy tính
⁻ Sử dụng được các lệnh tạo user
⁻ Sử dụng được các lệnh cấp phát, thu hồi và từ chối quyền đối với người sửdụng
⁻ Thực hiện các thao tác an toàn với máy tính
Nội dung:
1 Cơ chế an toàn dữ liệu
Trang 152 Khung nhìn (view) như các cơ chế bảo vệ dữ liệu
3 Tạo và quản lý User
4 Tạo roles và sử dụng các loại roles trên server, DB và Object
5 Tạo User: cấp quyền, thu quyền trên server, DB và Object
IV Điều kiện thực hiện mô đun
1 Phòng học chuyên môn hóa/nhà xưởng: máy tính được kết nối mạng, 1hv/máy.Máy tính được cài đặt MS SQL Server 2012, RAM tối thiểu 4GB, ổ cứng còn trốngtối thiểu 525 MB
2 Trang thiết bị máy móc: máy chiếu, bảng viết
3 Học liệu, dụng cụ, nguyên vật liệu:
4 Các điều kiện khác:
V Nội dung và phương pháp đánh giá
1 Nội dung:
- Kiến thức:
+ Đánh giá thông qua bài kiểm tra viết đạt được các yêu cầu sau:
+ Định nghĩa Database, table và ràn buộc dữ liệu
+ Mô tả được các kiểu dữ liệu trong SQL Server
+ Trình bày được cú pháp các câu lệnh Select, Insert, Update, Delete
+ Sao lưu, phục hồi dữ liệu database
+ Export /inport dữ liệu từ SQL sang ứng dụng khác
+ Thêm user , gán quyền và thu hồi quyền
- Kỹ năng:
+ Đánh giá thông qua bài kiểm tra thực hành kỹ năng thao tác, quản trị cơ sở
dữ liệu bằng công cụ Enterprise Manager
+ Phân biệt được các kiểu dữ liệu khi thiết kế bảng
+ Phân biệt được mô hình quản trị cơ sở dữ liệu Client/Server với các môhình quản trị cơ sở dữ liệu khác
Trang 16+ Cài đặt được cơ sở dữ liệu SQL Server trên máy đơn và máy mạng
+ Đăng nhập được vào SQL Server
+ Tạo được cơ sở dữ liệu và các thành phần của cơ sở dữ liệu Client/Server
+ Rèn luyện tính cẩn thận, kiên trì, sáng tạo, độc lập và hoạt động nhóm
+ Bảo đảm an toàn và vệ sinh cho người và thiết bị trong phòng máy.
2 Phương pháp:
- Đánh giá về kiến thức: tự luận và vẫn đáp.
- Đánh giá về kỹ năng: Quan sát thao tác thực hành trên máy tính và thông qua
chất lượng sản phẩm
- Đánh giá về năng lực tự chủ và trách nhiệm: Thông qua kết quả đánh giá kiến
thức, kỹ năng và thái độ
VI Hướng dẫn thực hiện mô đun
1 Phạm vi áp dụng mô đun: Chương trình mô đun này được sử dụng để giảng dạycho trình độ trung cấp, cao đẳng
2 Hướng dẫn về phương pháp giảng dạy, học tập mô đun:
- Đối với giáo viên, giảng viên:
+ Chuẩn bị các điều kiện cần thiết trước mỗi bài
+ Chiếu sản phẩm sẽ đạt được trước mỗi bài để nâng cao ý thức học tậpcủa học sinh
Trang 17+ Thao tác mẫu và hướng dẫn chi tiết để hoàn thiện kỹ năng cho họcsinh
+ Có thể chia nhóm học sinh để thực hiện bài tập
- Đối với người học:
Làm bài tập thực hành trên máy tính
Trao đổi với nhau, thực hiện các bài thực hành theo nhóm
3 Những trọng tâm cần chú ý:
⁻ Hiểu rõ các đặc trưng của mô hình Client/Server
⁻ Trình bày cú pháp và công dụng của các phát biểu T-SQL: tạo CSDL, tạouser
⁻ Sử dụng các ràng buộc dữ liệu: Check, primary
⁻ Trình bày cú pháp ngôn ngữ lập trình SQL để định nghĩa được các hàm
⁻ Thực hiện nguyên lý quản lý giao tác, cơ chế an toàn dữ liệu
⁻ Thiết lập cấu hình và giải quyết các vấn đề thường xảy ra trên mạng khi sửdụng truy cập cơ sở dữ liệu
⁻ Sao lưu và phục hồi đồng thời lập được lịch sao lưu tự động trongHQTCSDL SQL Server
⁻ Giới thiệu các lỗi thường gặp và cách khắc phục
⁻ Đảm bảo các biện pháp an toàn cho máy tính, vệ sinh công nghiệp
4 Tài liệu tham khảo:
[1] Database Management System, simply easy learning, 2015 (free book)https://www.tutorialspoint.com/dbms/
[2] Beginning Microsoft SQL Server 2012 Programming, Paul Atkinson, RobertVieira, All Rights Reserved A Division of John Wiley & Sons, Inc, 2012
[3] Bài tập và bài giải tham khảo SQL Server 7.0/ Nguyễn Gia Tuấn Anh, TrươngChâu Long NXB Thanh niên, 2003
Trang 18BÀI 1:TỔNG QUAN VỀ MÔ HÌNH CLIENT/SERVER
Mã bài: 15.1
Giới thiệu:
SQL là một hệ quản trị CSDL nhiều người dùng kiểu Client/Server Đây là
hệ thống cơ bản dùng lưu trữ dữ liệu cho hầu hết các ứng dụng lớn hiện nay Môhình Client/Server trên SQL được sử dụng để điều khiển tất cả các chức năng màmột hệ quản trị CSDL cung cấp cho người dùng các khả năng: định nghĩa dữ liệu,truy xuất và thao tác dữ liệu, điều khiển truy cập, đảm bảo toàn vẹn dữ liệu
Mục tiêu:
- Hiểu rõ mô hình cơ sở dữ liệu Client/Server
- Nắm vững các đặc trưng của mô hình Client/Server
- Nghiêm túc, tự giác trong học tập
Nội dung chính:
1 Các kiến thức tổng quan về cơ sở dữ liệu
1.1 Mô hình dữ liệu quan hệ
Mô hình dữ liệu quan hệ được Codd đề xuất năm 1970 và đến nay trởthành mô hình được sử dụng phổ biến trong các hệ quản trị cơ sở dữ liệu thươngmại Nói một cách đơn giản, một cơ sở dữ liệu quan hệ là một cơ sở dữ liệutrong đó tất cả dữ liệu được tổ chức trong các bảng có mối quan hệ với nhau.Mỗi một bảng bao gồm các dòng và các cột: mỗi một dòng được gọi là một bảnghi (bộ) và mỗi một cột là một trường (thuộc tính)
1.2 Bảng (Table)
Như đã nói ở trên, trong cơ sở dữ liệu quan hệ, bảng là đối tượng được sửdụng để tổ chức và lưu trữ dữ liệu Một cơ sở dữ liệu bao gồm nhiều bảng vàmỗi bảng được xác định duy nhất bởi tên bảng Một bảng bao gồm một tập cácdòng và các cột: mỗi một dòng trong bảng biểu diễn cho một thực thể
Tên của bảng: được sử dụng để xác định duy nhất mỗi bảng trong cơ sở
dữ liệu
Cấu trúc của bảng: Tập các cột trong bảng Mỗi một cột trong bảng được
Trang 19xác định bởi một tên cột và phải có một kiểu dữ liệu nào đó Kiểu dữ liệu của
mỗi cột qui định giá trị dữ liệu có thể được chấp nhận trên cột đó
Dữ liệu của bảng: Tập các dòng (bản ghi) hiện có trong bảng.
1.3 Khoá của bảng
Trong một cơ sở dữ liệu được thiết kế tốt, mỗi một bảng phải có một hoặcmột tập các cột mà giá trị dữ liệu của nó xác định duy nhất một dòng trong mộttập các dòng của bảng Tập một hoặc nhiều cột có tính chất này được gọi làkhoá của bảng Việc chọn khoá của bảng có vai trò quan trọng trong việc thiết
kế và cài đặt các cơ sở dữ liệu quan hệ Các dòng dữ liệu trong một bảng phải
có giá trị khác nhau trên khoá
Một bảng có thể có nhiều tập các cột khác nhau có tính chất của khoá (tức
là giá trị của nó xác định duy nhất một dòng dữ liệu trong bảng) Trong trường
hợp này, khoá được chọn cho bảng được gọi là khoá chính (primary key) và những khoá còn lại được gọi là khoá phụ hay là khoá dự tuyển (candidate
key/unique key).
1.4 Mối quan hệ và khoá ngoài
Các bảng trong một cơ sở dữ liệu không tồn tại độc lập mà có mối quan hệmật thiết với nhau về mặt dữ liệu Mối quan hệ này được thể hiện thông qua
ràng buộc giá trị dữ liệu xuất hiện ở bảng này phải có xuất hiện trước trong
một bảng khác Mối quan hệ giữa các bảng trong cơ sở dữ liệu nhằm đàm bảo
được tính đúng đắn và hợp lệ của dữ liệu trong cơ sở dữ liệu Trong hình 1.1,hai bảng LOP và KHOA có mối quan hệ với nhau Mối quan hệ này đòi hỏi giátrị cột MAKHOA của một dòng (tức là một lớp) trong bảng LOP phải được xácđịnh từ cột MAKHOA của bảng KHOA
Trang 20Mối quan hệ giữa các bảng trong một cơ sở dữ liệu thể hiện đúng mối quan
hệ giữa các thực thể trong thế giới thực Trong hình 1.3, mối quan hệ giữa hai bảngLOP và KHOA không cho phép một lớp nào đó tồn tại mà lại thuộc vào một khoakhông có thật Khái niệm khoá ngoài (Foreign Key) trong cơ sở dữ liệu quan hệđược sử dụng để biểu diễn mối quan hệ giữa các bảng dữ liệu Một hay một tập cáccột trong một bảng mà giá trị của nó được xác định từ khóa chính của một bảngkhác được gọi là khoá ngoài Trong hình 1.1, cột MAKHOA của bảng LOP đượcgọi là khoá ngoài của bảng này, khoá ngoài này tham chiếu đến khoá chính củabảng KHOA là cột MAKHOA
2 Các giai đoạn phát triển của một hệ quản trị cơ sở dữ liệu.
Những năm 1975-1976, IBM lần đầu tiên đưa ra hệ quản trị CSDL kiểu quan
hệ mang tên SYSTEM-R với ngôn ngữ giao tiếp CSDL là SEQUEL (StructuredEnglish QUEry Language), đó một ngôn ngữ con để thao tác với CSDL
Năm 1976 ngôn ngữ SEQUEL được cải tiến thành SEQUEL2 Khoảng năm1978-1979 SEQUEL2 được cải tiến và đổi tên thành Ngôn ngữ truy vấn có cấu trúc(Structured Query Language - SQL) và cuối năm 1979 được cải tiến thànhSYSTEM-R
Năm 1986 Viện Tiêu Chuẩn Quốc Gia Mỹ (American National StandardsInstitute - ANSI) đã công nhận và chuẩn hóa ngôn ngữ SQL, và sau đó Tổ chứcTiêu chuẩn Thế giới (International Standards Organization - ISO) cũng đã côngnhận ngôn ngữ này Đó là chuẩn SQL-86
Hình 1.1: Mối quan hệ giữa hai bảng LOP và KHOA
Trang 21Tới nay SQL đã qua 3 lần chuẩn hóa lại (1989, 1992, 1996) để mở rộng cácphép toán và tăng cường khả năng bảo mật và tính toàn vẹn dữ liệu
Ngôn ngữ CSDL được cài đặt khác nhau đối tùy theo các hệ quản trị CSDLkhác nhau, tuy nhiên đều phải theo một chuẩn (Standard) nhất định Hiện nay, đaphần các ngôn ngữ truy vấn CSDL dựa trên chuẩn SQL-92
3 Giới thiệu về mô hình Client server và các hệ quản trị cơ sở dữ liệu phục vụ cho mô hình Client/Server
SQL là một hệ quản trị CSDL nhiều người dùng kiểu Client/Server Đây là hệthống cơ bản dùng lưu trữ dữ liệu cho hầu hết các ứng dụng lớn hiện nay Mô hìnhClient/Server trên SQL được sử dụng để điều khiển tất cả các chức năng mà một hệquản trị CSDL cung cấp cho người dùng các khả năng:
⁻ Định nghĩa dữ liệu
⁻ Truy xuất và thao tác dữ liệu
⁻ Điều khiển truy cập
⁻ Đảm bảo toàn vẹn dữ liệu
4 Các đặc trưng của mô hình Client/server
Một ứng dụng kiểu Client/Server bao gồm 2 phần: Một phần chạy trênServer (máy chủ) và phần khác chạy trên các Workstations (máy trạm)
Hình 1.2: Mô hình Client/Server trên SQL Server Phần Server: (Máy chủ) chứa các CSDL, cung cấp các chức năng phục vụ
cho việc tổ chức và quản lý CSDL, cho phép nhiều người sử dụng cùng truy cập
dữ liệu Điều này không chỉ tiết kiệm mà còn thể hiện tính nhất quán về mặt dữliệu Tất cả dữ liệu đều được truy xuất thông qua server, không được truy xuấttrực tiếp Do đó, có độ bảo mật cao, tính năng chịu lỗi, chạy đồng thời, sao lưu dựphòng…
Trang 22Phần Client (Máy khách): Là các phần mềm chạy trên máy trạm cho phép
người sử dụng giao tiếp CSDL trên Server
Hệ thống máy tính Client/Server có 5 mô hình kiến trúc dựa trên cấu hình phântán về truy nhập dữ liệu, gồm:
- Mô hình CSDL tập trung (Centralized database model)
- Mô hình CSDL theo kiểu file - server (File - server database model)
- Mô hình xử lý từng phần CSDL (Database extract proceSQL Servering model)
- Mô hình CSDL Client/Server (Client/Server database model)
- Mô hình CSDL phân tán (Distributed database model)
5 Tổng quan về cấu trúc Client/Server
Một CSDL phải đảm bảo được tính độc lập giữa dữ liệu và chương trình
ứng dụng Vì vậy, trong mô hình CSDL Client/Server, hệ thống Server lưu trữ
CSDL ở trên máy A, thì hệ thống Client chạy các chương trình ứng dụng phải ởtrên máy khác
Trong mô hình này, các thành phần xử lý ứng dụng trên hệ thống Client đưa
ra yêu cầu cho phần mềm CSDL trên máy Client, phần mềm này sẽ kết nối vớiphần mềm CSDL chạy trên Server Phần mềm CSDL trên Server sẽ truy nhập vàoCSDL và gửi trả kết quả cho máy Client
6 Các mô hình dữ liệu của hệ thống Client/Server
6.1.Mô hình CSDL tập trung (Centralized database model)
Trong mô hình này, các thành phần xử lý ứng dụng, phần mềm CSDL vàbản thân CSDL đều ở trên một bộ xử lý
Ví dụ: Người dùng máy tính cá nhân có thể chạy các chương trình ứng dụng
có sử dụng phần mềm CSDL Oracle để truy nhập tới CSDL nằm trên đĩa cứng củamáy tính cá nhân đó Từ khi các thành phần ứng dụng, phần mềm CSDL và bảnthân CSDL cùng nằm trên một máy tính thì ứng dụng đã thích hợp với mô hìnhtập trung
Hầu hết công việc xử lý luồng thông tin chính được thực hiện bởi nhiều tổchức mà vẫn phù hợp với mô hình tập trung Ví dụ một bộ xử lý mainframe chạy
Trang 23phần mềm CSDL IMS hoặc DB2 của IBM có thể cung cấp cho các trạm làm việc
ở các vị trí phân tán sự truy nhập nhanh chóng tới CSDL trung tâm Tuy nhiêntrong rất nhiều hệ thống như vậy, cả 3 thành phần của ứng dụng CSDL đều thựchiện trên cùng một máy mainframe do vậy cấu hình này cũng thích hợp với môhình tập trung
6.2.Mô hình CSDL theo kiểu file - server (File - server databasemodel)
Trong mô hình CSDL theo kiểu file - server các thành phần ứng dụng vàphần mềm CSDL ở trên một hệ thống máy tính và các file vật lý tạo nên CSDLnằm trên hệ thống máy tính khác Một cấu hình như vậy thường được dùng trongmôi trường cục bộ, trong đó một hoặc nhiều hệ thống máy tính đóng vai trò củaserver, lưu trữ các file dữ liệu cho hệ thống máy tính khác thâm nhập tới Trongmôi trường file - server, phần mềm mạng được thi hành và làm cho các phần mềmứng dụng cũng như phần mềm CSDL chạy trên hệ thống của người dùng cuối coicác file hoặc CSDL trên file server thực sự như là trên máy tính của người chínhhọ
Mô hình file server rất giống với mô hình tập trung Các file CSDL nằm trênmáy khác với các thành phần ứng dụng và phần mềm CSDL; tuy nhiên các thànhphần ứng dụng và phần mềm CSDL có thể có cùng thiết kế để vận hành một môitrường tập trung
6.3.Mô hình xử lý từng phần CSDL (Database extract proceSQL Serveringmodel)
Một CSDL ở xa có thể được truy nhập bởi phần mềm CSDL, được gọi là xử
lý dữ liệu từng phần Với mô hình này, người sử dụng có thể tại một máy tính cánhân kết nối với hệ thống máy tính ở xa nơi có dữ liệu mong muốn Người sửdụng có thể tác động trực tiếp đến phần mềm chạy trên máy ở xa và tạo yêu cầu
để lấy dữ liệu từ CSDL đó Người sử dụng cũng có thể chuyển dữ liệu từ máy tính
ở xa về chính máy tính của mình và vào đĩa cứng và có thể thực hiện việc saochép bằng phần mềm CSDL trên máy cá nhân
Với cách tiếp cận này, người sử dụng phải biết chắc chắn là dữ liệu nằm ởđâu và làm như thế nào để truy nhập và lấy dữ liệu từ một máy tính ở xa Phầnmềm ứng dụng đi kèm cần phải có trên cả hai hệ thống máy tính để kiểm soát sựtruy nhập dữ liệu và chuyển dữ liệu giữa hai hệ thống Tuy nhiên, phần mềm
Trang 24CSDL chạy trên hai máy không cần biết rằng việc xử lý CSDL từ xa đang diễn ra
vì người sử dụng tác động tới chúng một cách độc lập
6.4.Mô hình CSDL Client/Server (Client/Server database model)
Mô hình CSDL Client/Server gần giống như mô hình file - server, tuy nhiên
mô hình Client/Server có rất nhiều thuận lợi hơn mô hình file - server
Xét ví dụ sau đây: Một người dùng cuối muốn tạo ra một vấn tin để lấy dữliệu tổng số, yêu cầu đòi hỏi lấy dữ liệu từ 1000 bản ghi
Với cách tiếp cận File-Server nội dung của tất cả 1000 bản ghi phải đưa lênmạng, vì phần mềm CSDL chạy trên máy của người sử dụng phải truy nhập từngbản ghi để thoả mãn yêu cầu của người sử dụng
Với cách tiếp cận CSDL Client/Server, chỉ có lời vấn tin khởi động ban đầu
và kết quả cuối cùng cần đưa lên mạng Phần mềm CSDL chạy trên máy lưu giữCSDL sẽ truy nhập các bản ghi cần thiết, xử lý chúng và gọi các thủ tục cần thiết
để đưa ra kết quả cuối cùng
Front-end software
Trong mô hình CSDL Client/Server, thường nói đến các phần mềm end software và back-end software Front-end software được chạy trên một máytính cá nhân hoặc một workstation và đáp ứng các yêu cầu đơn lẻ riêng biệt, phầnmềm này đóng vai trò của Client trong ứng dụng CSDL Client/Server và thực hiệncác chức năng hướng tới nhu cầu của người dùng cuối cùng, phần mềm Front-endsoftware thường được chia thành các loại sau:
front End user database software: Được thực hiện bởi người sử dụng cuối trênchính hệ thống của họ để truy nhập các CSDL cục bộ nhỏ cũng như kết nối vớicác CSDL lớn hơn trên CSDL Server
- Simple query and reporting software: Được thiết kế để cung cấp các công cụ
dễ dùng hơn trong việc lấy dữ liệu từ CSDL và tạo các báo cáo đơn giản từ dữliệu đã có
- Data analysis software: Cung cấp các hàm về tìm kiếm, khôi phục, chúng cóthể cung cấp các phân tích phức tạp cho người dùng
- Application development tools: Cung cấp các khả năng về ngôn ngữ mà các
Trang 25nhân viên hệ thống thông tin chuyên nghiệp sử dụng để xây dựng các ứng dụngCSDL.
- Database administration Tools: Các công cụ này cho phép người quản trịCSDL sử dụng máy tính cá nhân hoặc trạm làm việc để thực hiện việc quản trịCSDL như định nghĩa các CSDL, thực hiện lưu trữ hay phục hồi
Back-end software
Phần mềm này bao gồm phần mềm CSDL Client/Server và phần mềm mạngchạy trên máy đóng vai trò là Server CSDL
6.5.Mô hình CSDL phân tán (Distributed database model)
Cả hai mô hình File - Server và Client/Server đều giả định là dữ liệu nằmtrên một bộ xử lý và chương trình ứng dụng truy nhập dữ liệu nằm trên một bộ xử
lý khác, còn mô hình CSDL phân tán lại giả định bản thân CSDL có ở trên nhiềumáy khác nhau
CÂU HỎI, BÀI TẬP
Câu 1: Phân biệt các khái niệm CSDL, hệ quản trị CSDL, hệ CSDL, SQL, T-SQLCâu 2: Cho ví dụ về một số hệ quản trị CSDL theo mô hình Client/Server ?
Câu 3: Hãy trình bày các đặt trưng của mô hình Client/Server?
Câu 4: Hãy so sánh mô hình dữ liệu tập trung và mô hình dữ liệu phân tán ?
Câu 5: Cho ví dụ về mô hình dữ liệu tập trung và mô hình dữ liệu phân tán hiện
nay?
Trang 26BÀI 2: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MS SQL SERVER
Mã bài: 15.2
Giới thiệu:
SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relational DatabaseManagement System (RDBMS) ) sử dụng câu lệnh SQL (Transact-SQL) để traođổi dữ liệu giữa máy Client và máy cài SQL Server
Mục tiêu:
- Trình bày lịch sử phát triển của hệ quản trị cơ sở dữ liệu MS SQL Server
- Cài đặt được phần mềm hệ quản trị cơ sở dữ liệu MS SQL Server
- Sử dụng được các công cụ hổ trợ của hệ quản trị cơ sở dữ liệu MS SQLServer
- Cấu hình được hệ thống quản trị cơ sở dữ liệu trên Server nội bộ
- Nghiêm túc, tự giác trong học tập
- Đảm bảo an toàn cho nguời và thiết bị
Nội dung chính:
1 Giới thiệu hệ quản trị cơ sở dữ liệu MS SQL Server
Ngôn ngữ hỏi 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, SQL Server,Informix, DB2, đều chọn SQL 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ảntrị 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áinhìn tổng quan về SQL và một số vấn đề liên quan
1.1 SQL là ngôn ngữ cơ sở dữ liệu quan hệ
SQL, viết tắt của Structured Query Language (ngôn ngữ hỏi 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 SQL là một hệ thống ngôn ngữ bao gồm tập các câu lệnh sử dụng để
Trang 27tương tác với cơ sở dữ liệu quan hệ Tên gọi ngôn ngữ hỏi có cấu trúc phần nào làmchúng ta liên tưởng đến một công cụ (ngôn ngữ) dùng để truy xuất dữ liệu trongcác cơ sở dữ liệu Thực sự mà nói, khả năng của SQL vượt xa 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 trong những chức năng quan trọng của nó SQLđược sử dụng để điều khiển tất cả các chức năng mà một hệ quản trị cơ sở dữ liệucung cấp cho người dùng bao gồm:
Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các cơ sở dữ liệu,
các cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các thành phần
dữ liệu
Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng thực hiện
các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các cơ sở dữ liệu
Điều khiển truy cập: SQL có thể được sử dụng để cấp phát và kiểm soát các
thao tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho cơ sở dữ liệu
Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc toàn vẹn trong cơ
sở dữ liệu nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các thao táccập nhật cũng như các lỗi của hệ thống
Như vậy, có thể nói rằng SQL là một ngôn ngữ hoàn thiện được sử dụngtrong các hệ thống cơ sở dữ liệu và là một thành phần không thể thiếu trong các hệquản trị cơ sở dữ liệu Mặc dù SQL không phải là một ngôn ngữ lập trình như C,C++, Java, song các câu lệnh mà SQL cung cấp có thể được nhúng vào trong cácngôn ngữ lập trình nhằm xây dựng các ứng dụng tương tác với cơ sở dữ liệu Khácvới các ngôn ngữ lập trình quen thuộc như C, C++, Java, SQL là ngôn ngữ cótính khai báo Với SQL, người dùng chỉ cần mô tả các yêu cầu cần phải thực hiệntrên cơ sở dữ liệu mà không cần phải chỉ ra cách thức thực hiện các yêu cầu như thếnào Chính vì vậy, SQL là ngôn ngữ dễ tiếp cận và dễ sử dụng
1.2 Vai trò của SQL
Bản thân SQL không phải là một hệ quản trị cơ sở dữ liệu, nó không thể tồntại độc lập SQL thực sự là một phần của hệ quản trị cơ sở dữ liệu, nó xuất hiệntrong các hệ quản trị cơ sở dữ liệu với vai trò ngôn ngữ và là công cụ giao tiếp giữangười sử dụng và hệ quản trị cơ sở dữ liệu Trong hầu hết các hệ quản trị cơ sở dữ
Trang 28liệu quan hệ, SQL có những vai trò như sau:
SQL là ngôn ngữ hỏi có tính tương tác: Người sử dụng có thể dễ dàng
thông qua các trình tiện ích để gởi các yêu cầu dưới dạng các câu lệnh SQL đến cơ
sở dữ liệu và nhận kết quả trả về từ cơ sở dữ liệu
SQL là ngôn ngữ lập trình cơ sở dữ liệu: Các lập trình viên có thể nhúng các
câu lệnh SQL vào trong các ngôn ngữ lập trình để xây dựng nên các chương trìnhứng dụng giao tiếp với cơ sở dữ liệu
SQL là ngôn ngữ quản trị cơ sở dữ liệu: Thông qua SQL, người quản trị cơ
sở dữ liệu có thể quản lý được cơ sở dữ liệu, định nghĩa các cấu trúc lưu trữ dữ liệu,điều khiển truy cập cơ sở dữ liệu,
SQL là ngôn ngữ cho các hệ thống khách/chủ (client/server): Trong các hệ
thống cơ sở dữ liệu khách/chủ, SQL được sử dụng như là công cụ để giao tiếp giữacác trình ứng dụng phía máy khách với máy chủ cơ sở dữ liệu
SQL là ngôn ngữ truy cập dữ liệu trên Internet: Cho đến nay, hầu hết các
máy chủ Web cũng như các máy chủ trên Internet sử dụng SQL với vai trò là ngônngữ để tương tác với dữ liệu trong các cơ sở dữ liệu
SQL là ngôn ngữ cơ sở dữ liệu phân tán: Đối với các hệ quản trị cơ sở dữ
liệu phân tán, mỗi một hệ thống sử dụng SQL để giao tiếp với các hệ thống kháctrên mạng, gửi và nhận các yêu cầu truy xuất dữ liệu với nhau
SQL là ngôn ngữ sử dụng cho các cổng giao tiếp cơ sở dữ liệu: Trong một
hệ thống mạng máy tính với nhiều hệ quản trị cơ sở dữ liệu khác nhau, SQLthường được sử dụng như là một chuẩn ngôn ngữ để giao tiếp giữa các hệ quản trị
cơ sở dữ liệu
2 Cài đặt MS SQL Server
2.1 Link download để cài đặt:
https://www.microsoft.com/en-us/sql-server/sql-server-downloads
2.2 Các phiên bản của SQL Swrer:
Enterprise - bản cao cấp nhất với đầy đủ tính năng
Trang 29 Standard - ít tính năng hơn Enterprise, sử dụng khi không cần dùng tới cáctính năng nâng cao.
Workgroup - phù hợp cho các công ty lớn với nhiều văn phòng làm việc từxa
Web - thiết kế riêng cho các ứng dụng web
Developer - tương tự như Enterprise nhưng chỉ cấp quyền cho một ngườidùng duy nhất để phát triển, thử nghiệm, demo Có thể dễ dàng nâng cấp lênbản Enterprise mà không cần cài lại
Express - bản này chỉ dùng ở mức độ đơn giản, tối đa 1 CPU và bộ nhớ 1GB,kích thước tối đa của cơ sở dữ liệu là 10GB
Compact - nhúng miễn phí vào các môi trường phát triển ứng dụng web.Kích thước tối đa của cơ sở dữ liệu là 4GB
Datacenter - thay đổi lớn trên SQL Server 2008 R2 chính là bản DatacenterEdition Không giới hạn bộ nhớ và hỗ trợ hơn 25 bản cài
Business Intelligence - Business Intelligence Edition mới được giới thiệutrên SQL Server 2012 Phiên bản này có các tính năng của bản Standard và
hỗ trợ một số tính năng nâng cao về BI như Power View và PowerPivotnhưng không hỗ trợ những tính năng nâng cao về mức độ sẵn sàng nhưAlwaysOn Availability Groups…
Enterprise Evaluation - bản SQL Server Evaluation Edition là lựa chọn tuyệtvời để dùng được mọi tính năng và có được bản cài miễn phí của SQL Server
để học tập và phát triển Phiên bản này có thời gian hết hạn là 6 tháng từngày cài
2.3 Các bước cài đặt
Bước1: Click đúp vào biểu tượng vừa tải về
Trang 30Hình 2.1: Nhấp
đúp vào biểu tượng tải về
Bước 2: Chọn yes
Bước 3: Chọn Basic
Trang 31Hình 2.2: Bước 3 của cài đặt MS SQL Server
Bước 4: Chọn Accept
Bước 5: Chọn Install
Bước 6: Sau khi chạy cài đặt xong, chương trình hiện ra giao diện bên dưới,
Hình 2.3: Bước 6 của cài đặt MS SQL Server
Bước 7: Chương trình dẫn đến trang download SSMS ( SQL ServerManagement Studio)
Nhấp chọn “Download SQL Server Management Studio 17.8” SSMS : là môitrường tích hợp để quản lý bất kỳ cơ sở hạ tầng SQL nào, từ SQL Server đến cơ sở
dữ liệu SQL SSMS cung cấp các công cụ để cấu hình, giám sát và quản lý các cáthể của SQL Sử dụng SSMS để triển khai, theo dõi và nâng cấp các thành phần cấp
dữ liệu được ứng dụng của bạn sử dụng, cũng như xây dựng truy vấn và tập lệnh
Trang 32Hình 2.4: Bước 7 của cài đặt MS SQL Server
Bước 8: Kích đúp vào file vừa tải về rồi chọn yes
Hình 2.5: Bước 8 của cài đặt MS SQL Server
Bước 9: Hiển thị màn hình tiếp theo chọn “Install”
Hình 2.6: Bước 9 của cài đặt MS SQL Server
Bước 10: Thông báo hoàn thành cài đặt SSMS, chọn Close
3 Các công cụ của MS SQL Server
Ðầu tiên phải kể đến Enterprise Manager Ðây là một công cụ cho ta thấytoàn cảnh hệ thống cơ sở dữ liệu một cách rất trực quan Nó rất hữu ích đặc biệtcho người mới học và không thông thạo lắm về SQL
Trang 33Kế đến là Query Analyzer Ðối với một DBA giỏi thì hầu như chỉ cần công cụnày là có thể quản lý cả một hệ thống database mà không cần đến những thứ khác.Ðây là một môi trường làm việc khá tốt vì ta có thể đánh bất kỳ câu lệnh SQL nào
và chạy ngay lập tức đặc biệt là nó giúp cho ta debug mấy cái stored procedure dễdàng
Công cụ thứ ba cần phải kể đến là SQL Profiler Nó có khả năng "chụp"(capture) tất cả các sự kiện hay hoạt động diễn ra trên một SQL server và lưu lạidưới dạng text file rất hữu dụng trong việc kiểm soát hoạt động của SQL Server Ngoài một số công cụ trực quan như trên chúng ta cũng thường hay dùng osql
và bcp (bulk copy) trong command prompt
4 Làm việc với công cụ Enterprise Manager (EMS SQL Manager)
Ðây là một công cụ cho ta thấy toàn cảnh hệ thống CSDL một cách rất trựcquan Nó cho phép người dùng tạo và chỉnh sửa các đối tượng cơ sở dữ liệu SQLServer và tạo, sửa đổi, thực hiện và lưu các truy vấn SQL
Ðường link download công cụ :
https://www.sqlmanager.net/en/products/mssql/manager/download
4.1 Tạo CSDL
Tạo CSDL bằng SQL Server Management Studio
Mở SMSS, kết nối tới bản cài SQL Server và click chuột phải
vào Databases > New Database:
Hình 2.7: Chọn chức năng tạo tập tin CSDL
Trang 34Sau đó đặt tên CSDL trong khung Database Name.
Hình 2.8: Đặt tên tập tin CSDL
4.2 Tạo bảng
Để tạo bảng cho môt CSDL ta nhắp chuột vào dấu cộng (+) bên trái CSDLtương ứng, ta có danh sách các thành phần của CSDL, nhắp phải vào Tablechọn New Table
Trang 35Hình 2.10: Đặt tên trường cho bảng dữ liệu
Muốn tạo khóa chính cho trường nào thì chọn dòng tương ứng sau đó nhắpvào biểu tượng chìa khóa trên thanh công cụ Có thể kết hợp với phím Shift vàCtrl nếu muốn chọn nhiều dòng
Hình 2.11: Tạo khóa chính, khóa ngoại cho bảng dữ liệu
4.3 Tạo mối quan hệ giữa các bảng
Diagrams là 1 cửa sổ hiển thị mối quan hệ giữa các table của 1 database Tạodiagram ta thực hiện như sau: Trong cửa sổ Object Explorer chọn tên database cần
Trang 36tạo -> Click phải vào Database Diagrams -> Chọn New Database Diagram
Hình 2.12: Tạo sơ đồ (Diagrams)
Khi ta chọn OK giữa 2 table sẽ xuất hiện một kết nối giữa 2 bảng dữ liệu
Hình 2.13: Mối quan hệ của 2 bảng được thiết lập
Trong cùng một cách, bạn có thể tạo mối quan hệ khác Khi bạn đã hoàn tất,bạn có thể lưu và đóng diagram
4.4 Nhập dữ liệu cho bảng
Bước 1: Nhấp đôi chuột vào tên bảng cần nhập dữ liệu
Bước 2: Nhập từng cột dữ liệu cho mỗi dòng
Bước 3: Nhấp chuột vào biểu tượng <<Save>> lưu dữ liệu
5 Các dịch vụ của SQL
Trang 37MS SQL Server mang tới 2 dịch vụ chính để tạo và duy trì cơ sở dữ liệu(CSDL) Ngoài ra còn có các dịch vụ bổ sung phục vụ các mục đích khác.
Hai dịch vụ chính của MS SQL Server gồm:
SQL Server
SQL Server Agent
Các dịch vụ bổ sung của MS SQL Server gồm:
SQL Server Browser
SQL Server FulL Text Search
SQL Server Integration Services
SQL Server Reporting Services
SQL Server Analysis Services
Bắt đầu hoặc tạm ngưng sử dụng các dịch vụ nói trên bằng nhưng cách dướiđây
5.1 Khởi động dịch vụ trong MS SQL Server
Để khởi động bất kì dịch vụ nào trong MS SQL Server, bạn có thể dùng 1trong 2 cách dưới đây
Cách 1: Sử dụng Services.msc
Bước 1: Đi tới hộp thoại Run, gõ services.msc và click OK Màn hình dưới
đây sẽ hiện ra
Bước 2: Để khởi động, click chuột phải vào dịch vụ bạn cần và
chọn Start Khi đó dịch vụ sẽ khởi động như trong hình dưới đây.
Trang 38Hình 2.14: Màn hình hiển thị sau khi thực hiện bước 1
Hình 2.15: Màn hình hiển thị sau khi thực hiện bước 2
Cách 2: Dùng SQL Server Configuration Manager
Bước 1: Mở trình quản lý bằng các bước Start > All Programs > MS SQL Server 2017> Configuration Tools > SQL Server Configuration Manager.
Hình 2.16:Danh sách dịch vụ hiện ra khi đã mở được trình quản lý
Trang 39Bước 2: Chọn tên dịch vụ, click chuột phải và chọn Start Dịch vụ khởi động
thành công như hình bên dưới
Hình 2.17: Khởi động thành công dịch vụ trong MS SQL Server
Cách 2: Dùng SQL Server Configuration Manager
Bước 1: Mở Configuration Manager bằng các bước như trong bước 2 - cách 2khi khởi động dịch vụ
Bước 2: Chọn dịch vụ cần dừng, click chuột phải và chọn Stop Dịch vụ đượcchọn sẽ dừng lại
CÂU HỎI, BÀI TẬP
Câu 1: Tạo một CSDL tên QLSV ( trong cửa sổ enterprise