GIÁO TRÌNH QUẢN TRỊ DỮ LIỆU NÂNG CAO

107 712 5
GIÁO TRÌNH QUẢN TRỊ DỮ LIỆU NÂNG CAO

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 TUYÊN BỐ BẢN QUYỀN Tài liệu này là loại giáo trình nội bộ dùng trong nhà trường với mục đích làm tài liệu giảng dạy cho giáo viên và học sinh, sinh viên nên các nguồn thông tin có thể được tham khảo. Tài liệu phải do trường Cao đẳng nghề Kiên Giang in ấn và phát hành. Việc sử dụng tài liệu này với mục đích thương mại hoặc khác với mục đích trên đều bị nghiêm cấm và bị coi là vi phạm bản quyền. Trường Cao đẳng nghề Kiên Giang xin chân thành cảm ơn các thông tin giúp cho nhà trường bảo vệ bản quyền của mình. Địa chỉ liên hệ: Trường Cao đẳng nghề Kiên Giang. 1022 Nguyễn Trung Trực, An Hòa, Tp.Rạch Giá, Kiên Giang Điện thoại: 0773. 814946 Fax: 0773. 814946 Website: www.caodangnghekg.edu.vn 2 LỜI NÓI ĐẦU Giáo trình Quản trị CDL nâng cao (MS SQL SERVER) được biên soạn dựa theo chương trình khung của Tổng cục dạy nghề chuyên ngành Quản trị mạng máy tính. Giáo trình trình bày những vấn đề cốt lõi nhất của Quản trị CDL nâng cao (MS SQL SERVER). Các bài học được trình bày ngắn gọn. Giáo trình này áp dụng cho sinh viên Trường Cao Đẳng Nghề Kiên Giang, nghề Quản trị mạng máy tính. Giáo trình bổ sung những kiến thức nâng cao cơ sỡ dữ liệu. Giúp cho sinh viên phát triển các phát biểu T_SQL, Trigger, thủ tục, hàm, cursor …. Trong quá trình giảng dạy và biên soạn cuốn giáo trình này, chúng tôi nhận được sự động viên của các thầy cô trong Ban Giám Hiệu nhà trường cũng như ý kiến đóng góp của các đồng nghiệp trong Khoa Điện – Điện Tử Máy Tính. Chúng tôi xin chân thành cảm ơn và hy vọng rằng giáo trình này sẽ giúp cho việc dạy và học môn Cấu trúc dữ liệu và giải thuật của trường chúng ta ngày càng tốt hơn Tất cả những ý kiến đóng góp điều được trân trọng. Rạch giá, ngày 04 tháng 12 năm 2011 Tham gia biên soạn 1. Ông Nguyễn Hữu Nhân 2. Bà Lưu Phương Thúy 3 MỤC LỤC TUYÊN BỐ BẢN QUYỀN 1 LỜI NÓI ĐẦU 1 PHẦN GIỚI THIỆU MÔ ĐUN 7 CHƯƠNG I: GIỚI THIỆU VỀ SQL SERVER 2005 11 1.1 CÀI ĐẶT SQL SERVER 2005 EXPRESS EDITION 11 1.1.1 Các yêu cầu cho hệ thống 32bit 11 1.1.2 Các bước cài đặt SQL Server 2005 Express Edition 13 1.2 MỘT SỐ THAO TÁC C Ơ BẢN TRÊN SQL SERVER 2005 EXPRESS EDITION. 22 1.2.1 Tạo một CSDL mới 22 1.2.2 Tạo bảng mới 23 CHƯƠNG II: STRUCTURED QUERY LANGUAGE (SQL) 26 2.1 SQL LÀ NGÔN NGỮ CỦA CƠ SỞ DỮ LIỆU QUAN HỆ 26 2.2 VAI TRÒ CỦA SQL 26 2.3 GIỚI THIỆU SƠ LƯỢC VỀ TRANSACT SQL (T-SQL) 27 2.3.1 Ngôn ngữ định nghĩa dữ liệu ( Data Definition Language – DDL) 28 2.3.2 Ngôn ngữ điều khiển dữ liệu (Data control language – DCL) 28 2.3.3 Ngôn ngữ thao tác dữ liệu (Data mani pulation language – DML) 29 2.3.4 Cú pháp của T-SQL 30 2.3.5 Các kiểu dữ liệu 31 2.3.6 Biến (Variables) 32 2.3.7 Hàm (Function) 33 2.3.8 Các toán tử (Operators) 33 2.3.9 Các thành phần điều khiển (Control of flow) 34 2.3.10 Chú thích (Comment) 34 2.3.11 Giá trị NULL 34 CHƯƠNG III: NGÔN NGỮ THAO TÁC DỮ LIỆU – DML 35 3.1 CÂU LỆNH SELECT 35 3.1.1 Danh sách chọn trong câu lệnh SELECT 36 4 3.1.2 Mệnh đề FROM 40 3.1.3 Mệnh đề WHERE - điều kiện truy vấn dữ liệu 40 3.1.4 Phép hợp (UNION) 38 3.1.5 Phép nối 41 3.1.6 Các loại phép nối 43 3.1.7 Phép nối theo chuẩn SQL -92 45 3.1.8 Mệnh đề GROUP BY 47 3.1.9 Truy vấn con (Subquery) 50 3.2 THÊM, CẬP NHẬT VÀ XÓA DỮ LIỆU 51 3.2.1 Thêm dữ liệu 52 3.2.2 Cập nhật dữ liệu 53 3.2.3 Xóa dữ liệu 54 CHƯƠNG IV NGÔN NGỮ ĐỊNH NGHĨA DỮ LIỆU – DDL 56 4.1 TẠO BẢNG 56 4.2 CÁC LOẠI RÀNG BUỘC 58 4.2.1 Ràng buộc CHECK 58 4.2.2 Ràng buộc PRIMARY KEY 59 4.2.3 Ràng buộc FOREIGN KEY 60 4.3 SỬA ĐỔI ĐỊNH NGHĨA BẢNG 61 4.4 XÓA BẢNG 63 4.5 KHUNG NHÌN - VIEW 63 4.6 THÊM, CẬP NHẬT, XÓA DỮ LIỆU TRONG VIEW 65 4.7 THAY ĐỔI ĐỊNH NGHĨA KHUNG NH ÌN 65 4.8 XÓA KHUNG NHÌN 66 CHƯƠNG V THỦ TỤC LƯU TRỮ, HÀM VÀ TRIGGER 67 5.1 THỦ TỤC LƯU TRỮ (STORED PROCEDURE) 67 5.1.1 Tạo thủ tục lưu trữ 68 5.1.2 Lời gọi thủ tục 69 5.1.3 Biến trong thủ tục l ưu trữ 69 5.1.4 Giá trị trả về trong thủ tục l ưu trữ 70 5 5.1.5 Tham số với giá trị mặc định 71 5.1.6 Sửa đổi thủ tục 72 5.1.7 Xóa thủ tục 72 5.2 HÀM DO NGƯỜI DÙNG ĐỊNH NGHĨA (USER DEFINED FUNCTION-UDF) 72 5.2.1 Hàm vô hướng - Scalar UDF 73 5.2.2 Hàm nội tuyến - Inline UDF 74 5.2.3 Hàm bao gồm nhiều câu lệnh b ên trong – Multi statement UDF 75 5.2.4 Thay đổi hàm 76 5.2.5 Xóa hàm 77 5.3 TRIGGER 77 5.3.1 Các đặc điểm của trigger 77 5.3.2 Các trường hợp sử dụng trigger 77 5.3.3 Khả năng sau của trigger 78 5.3.4 Định nghĩa trigger 78 5.3.5 Kích hoạt trigger dựa tr ên sự thay đổi dữ liệu tr ên cột 82 5.3.6 Sử dụng trigger và Giao tác (TRANSACTION) 83 5.4 DDL TRIGGER 84 5.5 ENABLE/ DISABLE TRIGGER 85 CHƯƠNG VI SAO LƯU VÀ PHỤC HỒI DỮ LIỆU (BACKUP AND RESTORE) 87 6.1 CÁC LÝ DO PHẢI THỰC HIỆN BACK UP 87 6.2 CÁC LOẠI BACKUP 87 6.2.1 Full backup và Differential backup 87 6.2.2 Transaction log backup 88 6.3 CÁC THAO TÁC THỰC HIỆN QUÁ TR ÌNH BACKUP VÀ RESTORE TRONG SQL SERVER 2005 EXPRESS EDITION 89 6.3.1 Sao lưu (Backup) 89 6.3.2 Phục hồi (Restore) 91 CHƯƠNG VII: CÁC HÀM QUAN TRỌNG TRONG T-SQL 94 7.1 CÁC HÀM LÀM VI ỆC VỚI KIỂU DỮ LIỆU SỐ 94 7.1.1 Hàm ISNUMERIC 94 6 7.1.2 Hàm ROUND 94 7.2 CÁC HÀM LÀM VIỆC VỚI KIỂU DỮ LIỆU CHUỖI 95 7.2.1 Hàm LEFT 95 7.2.2 Hàm RIGHT 95 7.2.3 Hàm SUBSTRING 95 7.2.4 Hàm LEN 96 7.2.5 Hàm REPLACE 96 7.2.6 Hàm STUFF 96 7.2.7 Hàm LOWER/UPPER 97 7.2.8 Hàm LTRIM/RTRIM 97 7.3 CÁC HÀM LÀM VI ỆC VỚI KIỂU DỮ LIỆU NG ÀY THÁNG/ THỜI GIAN 97 7.3.1 Hàm GETDATE 97 7.3.2 Hàm DAY/ MONTH/ YEAR 98 7.3.3 Hàm DATEPART 98 7.3.4 Hàm DATENAME 99 7.4 Hàm CAST và CONVERTER 99 TÀI LIỆU THAM KHẢO 101 7 PHẦN GIỚI THIỆU MÔ ĐUN QUẢN TRỊ CƠ SỞ DỮ LIỆU NÂNG CAO (MS SQL SERVER) MÃ SỐ MÔN ĐUN: MĐ 17 I. VỊ TRÍ, TÍNH CHẤT CỦA MÔN HỌC: - Vị trí của môn học: Môn học được bố trí cho sinh viên học trước mô đun Lập trình trực quan, Lập trình ứng dụng web với PHP và sau các môn học chuyên môn nghề khác . - Tính chất của môn học: Là môn học đào tạo nghề bắt buộc II. MỤC TIÊU MÔN HỌC - Hiểu được các kiến thức tổng quan về hệ quản trị cơ sở dữ liệu, các khái niệm về cơ sở dữ liệu quan hệ hướng đối tượng và cơ sở dữ liệu quan hệ, ngôn ngữ MS SQL. - Nắm được các kiế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ác giữ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 - 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 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 III. NỘI DUNG MÔN HỌC 1. Nội dung tổng quát và phân phối thời gian: Số TT Tên chương mục Thời gian Tổng số Lý thuyết Thực hành Bài tập Kiểm tra (LT hoặcTH) I Giới thiệu lịch sử phát triển 4 2 2 - Giới thiệu chung về lịch sử phát triển của MS SQL Server2000, sự quan trọng và cần thiết của chúng trong lập trình ứng dụng - Các kiểu dữ liệu trong MS SQL SERVER 8 II Các thành phần cơ bản của MS SQL Server 8 4 4 - Khái niệm về mô hình quan hệ - Cấu trúc và vai trò của các CSDL: Master, Model, msdl, Tempdb, pubs, tempdb, Northwind. III Giới thiệu một số công cụ MS SQL Server 8 4 4 - Sử dụng công cụ Enterprise manager để tạo ra các CSDL, các đối tượng trong CSDL. - Cách dùng công cụ Query Analyzer để ể tạo ra các CSDL, các đối tượng trong CSDL - Thiết lập một số cấu hình về Client network utility, Server network Utility IV Phát biểu cơ bản T-SQL 18 5 12 1 - Cú pháp các câu lệnh T- SQL - Các ví dụ minh họa - Bài tập áp dụng - Kiểm tra thực hành V Tạo và sửa đổi bằng dữ liệu 18 5 12 1 - Tạo CSDL và bảng dữ liệu bảng lệnh Create Database, Create Table 9 - Sử dụng được các ràng buộc: Check, Primary, Unique, foreign key - Xóa dữ liệu trong bảng, cập nhật, và sửa đổi cấu trúc bảng - Kiểm tra thực hành VI Khóa và ràng buộc dữ liệu 9 3 6 - Khái niệm cơ bản về ràng buộc - Ràng buộc dữ liệu nhập vào - Ràng buộc miền - Ràng buộc trọn vẹn - Giá trị mặc định và qui luật VII Chuẩn hóa quan hệ 10 3 6 1 - Khái niệm về chuẩn hóa - Các bước chuẩn hóa - Các loại quan hệ - Kiểm tra thực hành VIII Bảng ảo(view) 8 2 6 - Khái niệm về view - Cách dùng view để lọc dữ liệu - Cách cập nhật dữ liệu vào view IX Thiết kế cơ sở dữ liệu 7 2 4 1 10 - Khái niệm về mô hình quan hệ - Hiểu và phân biệt được mô hình logic và mô hình vật lý. - Cách sao lưu (backup) và khôi phục (restore) dữ liệu - Kiểm tra thực hành Cộng 90 30 56 4 V. PHƯƠNG PHÁP VÀ NỘI DUNG ĐÁNH GIÁ * Về kiến thức: Được đánh giá qua bài kiểm tra viết, trắc nghiệm đạt được các yêu cầu sau: - Hiểu được các kiểu dữ liệu trong MS SQL Server - Sử dụng được các tiện ích trong MS SQL Server - Hiểu được các phát biểu cơ bản của T-SQL - Hiểu và tạo được các khoá và ràng buộc dữ liệu - Chuẩn hóa được các loại quan hệ - Thiết kế được một CSDL - Thiết lập được các bảo mật trên CSDL * Về kỹ năng: Đánh giá kỹ năng thực hành của sinh viên trong bài thực hành Tạo CSDL, truy vấn dữ liệu, tạo quan hệ và bảo mật dữ liệu * Về thái độ: Cẩn thận, tự giác. [...]... 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... ười sử dụng và hệ quản trị cơ sở dữ liệu 27 Trong hầu hết các hệ quản trị c ơ sở dữ liệ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ể... 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ệu cung 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,... có Giá trị bị lỗi do tính toán (tr àn số, chia cho không, ) Những giá trị không xác định đ ược biểu diễn trong c ơ sở dữ liệu quan hệ bởi các giá trị NULL Đây là giá tr ị đặc biệt và không nên nhầm lẫn với chuỗi rỗng (đối với dữ liệu k iểu chuỗi) hay giá trị không (đối với giá trị kiểu số) Giá trị NULL đóng một vai tr ò quan trọng trong các cơ sở dữ liệu và hầu hết các hệ quản trị c ơ sở dữ liệu quan... là công cụ để giao tiếp giữa cá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ôn ngữ để 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... 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ác cập nhật cũng nh... câu lệnh Trong các hệ quản trị c ơ sở dữ liệu khác nhau, mặc các câu lệnh đều có cùng dạng và cùng mục đích sử dụng song mỗi một hệ quản trị c ơ sở dữ liệu có thể có một số thay đổi n ào đó Điều này đôi khi dẫn đến cú pháp chi tiết của các câu lệnh có thể sẽ khác nhau trong các hệ quản trị c ơ cơ sở dữ liệu khác nhau T-SQL được chia làm 3 nhóm: 28 2.3.1 Ngôn ngữ định nghĩa dữ liệu ( Data Definition... 2.3.11 Giá trị NULL Một cơ sở dữ liệu là sự phản ánh của một hệ thống trong thế giới thực, do đó các giá trị dữ liệu tồn tại trong c ơ sở dữ liệu có thể không xác định đ ược Một giá trị không xác định đ ược xuất hiện trong cơ sở dữ liệu có thể do một số nguy ên nhân sau: Giá trị đó có tồn tại nh ưng không biết Không xác định được giá trị đó có tồn tại hay không Tại một thời điểm n ào đó giá trị chưa... cần phải thực hiện tr ê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 2.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ồn tạ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ện trong các hệ quản trị c ơ sở dữ liệu với vai tr ò ngôn ngữ và... SELECT: Sử dụng để truy xuất dữ liệu từ môt hoặc nhiều bảng INSERT: Thêm dữ liệu UPDATE: Cập nhật dữ liệu DELETE: Xoá dữ liệu Trong số các câu lệnh n ày, có thể nói SELECT l à câu lệnh tương đối phức tạp và được sử dụng nhiều trong c ơ sở dữ liệu Với câu lệnh n ày, ta không chỉ thực hiện các yêu cầu truy xuất dữ liệu đơn thuần mà còn có thể thực hiện được các yêu cầu thống kê dữ liệu phức tạp Cũng chính . của Quản trị CDL nâng cao (MS SQL SERVER). Các bài học được trình bày ngắn gọn. Giáo trình này áp dụng cho sinh viên Trường Cao Đẳng Nghề Kiên Giang, nghề Quản trị mạng máy tính. Giáo trình. quan về hệ quản trị cơ sở dữ liệu, các khái niệm về cơ sở dữ liệu quan hệ hướng đối tượng và cơ sở dữ liệu quan hệ, ngôn ngữ MS SQL. - Nắm được các kiến trúc của hệ quản trị cơ sở dữ liệu MS SQL. LỜI NÓI ĐẦU Giáo trình Quản trị CDL nâng cao (MS SQL SERVER) được biên soạn dựa theo chương trình khung của Tổng cục dạy nghề chuyên ngành Quản trị mạng máy tính. Giáo trình trình bày những

Ngày đăng: 08/06/2014, 07:09

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan