hỌc viỆn kỸ thuẬt quÂn sỰ cỘng hÒa xà hỘi chỦ...

27
HỌC VIỆN KỸ THUẬT QUÂN SỰ KHOA CÔNG NGHỆ THÔNG TIN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN CÔNG NGHỆ CLIENT/SERVER VÀ SQL SERVER 1. Thông tin về giáo viên TT Họ tên giáo viên Học hàm Học vị Đơn vị công tác (Bộ môn) 1 Hồ Nhật Quang Ths Công nghệ phần mềm 2 Phan Việt Anh Ths Công nghệ phần mềm 3 Cao Tuấn Anh KS Công nghệ phần mềm Thời gian, địa điểm làm việc: Bộ môn Công nghệ phần mềm, khoa Công nghệ Thông tin. Địa chỉ liên hệ: Bộ môn Công nghệ phần mềm, Khoa Công nghệ Thông tin, Học viện Kỹ thuật Quân sự, 236 Hoàng Quốc Việt, Từ Liêm, Hà Nội Điện thoại, email: 0975 639 757, [email protected] Các hướng nghiên cứu chính: Hệ quản trị cơ sở dữ liệu, Xử lý ảnh, Tính toán tiến hóa. 2. Thông tin chung về học phần - Tên học phần: Công nghệ Client/Server và SQL Server - Mã học phần: 77AC - Số tín chỉ: 2 - Học phần (bắt buộc hay lựa chọn): - Các học phần tiên quyết: Cở sở dữ liệu; Phân tích, thiết kế hệ thống thông tin. - Các yêu cầu đối với học phần (nếu có): - Giờ tín chỉ đối với các hoạt động: Nghe giảng lý thuyết: 30 Làm bài tập trên lớp: 6 Thảo luận: Thực hành, thực tập (ở PTN, nhà máy, thực tập...): 9 Hoạt động theo nhóm: Tự học:

Upload: vulien

Post on 07-Feb-2018

216 views

Category:

Documents


1 download

TRANSCRIPT

HỌC VIỆN KỸ THUẬT QUÂN SỰ KHOA CÔNG NGHỆ THÔNG TIN

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc

ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN CÔNG NGHỆ CLIENT/SERVER VÀ SQL SERVER

1. Thông tin về giáo viên TT Họ tên giáo

viên Học hàm

Học vị Đơn vị công tác (Bộ môn)

1 Hồ Nhật Quang Ths Công nghệ phần mềm 2 Phan Việt Anh Ths Công nghệ phần mềm 3 Cao Tuấn Anh KS Công nghệ phần mềm Thời gian, địa điểm làm việc: Bộ môn Công nghệ phần mềm, khoa Công nghệ Thông tin. Địa chỉ liên hệ: Bộ môn Công nghệ phần mềm, Khoa Công nghệ Thông tin, Học viện Kỹ thuật Quân sự, 236 Hoàng Quốc Việt, Từ Liêm, Hà Nội Điện thoại, email: 0975 639 757, [email protected] Các hướng nghiên cứu chính: Hệ quản trị cơ sở dữ liệu, Xử lý ảnh, Tính toán tiến hóa.

2. Thông tin chung về học phần - Tên học phần: Công nghệ Client/Server và SQL Server - Mã học phần: 77AC - Số tín chỉ: 2 - Học phần (bắt buộc hay lựa chọn): - Các học phần tiên quyết: Cở sở dữ liệu; Phân tích, thiết kế hệ thống thông

tin. - Các yêu cầu đối với học phần (nếu có): - Giờ tín chỉ đối với các hoạt động:

Nghe giảng lý thuyết: 30 Làm bài tập trên lớp: 6 Thảo luận: Thực hành, thực tập (ở PTN, nhà máy, thực tập...): 9 Hoạt động theo nhóm: Tự học:

- Khoa/Bộ môn phụ trách học phần, địa chỉ: Bộ môn Công nghệ phần mềm, Khoa Công nghệ Thông tin, Nhà A1 Học viện Kỹ thuật Quân sự

3. Mục tiêu của học phần - Kiến thức:

Môn học trình bày xuyên suốt từ bước cài đặt, cấu hình, quản trị, thiết kế, định nghĩa các đối tượng trên SQL Server 2005, tự động hóa các tác vụ quản trị, tạo bản sao cơ sở dữ liệu, bảo mật cở sở dữ liệu, kỹ năng lập trình T-SQL, khả năng hỗ trợ cơ sở dữ liệu XML trong SQL Server 2005, lập trình ứng dụng tương tác với SQL Server 2005 và những thủ thuật chống thâm nhập dữ liệu bằng kỹ thuật SQL Injection. - Kỹ năng:

+ Sử dụng thành thạo công cụ SQL Management Studio để quản lý và thực hiện các thao tác trên cơ sở dữ liệu. + Có kỹ năng lập trình T-SQL, lập trình ứng dụng tương tác với cơ sở dữ liệu SQL 2005. + Nắm được các thủ thuật truy vấn dữ liệu nâng cao, chống thâm nhập dữ liệu bằng kỹ thuật SQL Injection. + Nắm được cách cấu hình, quản trị CSDL.

- Thái độ, chuyên cần: Lên lớp đầy đủ và chuẩn bị cho giờ lên lớp theo yêu cầu của giáo viên.

4. Tóm tắt nội dung học phần (khoảng 150 từ) - Học phần cung cấp cho sinh viên các kiến thức sau:

+ Các bước cài đặt, cấu hình, quản trị, thiết kế, định nghĩa các đối tượng trên SQL Server 2005.

+ Tự động hóa các tác vụ quản trị, tạo bản sao cơ sở dữ liệu, bảo mật cở sở dữ liệu,

+ Ngôn ngữ lập trình T-SQL từ cơ bản đến nâng cao. Khả năng hỗ trợ cơ sở dữ liệu XML trong SQL Server 2005

+ Lập trình ứng dụng tương tác với SQL Server 2005 và những thủ thuật chống thâm nhập dữ liệu bằng kỹ thuật SQL Injection.

5. Nội dung chi tiết học phần (tên các chương, mục, tiểu mục)

Chương, mục,

tiểu mục Nội dung

Số tiết

Giáo trình, Tài liệu

tham khảo Ghi chú

1 Giới thiệu hệ quản trị CSDL SQL 3

SERVER 1 Giới thiệu về hệ thống quản trị CSDL

quan hệ (RDBMS) 2 SQL Server 2005 và các phiên bản của nó 3 Các bước cài đặt SQL Server 2005 4 Các thành phần quan trọng trong SQL

Server 2005 5 Các CSDL hệ thống của SQL Server 2005 6 Cấu trúc vật lý của một Database trên

SQL Server 2005 7 Cấu trúc logic của một Database trên SQL

Server 2005 8 Những điểm cần lưu ý khi thiết kế CSDL 9 Các mô hình truy cập CSDL từ phía ứng

dụng 10 Các mô hình xác thực người sử dụng của

SQL Server 2005 2 Xử lý nâng cao và các phát biểu của

Transact-SQL 9

1 Bó lệnh (Batch of Transact-SQL statement)

2 Kịch bản (Transact-SQL Script) 3 Các phương pháp đảm bảo tính toàn vẹn

dữ liệu 4 Tạo hàm phân hoạch, giản đồ phân họach,

bảng phân hoạch (partitioned table) 5 Truy vấn nâng cao: Select với từ khóa

WITH 6 Ngôn ngữ lập trình T-SQL

+ Qui tắc đặt tên – Identifiers + Kiểu dữ liệu + Biến (Variables) + Biểu thức (Expressions) + Chú Thích (Comments) + Thủ tục và hàm + Một số hàm hệ thống

7 Các lệnh cơ bản của T-SQL + Câu lệnh đơn, câu lệnh phức hợp, lệnh nhảy Goto, nhãn + Các lệnh rẽ nhánh + Vòng lặp + Lệnh try/catch

3 Quản trị SQL Server 2005 3 1 Triển khai CSDL - Database Deployment 2 Vấn đề tiềm ẩn trong việc triển khai

CSDL 3 Xác thực người sử dụng trên SQL Server

2005 4 Tạo giản đồ: Create Schema 5 Giới thiệu các nhóm server (server roles)

và thêm người sử dụng vào nhóm 6 Giới thiệu các nhóm CSDL (database

roles) và thêm người sử dụng vào nhóm 7 Tạo nhóm CSDL (database role) và phân

quyền cho nhóm 8 Tạo nhóm app role và cách sử dụng 9 Phân quyền cho nhóm và người sử dụng:

+ Phân các quyền trên server + Phân các quyền trên database + Phân các quyền trên giản đồ (schema) + Phân các quyền trên bảng và view + Phân các quyền trên thủ tục và hàm

4 Thủ tục lưu trữ trên MS SQL Server 2005 (Stored Procedure)

3

1 Các thao tác với thủ tục 2 Ý nghĩa của các tham số EXECUTE AS;

AS CALLER; AS OWNER; AS SELF 3 Các ví dụ:

+Tạo thủ tục đơn giản + Tạo thủ tục đệ qui

4 Thiết lập thủ tục tự động, thủ tục : sp_procoption

5 Gỡ rối thủ tục bằng công cụ VS. NET 5 Hàm (Function) 3 1 Hàm trả về giá trị đơn - Scalar Functions 2 Hàm UDF trả về bảng:

+ Inline Table-valued Functions + Multistatement Table-valued Functions

3 Ý nghĩa của các tham số EXECUTE AS; AS CALLER; AS OWNER; AS SELF

4 Các ví dụ + Tạo hàm đơn giản + Tạo hàm đệ qui

5 Bảng mã kí tự ASCII, UNICODE, qui tắc sắp xếp trường dữ liệu văn bản (collation) trên MS SQL Server

6 Xây dựng hàm sắp xếp dữ liệu văn bản tiếng Việt

6 Kích họat (Trigger) 3 1 Data definition trigger (DDL triggers)

+ Tạo DDL trigger trên server + Tạo DDL Trigger trên database

2 Data manipulation language triggers (DML triggers) + Trigger dạng For + Trigger dạng thay thế INSTEAD OF + Tạo trigger trên bảng, view

3 Ý nghĩa của các tham số EXECUTE AS; AS CALLER; AS OWNER; AS SELF

4 Gỡ rối trigger 7 Cách tạo và làm việc với chỉ mục

(Index) 3

1 Mục đích của chỉ mục 2 Phương pháp lưu trữ dữ liệu trên SQL

Server 3 Qui tắc chọn các trường dữ liệu làm chỉ

mục 4 Phân loại chỉ mục

+ Chỉ mục dạng phân cụm Clustered, cấu trúc B+Tree + Chỉ mục dạng nonclustered + Chỉ mục dạng hàm băm

5 Chỉ mục + Tạo chỉ mục + Ý nghĩa và cách sử dụng tham số FILLFACTOR và PAD_INDEX khi triển khai CSDL lớn

6 Ví dụ minh họa 7 Bảo trì chỉ mục 8 Sử dụng công cụ Database Engine Tuning

