Giáo trình Thực hành SQL: Phần 2 - Trần Nguyên Phong
Thông tin tài liệu:
Nội dung trích xuất từ tài liệu:
Giáo trình Thực hành SQL: Phần 2 - Trần Nguyên Phong Tráön Nguyãn Phong Chæång 3: NGÄN NGÆÎ ÂIÃÖU KHIÃØN GRANT ALL | statement [,...,statementN ] TO account [,...,accountN]GRANT ALL | permission [,...,permissionN] ON table_name |view_name [(column1 [,...,columnN])] |ON stored_procedureTO account [,...,accountN] • • • • • • • • Giaïo trçnh thæûc haình SQL • • • GRANT CREATE TABLE, CREATE VIEW TO db_user GRANT SELECT, UPDATE ON nhanvien(hoten,diachi,dienthoai,hsluong) TO db_user1, db_user2REVOKE ALL | statement [,...,statementN]FROM account [,...,accountN]REVOKE ALL | permission [,...,permissionN]} ON table_name | view_name [(column [,...,columnN])] | stored_procedureFROM account [,...,accountN ] Tráön Nguyãn PhongREVOKE SELECT, UPDATEON nhanvien(hsluong)FROM db_user1REVOKE ALLFROM db_user Giaïo trçnh thæûc haình SQL Chæång 4: THUÍ TUÛC LÆU TRÆÎ VAÌ TRIGGER C¸c thñ tôc lu tr÷ lµ mét trong nh÷ng ®èi tîng c¬ së d÷ liÖu. Cã thÓ xemchóng t¬ng tù nh nh÷ng thñ tôc trong c¸c ng«n ng÷ lËp tr×nh. Mçi mét thñ tôc lutr÷ cã thÓ cã c¸c kh¶ n¨ng sau: • NhËn c¸c tham sè ®Çu vµo, thùc thi c¸c c©u lÖnh bªn trong thñ tôc vµ tr¶ vÒ c¸c gi¸ trÞ. • Bªn trong mçi thñ tôc cã thÓ chøa c¸c c©u lÖnh nh»m thùc hiÖn c¸c thao t¸c trªn c¬ së d÷ liÖu (kÓ c¶ viÖc gäi ®Õn c¸c thñ tôc lu tr÷ kh¸c) • Tr¶ vÒ mét gi¸ trÞ tr¹ng th¸i th«ng qua ®ã cã thÓ x¸c ®Þnh viÖc thùc thi thñ tôc lµ thµnh c«ng hay bÞ lçi. ViÖc sö dông c¸c thñ tôc lu tr÷ bªn trong c¬ së d÷ liÖu sÏ mang l¹i nh÷ng lîiÝch sau: • Thñ tôc lu tr÷ cho phÐp module ho¸ c«ng viÖc, t¹o ®iÒu kiÖn thuËn lîi cho viÖc thùc hiÖn c¸c thao t¸c trªn d÷ liÖu. • Thñ tôc lu tr÷ ®îc ph©n tÝch, tèi u vµ biªn dÞch khi t¹o ra nªn viÖc thùc thi chóng nhanh h¬n nhiÒu so víi viÖc sö dông mét tËp c¸c c©u lÖnh giao t¸c SQL theo nh÷ng c¸ch th«ng thêng. • Thñ tôc lu tr÷ cho phÐp chóng ta thùc hiÖn cïng mét yªu cÇu b»ng mét c©u lÖnh ®¬n gi¶n thay v× ph¶i sö dông nhiÒu dßng lÖnh SQL. §iÒu nµy sÏ lµm gi¶m thiÓu sù lu th«ng trªn m¹ng. • Thay v× cÊp ph¸t quyÒn trùc tiÕp cho ngêi sö dông trªn c¸c c©u lÖnh SQL, ta cã thÓ cÊp ph¸t quyÒn cho ngêi sö dông th«ng qua c¸c thñ tôc lu tr÷, nhê ®ã t¨ng kh¶ n¨ng b¶o mËt ®èi víi hÖ thèng. T¹o c¸c thñ tôc lu tr÷§Ó t¹o mét sp, ta sö dông c©u lÖnh CREATE PROCEDURE cã có ph¸p nh sau: CREATE PROCEDURE procedure_name [;number] [(parameter1 [,parameter2]...[parameter255])] AS sql_statements VÝ dô 4.1: CREATE PROC sp_list @bten char(20) AS SELECT hoten, ngaysinh, diachi FROM nhanvien WHERE hoten= @btenChó ý: NÕu khi gäi thñ tôc, chóng ta truyÒn tham sè cho thñ tôc díi d¹ng: Tráön Nguyãn Phong @tham_sè = gi¸_trÞTh× thø tù c¸c tham sè kh«ng cÇn ph¶i tu©n theo thø tù nh khi t¹o thñ tôc b»ng c©ulÖnh CREATE PROCEDURE. Tuy nhiªn, nÕu nh ®∙ cã mét tham sè ®îc truyÒn gi¸trÞ theo c¸ch trªn th× tÊt c¶ c¸c tham sè cßn l¹i còng ph¶i ®îc truyÒn gi¸ trÞ theo c¸ch®ã. Ta cã thÓ g¸n mét gi¸ trÞ mÆc ®Þnh cho tham sè trong c©u lÖnh CREATEPROCEDURE. Gi¸ trÞ nµy, cã thÓ lµ h»ng bÊt kú, sÏ ®îc lÊy lµm tham sè cña thñ tôckhi ngêi sö dông kh«ng cung cÊp gi¸ trÞ cho tham sè khi gäi thñ tôc. VÝ dô 4.2: CREATE PROC sp_list;2 @bten char(20)=‘Nguyen Van A’ AS SELECT * FROM nhanvien WHERE hoten = @bten Víi thñ tôc trªn, nÕu ta gäi msp_list;2 mµ kh«ng cã tham sè th× thñ tôc sÏ lÊytham sè mÆc ®Þnh lµ ‘NguyÔn V¨n A’ cho @bten. Gi¸ trÞ mÆc ®Þnh cã thÓ NULL. Trong trêng hîp nµy, nÕu ngêi sö dông kh«ngcung cÊp tham sè, SQL Server sÏ thi hµnh thñ tôc theo c¸c tham sè kh¸c. VÝ dô 4.3: Víi c©u lÖnh CREATE PROC sp_list;3 @bten char(20)=NULL,@bluong float AS SELECT * FROM nhanvien WHERE hoten=@bten AND hsluong=@bluong Ta thÓ gäi thñ tôc trªn nh sau: msp_list;3 @btuoi=23 mµ kh«ng bÞ lçi. MÆc ®Þnh cã thÓ bao gåm c¸c ký tù ®¹i diÖn (%, _, [], [^] ) nÕu thñ tôc sö dôngtham sè víi tõ khãa LIKE. VÝ dô 4.4: CREATE PROC sp_list;4 @bten char(20) =’TrÇn%’ AS SELECT * FROM nhanvien WHERE hoten LIKE @bten Th«ng tin tr¶ vÒ tõ c¸c thñ tôc lu tr÷C¸c gi¸ trÞ tr¹ng th¸i tr¶ vÒ: C¸c thñ tôc cã thÓ tr¶ vÒ mét gi¸ trÞ nguyªn ®îc gäi lµ mét tr¹ng th¸i tr¶ vÒ. Gi¸trÞ nµy chØ ra cho biÕt thñ tôc ®îc thùc hiÖn thµnh c«ng hay gÆp lçi vµ nguyªn nh©n ...
Tìm kiếm theo từ khóa liên quan:
Giáo trình Thực hành SL Giáo trình Thực hành SQL phần 2 Câu lệnh SQL Trigger trong SQL Ngôn ngữ điều khiển Câu lệnh GrantTài liệu cùng danh mục:
-
62 trang 388 3 0
-
Đề thi kết thúc học phần học kì 2 môn Cơ sở dữ liệu năm 2019-2020 có đáp án - Trường ĐH Đồng Tháp
5 trang 369 6 0 -
Bài giảng Phân tích thiết kế hệ thống thông tin: Chương 3 - Hệ điều hành Windowns XP
39 trang 318 0 0 -
Phương pháp truyền dữ liệu giữa hai điện thoại thông minh qua môi trường ánh sáng nhìn thấy
6 trang 307 0 0 -
Đề cương chi tiết học phần Cấu trúc dữ liệu và giải thuật (Data structures and algorithms)
10 trang 299 0 0 -
Đáp án đề thi học kỳ 2 môn cơ sở dữ liệu
3 trang 288 1 0 -
Giáo trình Cơ sở dữ liệu: Phần 2 - TS. Nguyễn Hoàng Sơn
158 trang 279 0 0 -
PHÂN TÍCH THIẾT KẾ HỆ THỐNG XÂY DỰNG HỆ THỐNG ĐẶT VÉ TÀU ONLINE
43 trang 276 2 0 -
Phân tích thiết kế hệ thống - Biểu đồ trạng thái
20 trang 265 0 0 -
Một số vấn đề về chuyển đổi số và ứng dụng trong doanh nghiệp
11 trang 247 0 0
Tài liệu mới:
-
Khảo sát tình trạng dinh dưỡng trước mổ ở người bệnh ung thư đại trực tràng
9 trang 20 0 0 -
94 trang 18 0 0
-
Tham vấn Thanh thiếu niên - ĐH Mở Bán công TP Hồ Chí Minh
276 trang 19 0 0 -
Kết hợp luân phiên sóng T và biến thiên nhịp tim trong tiên lượng bệnh nhân suy tim
10 trang 18 0 0 -
Đề thi giữa học kì 1 môn Ngữ văn lớp 9 năm 2024-2025 có đáp án - Trường THCS Nguyễn Trãi, Thanh Khê
14 trang 20 0 0 -
Đánh giá hiệu quả giải pháp phát triển thể chất cho sinh viên Trường Đại học Kiến trúc Hà Nội
8 trang 18 0 0 -
Tỉ lệ và các yếu tố liên quan đoạn chi dưới ở bệnh nhân đái tháo đường có loét chân
11 trang 19 0 0 -
39 trang 18 0 0
-
Đề thi học kì 1 môn Tiếng Anh lớp 6 năm 2024-2025 có đáp án - Trường TH&THCS Quang Trung, Hội An
6 trang 18 1 0 -
Tôm ram lá chanh vừa nhanh vừa dễRất dễ làm, nhanh gọn mà lại ngon. Nhà mình
7 trang 18 0 0