BỘ NÔNG NGHIỆP VÀ PHÁT TRIỂN NÔNG THÔNG TRƯỜNG CAO ĐẲNG CƠ GIỚI NINH BÌNH GIÁO TRÌNH MÔ ĐUN: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU NGHỀ: LẬP TRÌNH MÁY TÍNH TRÌNH ĐỘ: CAO ĐẲNG NGỀ Ban hành kèm theo Quyết định số: /QĐ-… ngày…….năm của Trường Cao đẳng Cơ giới Ninh Bình Ninh Bình 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. LỜI GIỚI THIỆU Đây là tài liệu được biên soạn theo chương trình khung trình độ đào tạo Cao đẳng nghề Lập trình máy tính. Để học tốt môn học này, người học cần phải có kiến thức về cơ sở dữ liệu.
Hệ quản trị cơ sở dữ liệu nhằm giúp người học có kiến thức và kỹ năng để xây dựng một cơ sở dữ liệu hoàn chỉnh với đầy đủ các ràng buộc và bảo mật tốt nhất trên SQL Server. Với phạm vi của tài liệu này, chúng tôi cung cấp cho người học các kiến thức và kỹ năng chính sau: - Tạo Database hoàn chỉnh: tạo bảng, tạo quan hệ, nhập dữ liệu, tạo các truy vấn. - Tạo thủ tục lưu trữ. - Bảo mật, sao lưu dự phòng cơ sở dữ liệu.
Trong quá trình biên soạn, chúng tôi có tham khảo nhiều nguồn tài liệu trên Internet. Mặc dù rất cố gắng nhưng chắc chắn không tránh khỏi những thiếu sót, tác giả rất mong nhận được những ý kiến đóng góp để tài liệu ngày càng hoàn thiện hơn để cung cấp cho người học những kiến thức và kỹ năng thiết thực. Tài liệu này được thiết kế theo từng mô đun/ môn học thuộc hệ thống mô đun/ môn học của một chương trình để đào tạo hoàn chỉnh nghề Lập trình máy tính ở trình độ Cao đẳng. Tài liệu dùng làm giáo trình học tập cho sinh viên trong các khóa đào tạo và cũng có thể được sử dụng cho đào tạo ngắn hạn hoặc công nhân kỹ thuật đồng thời có thể làm tài liệu tham khảo cho các lập trình viên.
Tam Điệp, ngày……. năm…… Tham gia biên soạn 1. Phạm Thị Thoa 2. Nguyễn Xuân Khôi 3.
Đoàn Xuân Luận 2 MỤC LỤC LỜI GIỚI THIỆU. Tổng quan về mô hình Client/Server. Các kiến thức tổng quan về cơ sở dữ liệu. Các giai đoạn phát triển của một hệ quản trị cơ sở dữ liệu.
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. Các đặc trưng của mô hình Client/server. Hệ quản trị cơ sở dữ liệu Microsoft SQL Server. Cài đặt MS SQL Server.
Làm việc với Microsoft SQL Server Management Studio Express. Các thao tác cơ bản trên SQL Server. Đăng nhập vào MS SQL Server. Tạo cơ sở dữ liệu trong MS SQL Server.
Tạo bảng trong MS SQL Server. Tạo quan hệ trong MS SQL Server. Nhập dữ liệu trong SQL Server. Truy vấn SQL Server.
Tạo thủ tục lưu trữ. Tạo thủ tục lưu trữ. Lời gọi thủ tục lưu trữ. Sử dụng biến trong thủ tục.
Giá trị trả về của tham số trong thủ tục lưu trữ. Tham số với giá trị mặc định. Định nghĩa trigger. Sử dụng mệnh đề IF UPDATE trong trigger.
ROLLBACK TRANSACTION và trigger. Sử dụng trigger trong trường hợp câu lệnh INSERT, UPDATE và. Định nghĩa và sử dụng hàm. Tạo hàm với giá trị trả về là “dữ liệu kiểu bảng”.
Bảo trì và phát triển mô hình Client/Server. Bảo mật cơ sở dữ liệu. Chuyển đổi cơ sở dữ liệu từ các nguồn cơ sở dữ liệu. Sao lưu dự phòng cơ sở dữ lịêu.
Bảo trì cơ sở dữ liệu. 81 3 GIÁO TRÌNH MÔ ĐUN HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU Tên mô đun: Hệ quản trị cơ sở dữ liệu Mã mô đun: MĐ11 Vị trí, tính chất, ý nghĩa và vai trò của mô đun: - Vị trí: Mô đun này yêu cầu đã học qua các kiến thức về cơ sở dữ liệu và phân tích thiết kế hệ thống; - Tính chất: Là mô đun chuyên môn nghề lập trình máy tính - Ý nghĩa và vai trò của đun: Đây là mô đun chứa đựng kiến thức cơ bản về hệ quản trị cơ sở dữ liệu SQL Server, có ý nghĩa quan trọng nó làm nền tảng giúp người học tiếp cận các hệ quản trị cơ khác hệ quản trị SQL Server. Mục tiêu của mô đun: - Về kiến thức: + Trình bày được các kiến thức cơ bản về mô hình Client/Server. + Trình bày được các bước tạo cơ sở dữ liệu: tạo cơ sở dữ liệu, tạo bảng, tạo quan hệ; + Mô tả được các bước tạo thủ tục lưu trữ; + Trình bày được các kiến thức về hàm, các bước tạo hàm; + Trình bày được các kiến thức về Trigger và các bước tạo trigger; + Mô tả được cách bảo mật, sao lưu và phục hồi cơ sở dữ liệu.
- Về kỹ năng + Tạo được cơ sử dữ liệu: tạo bảng, tạo mối quan hệ, nhập dữ liệu; + Truy vấn được cơ sở dữ liệu theo yêu cầu của bài toán; Tạo và sử dụng được thủ tục lưu trữ + Tạo và sử dụng được trigger; + Tạo và sử dụng được hàm; + Bảo mật và sao lưu phục hồi được cơ sở dữ liệu. - Về năng lực tự chủ và trách nhiệm + Rèn luyện tính cẩn thận chính xã khi làm việc với cơ sở dữ liệu. Nội dung của mô đun: 4 Bài 1. Tổng quan về mô hình Client/Server Mã bài: MĐ11_B01 Giới thiệu: Trong bài học này chúng ta sẽ nghiên cứu tổng quan về mô hình Client/Server và các hệ quản trị phục vụ cho mô hình này.
Mục tiêu : - Hiểu rõ mô hình cơ sở dữ liệu Client/Server - Trình bày được các đặc trưng của mô hình Client/Server - Thực hiện các thao tác an toàn với máy tính 1. Các kiến thức tổng quan về cơ sở dữ liệu. - Một hệ CSDL (DB system) bao gồm một CSDL (Database) và một hệ quản trị CSDL (DBMS) - Cơ sở dữ liệu (CSDL) là một tập hợp dữ liệu được tổ chức và lưu trữ theo một cấu trúc chặt chẽ nhằm phục vụ nhiều đối tượng sử dụng với nhiều mục đích khác nhau. - Hệ quản trị CSDL (Database Management System - DBMS) là một công cụ phần mềm tổng quát nhằm hỗ trợ việc lưu trữ, truy xuất và quản trị CSDL.
Nó cung cấp cho người dùng và ứng dụng một môi trường thuận tiện và sử dụng hiệu quả tài nguyên dữ liệu. Kiến trúc của một hệ quản trị CSDL 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 5 (Structured English 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ăm 1978-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ành SYSTEM-R. - Năm 1986 Viện Tiêu Chuẩn Quốc Gia Mỹ (American National Standards Institute - ANSI) đã công nhận và chuẩn hóa ngôn ngữ SQL, và sau đó Tổ chức Tiêu chuẩn Thế giới (International Standards Organization - ISO) cũng đã công nhận ngôn ngữ này. Đó là chuẩn SQL-86.
- Tới nay SQL đã qua 3 lần chuẩn hóa lại (1989, 1992, 1996) để mở rộng các phé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ị CSDL khác nhau, tuy nhiên đều phải theo một chuẩn (Standard) nhất định. Hiện nay, đa phần các ngôn ngữ truy vấn CSDL dựa trên chuẩn SQL-92. 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.
Mô hình client-server là một mô hình nổi tiếng trong mạng máy tính, được áp dụng rất rộng rãi và là mô hình của mọi trang web hiện có. Ý tưởng của mô hình này là máy con (đóng vài trò là máy khách) gửi một yêu cầu (request) để máy chủ (đóng vai trò người cung ứng dịch vụ), máy chủ sẽ xử lý và trả kết quả về cho máy khách. - Client Trong mô hình client/server, người ta còn định nghĩa cụ thể cho một máy client là một máy trạm mà chỉ được sử dụng bởi 1 người dùng với để muốn thể hiện tính độc lập cho nó. Máy client có thể sử dụng các hệ điều hành bình thường như Win9x, DOS, OS/2.
Bản thân mỗi một client cũng đã được tích hợp nhiều chức năng trên hệ điều hành mà nó chạy, nhưng khi được nối vào một mạng LAN, WAN theo mô hình client/server thì nó còn có thể sử dụng thêm các chức năng do hệ điều hành mạng (NOS) cung cấp với nhiều dịch vụ khác nhau (cụ thể là các dịch vụ do các server trên mạng này cung cấp), ví dụ như nó có thể yêu cầu lấy dữ liệu từ một server hay gửi dữ liệu lên server đó. Thực tế trong các ứng dụng của mô hình client/server, các chức năng hoạt động chính là sự kết hợp giữa client và server với sự chia sẻ tài nguyên, dữ liệu trên cả hai máy Vai trò của client Trong mô hình client/server, client được coi như là người sử dụng các dịch vụ trên mạng do một hoặc nhiều máy chủ cung cấp và server được coi như là người cung cấp dịch vụ để trả lời các yêu cầu của các clients. Điều quan trọng là phải hiểu được vai trò hoạt động của nó trong một mô hình cụ thể, một máy client trong mô hình này lại có thể là server trong một mô hình khác. Ví dụ cụ thể như một máy trạm làm việc như một client bình thường trong mạng LAN nhưng đồng thời nó có thể đóng vai trò như một máy in chủ (printer server) cung cấp dịch vụ in ấn từ xa cho nhiều người khác (clients) sử dụng.
Client được hiểu như là bề nổi của các dịch vụ trên mạng, nếu có thông tin vào hoặc ra thì chúng sẽ được hiển thị trên máy client. 6 - Server Server còn được định nghĩa như là một máy tính nhiều người sử dụng (multiuser computer). Vì một server phải quản lý nhiều yêu cầu từ các client trên mạng cho nên nó hoạt động sẽ tốt hơn nếu hệ điều hành của nó là đa nhiệm với các tính năng hoạt động độc lập song song với nhau như hệ điều hành UNIX, WINDOWS. Server cung cấp và điều khiển các tiến trình truy cập vào tài nguyên của hệ thống.
Các ứng dụng chạy trên server phải được tách rời nhau để một lỗi của ứng dụng này khô ng làm hỏng ứng dụng khác.