Advisor 8 Kiểu dữ liệu con trỏ - Cursor 3 1 Khai báo kiểu dữ liệu con trỏ 2 Mở và lấy mẫu tin từ con trỏ 3 Kiểm tra trạng thái của con trỏ 4 Phạm vi họat động của con trỏ 5 Phân loại con trỏ + Con trỏ tĩnh (Static) + Con trỏ Keyset (Keyset-driven) + Con trỏ động (Dynamic) 6 Các ví dụ

+ Sử dụng con trỏ global để trao đổi dữ liệu giữa các thủ tục + Sửa đổi dữ liệu tại vị trí của con trỏ

9 Giao dịch - Transaction và Khoá –Lock 3 1 Giao dịch

+ Khái niệm về giao dịch + Các thuộc tính của transaction + Phân loại transaction + Cách sử dụng SQL Server Log + Khái niệm về CheckPoint và Recovery Interval + Các giao dịch phân tán

2 Khóa

+ Khóa chỉ được phép đọc (Shared Locks (S) – Read Only) + Khóa loại trừ (Exclusive Locks (X)) + Khóa Update Locks (U)

3 Các vấn đề khi truy xuất dữ liệu một cách đồng thời

4 Các mức cô lập (isolation levels) + Read Uncommitted + Read Committed + Repeatable Read + Serializable

10 Tìm kiếm toàn văn (Full Text Search) 6 1 Lưu trữ dữ liệu toàn văn trong CSDL và

khái niệm chung về (Full text search – FTS)

2 Quản trị FTS 3 Cấu hình chỉ mục và tạo chỉ mục cho FT-

Index bằng giao diện của MStdio 4 Cấu hình chỉ mục và tạo chỉ mục cho FT-

Index bằng T-SQL 5 Tạo chỉ mục FT-Index cho các trường

varchar(max),nvarchar(max), image 6 Thực hiện các câu truy vấn TFS

+ CONTAINS + CONTAINSTABLE + FREETEXT

11 Sao lưu (Backup) và khôi phục (Restore) dữ liệu

3

1 Lý do cần sao lưu dữ liệu 2 Các dạng sao lưu dữ liệu 3 Các mô hình khôi phục dữ liệu 4 Sao lưu và khôi phục dữ liệu

+ Sao lưu và khôi phục dữ liệu sử dụng công cụ Microsoft SQL Server Management Studio (SSMS) + Sao lưu và khôi phục dữ liệu sử dung T-

SQL 5 Kịch bản minh họa về việc sao lưu và

phục hồi dữ liệu khi hệ thống có sự cố xảy ra

6 Lập lịch cho việc sao lưu dữ liệu 12 Làm việc với dữ liệu phân tán 3

1 Truy vấn phân tán 2 Các Server liên kết (LinkedServer) 3 Hàm OpenQuery 4 Hàm OPENROWSET 5 Ví dụ về giao dịch phân tán

6. Giáo trình, tài liệu tham khảo TT Tên giáo trình, tài liệu Tình trạng giáo trình, tài liệu

Giáo trình 1 (Giáo trình bắt buộc ghi theo thứ tự ưu tiên: tên sách, tên tác giả, nhà xuất bản, năm xuất bản,...).

Có ở thư viện (website)

Giáo viên hoặc khoa có

Đề nghị mua mới

Đề nghị biên soạn mới

1 Professional SQL Server 2005 Programming, Robert Vieira, Wiley Publishing, 2007

X

2 Pro Full – Text Search in SQL Server 2008, Michael Coles, Hilary Cotter, Appress, 2008

X

3 SQL Server 2005 Database Administration, Darril Gibson, Mc Graw Hill, 2007

X

4 Pro T-SQL 2008 Programmer’s Guide, Michael Coles, Apress, 2008

X

7. Hình thức tổ chức dạy học 7.1. Lịch trình chung: (Ghi tổng số giờ cho mỗi cột)

Nội dung Hình thức tổ chức dạy học học phần Tổng

Lên lớp Thực Tự

Lý thuyết

Bài tập

Thảo luận

hành, thí nghiệm,

thực tập...

học, tự

ng.cứu

Chương 1: Giới thiệu hệ quản trị CSDL SQL SERVER

1. Giới thiệu về hệ thống quản trị CSDL quan hệ (RDBMS)

2. SQL Server 2005 và các phiên bản của nó

3. Các bước cài đặt SQL Server 2005 4. Các thành phần quan trọng trong

SQL Server 2005 5. Các CSDL hệ thống của SQL

Server 2005 6. Cấu trúc vật lý của một Database

trên SQL Server 2005 7. Cấu trúc logic của một Database

trên SQL Server 2005 8. Những điểm cần lưu ý khi thiết kế

CSDL 9. Các mô hình truy cập CSDL từ

phía ứng dụng 10. Các mô hình xác thực người sử

dụng của SQL Server 2005

3 3

Chương 2: Xử lý nâng cao và các phát biểu của Transact-SQL

1. Bó lệnh (Batch of Transact-SQL statement)

2. Kịch bản (Transact-SQL Script) 3. Các phương pháp đảm bảo tính

toàn vẹn dữ liệu 4. Tạo hàm phân hoạch, giản đồ

phân họach, bảng phân hoạch (partitioned table)

5. Truy vấn nâng cao: Select với từ khóa WITH

3 3 3 9

6. Ngôn ngữ lập trình T-SQL + Qui tắc đặt tên – Identifiers + Kiểu dữ liệu + Biến (Variables) + Biểu thức (Expressions) + Chú Thích (Comments) + Thủ tục và hàm + Một số hàm hệ thống

