Bài giảng Thiết kế cơ sở dữ liệu: Chương 2 - ThS. Trần Quang Hải Bằng

38 13 0
Bài giảng Thiết kế cơ sở dữ liệu: Chương 2 - ThS. Trần Quang Hải Bằng

Đ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

Bài giảng Thiết kế cơ sở dữ liệu - Chương 2: Lập trình và quản trị người dùng trong SQL Server trình bày các nội dung: Giới thiệu SQL, các lệnh làm việc với CSDL, Stored Procedure, Trigger, quản trị người dùng. Mời các bạn cùng tham khảo nội dung chi tiết.

THIẾT KẾ CƠ SỞ DỮ LIỆU ( MHT09.3) Chương Lập trình Quản trị người dùng SQL Server bangtqh@utc2.edu.vn Nội dung  Giới thiệu SQL, lệnh làm việc với CSDL  Nội thủ tục (Stored Procedure)  Trigger  Quản trị người dùng bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL Giới thiệu SQL  Được xem yếu tố đóng góp vào thành cơng CSDL quan hệ áp dụng vào đời sống xã hội  Là ngôn ngữ mức cao, người dùng cần xác định kết truy vấn gì, phần cịn lại tính tốn tối ưu hố câu lệnh Hệ quản trị CSDL đảm nhiệm  1970: SQL (Structured Query Language) bắt nguồn từ ngôn ngữ SEQUEL (Structured English QUEry Language), ngôn ngữ thiết kế tập đoàn IBM nhằm đưa giao diện truy vấn liệu với HQTCSDL thử nghiệm SYSTEM R bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL Giới thiệu SQL (tt)  Chuẩn SQL có tên gọi SQL-86 (SQL1) kết hợp hai tổ chức ANSI ISO  1992: SQL1 mở rộng với nhiều tính gọi SQL-2 (SQL-92)  SQL3: gọi SQL:1999  SQL:2003  SQL:2011 – Support temporary databases bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL Lược đồ (Schema)  SQL1 lược đồ, tất bảng xem lược đồ  Khái niệm lược đồ đưa vào chuẩn SQL2 để nhóm bảng, cấu trúc thuộc ứng dụng  Một lược đồ (SQL Schema) xác định tên nó, bao gồm tên xác thực cho biết người dùng sở hữu lược đồ như mô tả thành phần lược đồ  Các thành phần lược đồ bao gồm: bảng(tables), ràng buộc(constrains), khung nhìn(views), vùng (domain) cấu trúc mô tả lược đồ  Schema Database bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL Schema (tt) Tạo lược đồ CREATE SCHEMA Tên_lược_đồ [AUTHORIZATION Tên_tác_giả] [DEFAULT CHARACTER SET Tập_ký_tự] [Danh sách phần tử] Xóa lược đồ DROP SCHEMA Tên_lược_đồ [CASCADE|RESTRICT]; – Cascade: Xóa lược đồ + phần tử – Restrict: Chỉ xóa có đối tượng bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL Định nghĩa Database Tạo database CREATE DATABASE Tên_CSDL; – Ví dụ: CREATE DATABASE Quanlyphongmay; Xóa database DROP DATABASE Tên_CSDL; – Ví dụ: DROP DATABASE Quanlyphongmay; bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL Khung nhìn - View Là bảng tạm thời gồm số thuộc tính từ nhiều bảng khác Ý nghĩa: – Truy cập đến liệu dễ dàng – An toàn liệu bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL Khung nhìn – View (tt) Tạo VIEW CREATE VIEW Tên_khung_nhìn [ trường 1, trường 2, … ] AS select_statement [ WITH CHECK OPTION ]; Xóa VIEW DROP VIEW Tên_khung_nhìn; bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL Ví dụ Tạo view: CREATE VIEW SV_Tinh AS SELECT Hoten, Tentinh FROM SV, Tinh WHERE SV.Matinh = Tinh.Matinh WITH CHECK OPTION; Xóa view: DROP VIEW SV_Tinh; bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL 10 Stored procedure (SP) Là chương trình lưu trữ CSDL Được gọi thi hành có yêu cầu Thường thiết kế để thi hành luật ràng buộc Ích lợi SP: – – – – Tăng cường tính bảo mật Giảm thời gian biên dịch Giảm dung lượng truyền liệu Đơn giản bảo trì bangtqh@utc2.edu.vn Stored procedure (tt)  Các loại SP: – – – – System SP Extended SP Temporary SP Custom SP  SP người dùng gồm loại: – Trigger – User sp – Defined function bangtqh@utc2.edu.vn Stored procedure  Tạo sp: CREATE PROCEDURE procedurename [parameter1 datatype [length] [OUTPUT], parameter2 ] AS BEGIN END Trong đó: + parameter1, parameter2, .: tham số + datatype: kiểu liệu tham số + output: tham số nhận giá trị trả + khối BEGIN … END lệnh SQL bangtqh@utc2.edu.vn Stored procedure (tt)  Gọi sp: sử dụng cú pháp: – – – – EXECUTE tên_sp giá_trị_1, giá_trị_2, … EXECUTE tên_sp @p1 = giá_trị, @p2 = giá_trị, … EXEC tên_sp giá_trị_1, giá_trị_2, … EXEC tên_sp @p1 = giá_trị, @p2 = giá_trị, … bangtqh@utc2.edu.vn Ví dụ SP đơn giản bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL 28 Ví dụ SP có tham số bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL 29 Ví dụ SP có tham số đầu bangtqh@utc2.edu.vn SP có tham số đầu trỏ bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL 31 Ví dụ SP có giá trị trả  Ví dụ: sp có giá trị trả CREATE PROCEDURE sp7 AS begin declare @x char(100) select @x = ‘Hello world’ return @x End declare @v char(100) exec @v = sp7 print @v bangtqh@utc2.edu.vn Trigger  Là SP đặc biệt tự động thực thi có thao tác INSERT, UPDATE, DELETE  Thường dùng để kiểm tra RBTV quy tắc nghiệp vụ  Một trigger thường gắn với quan hệ (table) cụ thể bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL 33 Trigger  Các loại trigger – DML trigger: Đối với thao tác insert, update, delete – DDL trigger: Đối với thao tác create, alter, drop – Logon trigger  Trigger khơng có giá trị trả  Trigger khơng có tham số bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL 34 Định nghĩa trigger CREATE TRIGGER trigger_name ON table | view [FOR | AFTER | INSTEAD OF ] [INSERT [,] [UPDATE] [,] [DELETE] AS BEGIN sql_statement [;] END bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL 35 Lưu ý  Trong trình thực trigger, SQL server tự động tạo bảng Inserted Deleted có cấu trúc giống bảng mà trigger định nghĩa – Inserted Table: chứa insert/update vào bảng row – Deleted Table: chứa dịng bị xóa khỏi bảng thao tác update/delete bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL 36 Lưu ý:  Lệnh IF UPDATE (column_list): Kiểm tra có thay đổi giá trị nhiều cột  Lệnh ROLLBACK TRANSACTION hoàn trả lại liệu trước thao tác insert/update/delete bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL 37 Ví dụ  (làm máy) bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL 38 ... SQL-86 (SQL1) kết hợp hai tổ chức ANSI ISO  19 92: SQL1 mở rộng với nhiều tính gọi SQL -2 (SQL- 92)  SQL3: gọi SQL:1999  SQL :20 03  SQL :20 11 – Support temporary databases bangtqh@utc2.edu.vn Chương. .. = giá_trị, @p2 = giá_trị, … bangtqh@utc2.edu.vn Ví dụ SP đơn giản bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL 28 Ví dụ SP có tham số bangtqh@utc2.edu.vn Chương - Lập trình Quản... bangtqh@utc2.edu.vn Chương - Lập trình Quản trị người dùng SQL 14 Ví dụ:  Xóa trường khỏi bảng  Sửa giá trị mặc định cho trường bảng  Thay đổi ràng buộc bảng bangtqh@utc2.edu.vn Chương - Lập trình

Ngày đăng: 08/05/2021, 12:10

Từ khóa liên quan

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

Tài liệu liên quan