24/05/2018, 16:25
Ngôn ngữ điều khiển (DCL)
Câu lệnh này dùng để cấp phát quyền cho người sử dụng trên đối tượng Cơ sở dữ liệu hoặc quyền thực thi các câu lệnh SQL SERVER. Cú pháp có 2 dạng như sau Dạng 1: Cấp quyền đối với câu lệnh SQL GRANT ALL | statement [,...,statementN ...
Câu lệnh này dùng để cấp phát quyền cho người sử dụng trên đối tượng Cơ sở dữ liệu hoặc quyền thực thi các câu lệnh SQL SERVER. Cú pháp có 2 dạng như sau
Dạng 1: Cấp quyền đối với câu lệnh SQL
GRANT ALL | statement [,...,statementN ] TO account [,...,accountN]
Dạng 2: Cấp quyền đối với các đối tượng trong cơ sở dữ liệu
GRANT ALL | permission [,...,permissionN] ON table_name |view_name [(column1 [,...,columnN])] |ON stored_procedure TO account [,...,accountN]
Trong đó:
- ALL: là từ khoá được sử dụng khi muốn cấp phát tất cả các quyền cho người sử dụng.
- Account: là tên tài khoản đăng nhận hệ thống
- Permission: là quyền cấp phát cho người sử dụng trên đối tượng cơ sở dữ liệu:
- Các quyền có thể cấp phát trên một bảng hoặc một View:
Select, Insert, Delete, Update
. - Các quyền có thể cấp phát trên cột của bảng hoặc của View:
Select, Update
- Quyền có thể cấp phát với các thủ tục:
EXCUTE
(thực thi)
- Các quyền có thể cấp phát trên một bảng hoặc một View:
- Statement: Là câu lệnh được cấp phát cho người sử dụng Các câu lệnh có thể cấp phát là:
CREATE DATABASE
CREATE TABLE
CREATE VIEW
CREATE PROCEDURE
CREATE RULE
CREATE DEFAULT
BACKUP DATABASE
BACKUP LOG
Câu lệnh sau sẽ 3 cấp quyền
SELECT, UPDATE, INSERTtrên các thuộc tính (TenNV,DiaChi, Tuoi) của bảng NHANVIEN cho 2 người sử dụng phnhung, htvan.
GRANT SELECT, UPDATE, INSERT ON NHANVIEN(TenNV,DiaChi, Tuoi) TO phnhung, htvan
Câu lệnh sau sẽ cấp quyền tạo bảng, tạo View và tạo thủ tục cho người dùng phnhung.
GRANT CREATE TABLE, CREATE VIEW, CREATE PROCEDURE TO phnhung
Lệnh
REVOKEđược dùng để huỷ bỏ quyền đã được cấp phát cho người sử dụng. Câu lệnh này cũng có 2 dạng tương tự như câu lệnh
GRANT.
Dạng 1: Huỷ quyền thực hiện câu lệnh
REVOKE ALL | statement [,...,statementN] FROM account [,...,accountN]
Dạng 2: Huỷ quyền thực hiện các đối tượng
REVOKE ALL | permission [,...,permissionN]} ON table_name | view_name [(column [,...,columnN])] | stored_procedure FROM account [,...,accountN ]