7. Các lệnh cơ bản của T-SQL + Câu lệnh đơn, câu lệnh phức hợp, lệnh nhảy Goto, nhãn + Các lệnh rẽ nhánh + Vòng lặp + Lệnh try/catch

Chương 3: Quản trị SQL Server 2005 1. Triển khai CSDL - Database

Deployment 2. Vấn đề tiềm ẩn trong việc triển

khai CSDL 3. Xác thực người sử dụng trên SQL

Server 2005 4. Tạo giản đồ: Create Schema 5. Giới thiệu các nhóm server (server

roles) và thêm người sử dụng vào nhóm

6. Giới thiệu các nhóm CSDL (database roles) và thêm người sử dụng vào nhóm

7. Tạo nhóm CSDL (database role) và phân quyền cho nhóm

8. Tạo nhóm app role và cách sử dụng

9. Phân quyền cho nhóm và người sử dụng:

+ Phân các quyền trên server

3 3

+ Phân các quyền trên database + Phân các quyền trên giản đồ (schema) + Phân các quyền trên bảng và view + Phân các quyền trên thủ tục và hàm

Chương 4: Thủ tục lưu trữ trên MS SQL Server 2005 (Stored

Procedure) 1. Các thao tác với thủ tục 2. Ý nghĩa của các tham số

EXECUTE AS; AS CALLER; AS OWNER; AS SELF

3. Các ví dụ: +Tạo thủ tục đơn giản + Tạo thủ tục đệ qui 4. Thiết lập thủ tục tự động, thủ tục :

sp_procoption 5. Gỡ rối thủ tục bằng công cụ VS.

NET

2 1 3

Chương 5: Hàm (Function) 1. Hàm trả về giá trị đơn - Scalar

Functions 2. Hàm UDF trả về bảng: + Inline Table-valued Functions + Multistatement Table-valued Functions 3. Ý nghĩa của các tham số

EXECUTE AS; AS CALLER; AS OWNER; AS SELF

4. Các ví dụ + Tạo hàm đơn giản + Tạo hàm đệ qui

5. Bảng mã kí tự ASCII, UNICODE, qui tắc sắp xếp trường dữ liệu văn bản (collation) trên MS SQL Server

6. Xây dựng hàm sắp xếp dữ liệu văn bản tiếng Việt

2 1 3

Chương 6: Kích họat (Trigger) 1. Data definition trigger (DDL

triggers) + Tạo DDL trigger trên server + Tạo DDL Trigger trên database 2. Data manipulation language

triggers (DML triggers) + Trigger dạng For + Trigger dạng thay thế INSTEAD OF + Tạo trigger trên bảng, view 3. Ý nghĩa của các tham số

EXECUTE AS; AS CALLER; AS OWNER; AS SELF

4. Gỡ rối trigger

2 1 3

Chương 7: Cách tạo và làm việc với chỉ mục (Index)

1. Mục đích của chỉ mục 2. Phương pháp lưu trữ dữ liệu trên

SQL Server 3. Qui tắc chọn các trường dữ liệu

làm chỉ mục 4. Phân loại chỉ mục + Chỉ mục dạng phân cụm Clustered, cấu trúc B+Tree + Chỉ mục dạng nonclustered + Chỉ mục dạng hàm băm 5. Chỉ mục + Tạo chỉ mục + Ý nghĩa và cách sử dụng tham số FILLFACTOR và PAD_INDEX khi triển khai CSDL lớn 6. Ví dụ minh họa 7. Bảo trì chỉ mục 8. Sử dụng công cụ Database

Engine Tuning Advisor

2 1 3

Chương 8: Kiểu dữ liệu con trỏ - Cursor

1. Khai báo kiểu dữ liệu con trỏ 2. Mở và lấy mẫu tin từ con trỏ 3. Kiểm tra trạng thái của con trỏ 4. Phạm vi họat động của con trỏ 5. Phân loại con trỏ + Con trỏ tĩnh (Static) + Con trỏ Keyset (Keyset-driven) + Con trỏ động (Dynamic) 6. Các ví dụ + Sử dụng con trỏ global để trao đổi dữ liệu giữa các thủ tục + Sửa đổi dữ liệu tại vị trí của con trỏ

2 1 3

Chương 9: Giao dịch - Transaction và Khoá –Lock

1. Giao dịch + Khái niệm về giao dịch + Các thuộc tính của transaction + Phân loại transaction + Cách sử dụng SQL Server Log + Khái niệm về CheckPoint và Recovery Interval + Các giao dịch phân tán 2. Khóa + Khóa chỉ được phép đọc (Shared Locks (S) – Read Only) + Khóa loại trừ (Exclusive Locks (X)) + Khóa Update Locks (U) 3. Các vấn đề khi truy xuất dữ liệu

một cách đồng thời 4. Các mức cô lập (isolation levels) + Read Uncommitted + Read Committed + Repeatable Read + Serializable

2 1 3

Chương 10: Tìm kiếm toàn văn (Full Text Search)

1. Lưu trữ dữ liệu toàn văn trong CSDL và khái niệm chung về (Full text search – FTS)

2. Quản trị FTS 3. Cấu hình chỉ mục và tạo chỉ mục

cho FT-Index bằng giao diện của MStdio

4. Cấu hình chỉ mục và tạo chỉ mục cho FT-Index bằng T-SQL

5. Tạo chỉ mục FT-Index cho các trường varchar(max),nvarchar(max),

3 3 6

image 6. Thực hiện các câu truy vấn TFS + CONTAINS + CONTAINSTABLE + FREETEXT

Chương 11: Sao lưu (Backup) và khôi phục (Restore) dữ liệu

1. Lý do cần sao lưu dữ liệu 2. Các dạng sao lưu dữ liệu 3. Các mô hình khôi phục dữ liệu 4. Sao lưu và khôi phục dữ liệu + Sao lưu và khôi phục dữ liệu sử dụng công cụ Microsoft SQL Server Management Studio (SSMS) + Sao lưu và khôi phục dữ liệu sử dung T-SQL 5. Kịch bản minh họa về việc sao

lưu và phục hồi dữ liệu khi hệ thống có sự cố xảy ra

6. Lập lịch cho việc sao lưu dữ liệu

3 3

Chương 12: Làm việc với dữ liệu phân tán

1. Truy vấn phân tán 2. Các Server liên kết

(LinkedServer) 3. Hàm OpenQuery 4. Hàm OPENROWSET

3 3

5. Ví dụ về giao dịch phân tán

7.2. Lịch trình tổ chức dạy học cụ thể

Bài giảng 1: Giới thiệu hệ quản trị CSDL SQL SERVER Chương 1 Tiết thứ: 4 - 6 Tuần thứ: 1

- Mục đích, yêu cầu: + Giới thiệu cho sinh viên các mô hình xử lý dữ liệu và phân tích ưu điểm

của mô hình Client/Server. + Giới thiệu hệ quản trị CSDL MS SQL Server 2005.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu - Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công. - Nội dung chính:

+ 1.1 + 1.2 + 1.3 + 1.4 (1 tiết) 1.1. Giới thiệu về hệ thống quản trị CSDL quan hệ (RDBMS) 1.2. SQL Server 2005 và các phiên bản của nó 1.3. Các bước cài đặt SQL Server 2005 1.4. Các thành phần quan trọng trong SQL Server 2005 + 1.5 + 1.6 + 1.7 (1 tiết) 1.5.Các CSDL hệ thống của SQL Server 2005 1.6 Cấu trúc vật lý của một Database trên SQL Server 2005 1. 7. Cấu trúc logic của một Database trên SQL Server 2005 + 1.8 + 1.9 + 1.10 (1 tiết) 1.8.Những điểm cần lưu ý khi thiết kế CSDL 1.9. Các mô hình truy cập CSDL từ phía ứng dụng 1.10. Các mô hình xác thực người sử dụng của SQL Server 2005

- Yêu cầu SV chuẩn bị: + Cài đặt SQL Server 2005. + Tạo cơ sở dữ liệu sử dụng MS SQL Server Management. + Đặt các tham số Initial size, Automatically growth file, Collation, … + Đọc tài liệu [3] chương 1 từ trang 1 – 41

Bài giảng 2: Xử lý nâng cao và các phát biểu của Transact-SQL Chương 2: Mục 2.1 + 2.2 + 2.3 + 2.4 + 2.5 Tiết thứ: 4 - 6 Tuần thứ: 2

- Mục đích, yêu cầu: + Giới thiệu cho sinh viên về các lệnh cơ bản để tạo CSDL, thao tác trên

CSDL, và một số lệnh quản trị CSDL + Một số kiến thức nâng cao về xử lý CSDL kích thước lớn và các phương

pháp đảm bảo toàn vẹn dữ liệu - Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu - Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công. - Nội dung chính: + 2.1 + 2.2 + 2.3 + 2.4 (2 tiết) 2.1. Bó lệnh (Batch of Transact-SQL statement) 2.2. Kịch bản (Transact-SQL Script) 2.3. Các phương pháp đảm bảo tính toàn vẹn dữ liệu 2. 4Tạo hàm phân hoạch, giản đồ phân họach, bảng phân hoạch (partitioned table) 2.5. Truy vấn nâng cao: Select với từ khóa WITH (1 tiết) - Yêu cầu SV chuẩn bị:

+ Đọc trước tài liệu [1] chương 3, từ trang 36 - 69 + Sử dụng cơ sở dữ liệu bán hàng và AdventureWokd, thực hành các nội

dung sau: Tạo và nhập dữ liệu cho cơ sở dữ liệu bán hàng Thực hiện các truy vấn cơ bản: SELECT, INSERT, UPDATE,

DELETE.

Bài giảng 3: Xử lý nâng cao và các phát biểu của Transact-SQL (tiếp)

Chương 2: Mục 2.6 + 2.7 Tiết thứ: 4 - 6 Tuần thứ: 3

- Mục đích, yêu cầu: + Cung cấp cho sinh viên các kiến thức về ngôn ngữ T – SQL

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu - Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính: 2.6. Ngôn ngữ lập trình T-SQL (1 tiết) 2.7. Các lệnh cơ bản của T-SQL (2 tiết)

- Yêu cầu SV chuẩn bị: + Đọc tài liệu [4], chương 4 từ trang 81 - 114 + Làm bài tập chương 2

Bài giảng 4: Xử lý nâng cao và các phát biểu của Transact-SQL – Thực

hành Chương 2: Tiết thứ: 4 - 6 Tuần thứ: 4

- Mục đích, yêu cầu: + Ôn luyện, hệ thống lại các kiến thức chương 2 + Sinh viên phải nắm được các lệnh thao tác dữ liệu cơ bản. + Có khả năng thực hiện các truy vấn nâng cao, các cấu trúc lệnh của T - SQL - Hình thức tổ chức dạy học: Thực hành, tự học, tự nghiên cứu - Thời gian: Thực hành: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công. - Nội dung chính: Thực hành trên cơ sở dữ liệu bán hàng và AdventureWork + Thực hiện các truy vấn cơ bản: INSERT, UPDATE, DELETE + Thực hiện một số truy vấn nâng cao. + Thực hiện truy vấn đệ quy sử dụng từ khóa with - Yêu cầu SV chuẩn bị:

+ Ôn luyên các kiến thức về ngôn ngữ T-SQL + Đọc và tìm hiểu trước các bài tập chương 2

Bài giảng 5: Quản trị SQL Server 2005

Chương 3 Tiết thứ: 4 - 6 Tuần thứ: 5

- Mục đích, yêu cầu: + Giới thiệu các kiến thức về quản trị login, quản trị user và quản trị các đối tượng trong cơ sở dữ liệu. + Sinh viên nắm được ý nghĩa, cách tạo, sửa thông tin các đối tượng trong cơ sở dữ liệu. + Nắm được các vấn đề khi triển khai cơ sở dữ liệu, cách thực hiện và khắc phục các sự cố.

+ Nắm được phương pháp phân quyền cho nhóm và người dùng. - Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu - Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công. - Nội dung chính: + 3.1 + 3.2 + 3.3 + 3.4 (1 tiết)

3.1. Triển khai CSDL - Database Deployment 3.2. Vấn đề tiềm ẩn trong việc triển khai CSDL 3.3. Xác thực người sử dụng trên SQL Server 2005 3.4. Tạo giản đồ: Create Schema

+ 3.5 + 3.6 + 3.7 (1 tiết) 3.5. Giới thiệu các nhóm server (server roles) và thêm người sử dụng vào nhóm 3.6. Giới thiệu các nhóm CSDL (database roles) và thêm người sử dụng vào nhóm 3.7. Tạo nhóm CSDL (database role) và phân quyền cho nhóm

+ 3.8 + 3.9 (1 tiết) 3.8. Tạo nhóm app role và cách sử dụng 3.9 Phân quyền cho nhóm và người sử dụng:

- Yêu cầu SV chuẩn bị: + Đọc trước tài liệu [3] trang 8, 9 từ trang 321 - 413 + Tìm hiểu các nội dung:

Các vấn đề tiềm ẩn trong triển khai CSDL. Vấn đề phân quyền, bảo mật trong SQL Server Attach và Detach cơ sở dữ liệu. Tạo schema. Tạo các userlogin. Tạo các Database Role. Phân quyền trên lược đồ. Phân quyền trên các đối tượng (Views, Tables, …)

Bài giảng 6: Thủ tục lưu trữ trên MS SQL Server 2005 (Stored Procedure)

Chương 4 Tiết thứ: 4 - 6 Tuần thứ: 6

- Mục đích, yêu cầu: + Ý nghĩa của thủ tục lưu trữ, tạo và thực thi thủ tục

+ Hiểu được ý nghĩa các tham số EXECUTE AS, RECOMPILE, ENCRYPTION, OUTPUT - Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu - Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công. - Nội dung chính: + 4.1 + 4.2 (1 tiết)

4.1 Các thao tác với thủ tục 4.2 Ý nghĩa của các tham số EXECUTE AS; AS CALLER; AS OWNER; AS SELF

+ 4.3 + 4.4 + 4.5 (2 tiết) 4.3 Các ví dụ: 4.4 Thiết lập thủ tục tự động, thủ tục : sp_procoption 4.5 Gỡ rối thủ tục bằng công cụ VS. NET

- Yêu cầu SV chuẩn bị: + Đọc trước tài liệu [4] chương 6 từ trang 151 - 184 + Tìm hiểu các nội dung sau:

Các ưu điểm khi dùng thủ tục so với dùng tập các câu lệnh đơn lẻ. Ý nghĩa của query plan, các tham số dạng default, output, execute as. Thủ tục đệ quy Tạo một số thủ tục đơn giản trong CSDL bán hàng. Tạo thủ tục đệ quy, thực hiện lời gọi để đệ quy quá 32 lần.

Bài giảng 7: Hàm (Function)

Chương 5 Tiết thứ: 4 - 6 Tuần thứ: 7

- Mục đích, yêu cầu: + Ý nghĩa của hàm, tạo và thực thi thủ tục + So sánh hàm với view.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu - Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công. - Nội dung chính:

+ 5.1 + 5.2 + 5.3 (1 tiết) 5.1. Hàm trả về giá trị đơn - Scalar Functions 5.2. Hàm UDF trả về bảng: 5.3. Ý nghĩa của các tham số EXECUTE AS; AS CALLER; AS OWNER;

AS SELF + 5.4 + 5.5 + 5.6 (2 tiết) 5.4. Các ví dụ 5.5. Bảng mã kí tự ASCII, UNICODE, qui tắc sắp xếp trường dữ liệu văn bản (collation) trên MS SQL Server 5.6. Xây dựng hàm sắp xếp dữ liệu văn bản tiếng Việt

- Yêu cầu SV chuẩn bị: + Tìm hiểu một số hàm thường dùng của hệ thống: getdate, row_number, @@identity,… + Viết một số hàm tổng hợp, tìm kiếm dữ liệu trên CSDL bán hàng. + Đọc trước tài liệu [4] chương 5 trang 117 - 149

Bài giảng 8: Kích họat (Trigger)

Chương 6 Tiết thứ: 4 - 6 Tuần thứ: 8

- Mục đích, yêu cầu: + Giúp sinh viên biết cách sử dụng các luồng và xử lý file + Tìm hiểu ý nghĩa, trường hợp sử dụng, cú pháp tạo, sửa, xóa DDL trigger

và DML trigger. + Sử dụng MS Management Studio để tạo, xóa, sửa trigger.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu - Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công. - Nội dung chính:

+ 6.1 + 6.2 (2 tiết) 6.1. Data definition trigger (DDL triggers) 6.2. Data manipulation language triggers (DML triggers) + 6.3 + 6.4 (1 tiết) 6.3. Ý nghĩa của các tham số EXECUTE AS; AS CALLER; AS OWNER; AS SELF 6.4. Gỡ rối trigger

- Yêu cầu SV chuẩn bị: + Đọc trước tài liệu [4] chương 7 từ trang 187 - 217 + Tạo một số trigger có chức năng quản trị mức Server. + Tạo một số trigger có chức năng quản trị mức database. + Tạo một số trigger mức bảng, có chức năng kiểm tra tính hợp lệ dữ liệu trong khi thao tác.

Bài giảng 9: Cách tạo và làm việc với chỉ mục (Index)

Chương 7 Tiết thứ: 4 - 6 Tuần thứ: 9

- Mục đích, yêu cầu: + Giới thiệu về chỉ mục, tạo và sử dụng chỉ mục trong CSDL. + Sinh viên nắm được cách tạo và bảo trì chỉ mục.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu - Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công. - Nội dung chính:

+ 7.1 + 7.2 + 7.3 + 7.4 (1 tiết) 7.1. Mục đích của chỉ mục 7.2. Phương pháp lưu trữ dữ liệu trên SQL Server 7.3. Qui tắc chọn các trường dữ liệu làm chỉ mục 7.4. Phân loại chỉ mục + 7.5 + 7.6 + 7.7 + 7.8 (2 tiết) 7.5. Tạo và sử dụng chỉ mục 7.6. Ví dụ minh họa 7.7. Bảo trì chỉ mục 7.8. Sử dụng công cụ Database Engine Tuning Advisor

- Yêu cầu SV chuẩn bị: + Đọc trước tài liệu [1] chương 8 trang 189 - 228 + Tạo bảng có dữ liệu lớn, thực thi truy vấn với điều kiện where có nhiều phép AND, sắp xếp dữ liệu. Xem hiệu năng thực thi truy vấn. + Tạo chỉ mục cho các trường sau where, thực thi câu lệnh. Xem hiệu năng truy vấn.

Bài giảng 10: Kiểu dữ liệu con trỏ - Cursor

Chương 8 Tiết thứ: 4 - 6 Tuần thứ: 10

- Mục đích, yêu cầu: + Giúp sinh viên hiểu, phân loại và sử dụng được các loại con trỏ khác nhau. + Sinh viên viết khối lệnh sử dụng con trỏ để đọc các mẩu tin + Nắm được các tình huống nên sử dụng con trỏ.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công. - Nội dung chính:

+ 8.1 + 8.2 + 8.3 + 8.4 (1 tiết) 8.1. Khai báo kiểu dữ liệu con trỏ 8.2. Mở và lấy mẫu tin từ con trỏ 8.3. Kiểm tra trạng thái của con trỏ 8.4. Phạm vi họat động của con trỏ

+ 8.5 + 8.6 (2 tiết) 8.5. Phân loại con trỏ 8.6. Các ví dụ

- Yêu cầu SV chuẩn bị: + Đọc trước tài liệu [1] chương 15 trang 421 - 453 + Sử dụng biến con trỏ, duyệt các bản ghi của bảng nhân viên, in ra tên các nhân viên. + Sử dụng biến con trỏ KeySet và Dynamic để cập nhật dữ liệu tại vị trí con trỏ. + Tạo con trỏ Global, trao đổi dữ liệu giữa 2 thủ tục.

Bài giảng 11: Giao dịch - Transaction và Khoá –Lock

Chương 9 Tiết thứ: 4 - 6 Tuần thứ: 11

- Mục đích, yêu cầu: + Giới thiệu giao dịch, khóa và cách thức sử dụng trong môi trường nhiều

người sử dụng. - Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu - Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công. - Nội dung chính: 9.1. Tìm hiểu về giao dịch (1 tiết) + 9.2 + 9.3 + 9.4 (2 tiết) 9.2. Các loại khóa 9.3. Các vấn đề khi truy xuất dữ liệu một cách đồng thời 9.4. Các mức cô lập (isolation levels) - Yêu cầu SV chuẩn bị:

+ Đọc trước tài liệu [1] chương 12 trang 329 - 358 + Tạo các giao dịch.

+ Thiết lập các chế độ khóa.

Bài giảng 12: Tìm kiếm toàn văn (Full Text Search) Chương 10 Tiết thứ: 4 - 6 Tuần thứ: 12

- Mục đích, yêu cầu: + Giới thiệu bài toán tìm kiếm toàn văn, cách thức thực hiện trong hệ quản

trị MS SQL Server 2005. - Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu - Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công. - Nội dung chính: + 10.1 + 10.2 + 10.3 + 10.4 + 10.5 (2 tiết) 10.1. Lưu trữ dữ liệu toàn văn trong CSDL và khái niệm chung về (Full text search – FTS) 10.2. Quản trị FTS 10.3. Cấu hình chỉ mục và tạo chỉ mục cho FT-Index bằng giao diện của MStdio 10.4. Cấu hình chỉ mục và tạo chỉ mục cho FT-Index bằng T-SQL 10.5. Tạo chỉ mục FT-Index cho các trường varchar(max),nvarchar(max), image 10.6. Thực hiện các câu truy vấn TFS (1 tiết) - Yêu cầu SV chuẩn bị:

+ Đọc trước tài liệu [2] trang 1 - 239 + Các bước cấu hình để tạo chỉ mục và tìm kiếm sử dụng FTS trong SQL Server. + Tìm hiểu lưu trữ dữ liệu toàn văn trong CSDL AdventureWork.

Bài giảng 13: Tìm kiếm toàn văn (Full Text Search) – Thực hành Chương 10 Tiết thứ: 4 - 6 Tuần thứ: 13

- Mục đích, yêu cầu: + Hệ thống lại các kiến thức chương 13. + Thực hành làm các bài tập từ chương 3 – 10.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu - Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính: 1.1 Viết một số hàm, thủ tục tổng hợp dữ liệu trên cơ sở dữ liệu bán hàng (1 tiết). 1.2. Sử dụng con trỏ duyệt qua các mẩu tin (1 tiết). 1.3. Tạo chỉ mục, thực hiện các thao tác tìm kiếm toàn văn (1 tiết). - Yêu cầu SV chuẩn bị:

+ Xem lại các bài tập chương 4 – 9. + Làm các bài tập chương 10

Bài giảng 14: Sao lưu (Backup) và khôi phục (Restore) dữ liệu

Chương 11 Tiết thứ: 4 - 6 Tuần thứ: 14

- Mục đích, yêu cầu: + Sinh viên hiểu được ý nghĩa, tầm quan trọng và phương pháp sao lưu, phục

hồi dữ liệu. + Nắm được cú pháp sao lưu, khôi phục dữ liệu. + Sử dụng MS Management Studio để sao lưu và khôi phục dữ liệu.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu - Thời gian: Lý thuyết, thảo luận: 3 tiết; Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công. - Nội dung chính: + 11.1 + 11.2 + 11.3 (1 tiết) 11.1. Lý do cần sao lưu dữ liệu 11.2. Các dạng sao lưu dữ liệu 11.3. Các mô hình khôi phục dữ liệu + 11.4 + 11.5 + 11.6 (2 tiết) 11.4. Sao lưu và khôi phục dữ liệu 11.5. Kịch bản minh họa về việc sao lưu và phục hồi dữ liệu khi hệ thống có sự cố xảy ra 11.6. Lập lịch cho việc sao lưu dữ liệu - Yêu cầu SV chuẩn bị:

+ Đọc trước tài liệu [3] chương 11 trang 473 - 520 + Sao lưu dữ liệu sử dụng MS Studio. + Phục hồi liệu sử dụng MS Studio. + Sao lưu dữ liệu sử dụng T-SQL. + Phục hồi liệu sử dụng T-SQL.

Bài giảng 15: Làm việc với dữ liệu phân tán Chương 12 + bài tập Tiết thứ: 4 - 6 Tuần thứ: 15

- Mục đích, yêu cầu: + Xử lý dữ liệu phân tán + Hệ thống lại các bài tập ôn luyện thi kết thúc học phần. - Hình thức tổ chức dạy học: Lý thuyết, thực hành, thảo luận, tự học, tự nghiên cứu - Thời gian: Thực hành 3 tiết, Tự học, tự nghiên cứu: 3 tiết - Địa điểm: Giảng đường do P2 phân công. - Nội dung chính:

+ 12.1 + 12.2 + 12.3 + 12.4 + 12.5 (2 tiết) 12.1. Truy vấn phân tán 12.2. Các Server liên kết (LinkedServer) 12.3. Hàm OpenQuery 12.4. Hàm OPENROWSET 12.5. Ví dụ về giao dịch phân tán

+ Giải đáp các câu hỏi về nội dung học, thi kết thúc học phần (1 tiết). - Yêu cầu SV chuẩn bị: + Đọc trước tài liệu [3] chương 13 trang 523 - 560 + Nắm chắc thời gian, địa điểm, quy chế, nội dung thi kết thúc học phần. + Tạo Server liên kết bằng MS Mstdio. + Tạo Server lien kết bằng T-SQL. + Đăng nhập vào Server đã được kết nối. + Truy vấn dữ liệu từ Server kết nối.

8. Chính sách đối với học phần và các yêu cầu khác của giáo viên Sự hiện diện trên lớp: Không đi học 5 buổi sẽ không được thi. Mỗi lần lên bảng chữa bài tập đúng được ghi nhận, cộng vào điểm thường

xuyên (1-2 lần: 0.5 điểm, 3 lần: 1 điểm). Chữa bài tập sai không bị trừ điểm. Hết Chương 2 nộp Bài làm của Bài tập Chương 3. Làm bài kiểm tra giữa học kỳ 1 – 2 lần.

9. Phương pháp, hình thức kiểm tra - đánh giá kết quả học tập học phần 9.1. Kiểm tra – đánh giá thường xuyên:

Thường xuyên điểm danh vào thời điểm thích hợp 9.2. Kiểm tra - đánh giá định kì:

- Tham gia học tập trên lớp (đi học đầy đủ, chuẩn bị bài tốt và tích cực thảo luận,…): hệ số 0.10.

- Hoàn thành tốt Bài tập về nhà , Kiểm tra giữa kì : hệ số 0.2 - Thi kết thúc học phần tốt: hệ số 0.7

Chủ nhiệm Khoa (Ký và ghi rõ họ tên)

Đại tá Đào Thanh Tĩnh

Chủ nhiệm Bộ môn (Ký và ghi rõ họ tên)

Thiếu tá Phan Nguyên Hải

Giảng viên biên soạn (Ký và ghi rõ họ tên)

Thượng úy Phan Việt Anh Chú ý:

1. Tất cả mẫu theo khổ giấy A4. Đặt lề như sau: Lề trên 2,5 cm ; Lề dưới: 2 cm; Lề trái: 3,5 cm ; Lề phải: 1,5 cm. - Dãn dòng: Multiple: 1.2 và không đánh số trang. - Soạn thảo với mã UNICODE, font Times New Roman, cỡ chữ là 14. 2. Khi nộp đề cương chi tiết học phần yêu cầu nộp cả bản điện tử.