2.4.3. Câu lệnh DENY
Tác dụng: Lệnh DENY dùng để ngăn quyền của người dùng Cú pháp:
DENY
{ALL | statement[,...]} ON Table_Name
TO Security_Account [,...]
Ví dụ: Ngăn quyền SELECT của người dùng JOHN đối với bảng Employee trong cơ sở dữ liệu AdventureWorks
DENY SELECT
ON Employee FROM JOHN
2.5. Thực thi T-SQL
SQL Server 2008 cung cấp một vài cách để thực thi các câu lệnh Transact-SQL. Các câu lệnh có thể được thực thi như là các câu lệnh đơn hoặc như một lô.
- Các câu lệnh đơn: Xử lý câu lệnh đơn là cách phổ biến mà SQL Server 2008 thực thi các câu lệnh
Ví dụ 1:
SELECT * FROM Thisinh
- Xử lý lô:
+ Một lô là một tập hợp của một hoặc nhiều câu lệnh Transact-SQL được kết thúc bằng từ khóa Go và được gửi cùng một thời điểm từ một ứng dụng đến SQL Server để thực thi.
+ Các câu lệnh này được biên dịch thành một đơn vị thực thi và được gọi là “execution plan”.
+ Các câu lệnh trong “execution plan” được thực hiện cùng một lúc.
- Scripts: Các câu lệnh SQL có thể được thực thi trong script bằng cách lưu trên tập tin. Phần mở rộng của file thường lưu dưới dạng *.sql . Tập tin sẽ được đọc khi được yêu cầu để thực thi.
Ví dụ 2:
Hình 2.4. Tạo một script
Chương 3
QUẢN LÝ CƠ SỞ DỮ LIỆU
3.1. Cơ sở dữ liệu
3.1.1. Các hệ thống cơ sở dữ liệu
SQL Server được tổ chức theo cơ sở dữ liệu quan hệ. SQL Server 2008 hỗ trợ ba loại cơ sở dữ liệu: Cơ sở dữ liệu hệ thống, cơ sở dữ liệu người dùng định nghĩa, cơ sở dữ liệu mẫu.
1) Cơ sở dữ liệu hệ thống: Được tạo ra bởi SQL Server. Các cơ sở dữ liệu này được sử dụng để lưu thông tin về SQL Server 2008. Hơn nữa, các cơ sở dữ liệu này còn được sử dụng để quản lý các cơ sở dữ liệu người dùng. Các cơ sở dữ liệu hệ thống được hỗ trợ bởi SQL Server 2008 là master, model, msdb, tempdb và được đặt trong ngăn System Database.
Hình 3.1. Cơ sở dữ liệu hệ thống
Cơ sở dữ liệu | Mô tả | |
1 | master | Cơ sở dữ liệu này lưu trữ các tất cả các thông tin ở mức hệ thống của một nhân bản SQL Server. |
2 | msdb | Cơ sở dữ liệu này được sử dụng bởi SQL Server Agent để nhắc nhở các công tác thực hiện theo lịch biểu và các công việc khác. |
3 | model | Cơ sở dữ liệu này được sử dụng như cơ sở dữ liệu mẫu cho tất cả các cơ sở dữ liệu được tạo ra trong một nhân bản cụ thể của SQL Server 2008. |
4 | Tempdb | Cơ sở dữ liệu này lưu trữ các đối được tạm và các tập kết quả trung gian |
Có thể bạn quan tâm!
- SQL Server - 8
- Kết Quả Khi Xác Định Tiêu Đề Trường
- SQL Server - 10
- Khai Báo Tự Động Tăng Dung Lượng
- Kết Quả Sau Tạo Ràng Buộc Khóa Ngoại Và Khóa Ngoại
- Xác Nhận Việc Xóa Bảng Dữ Liệu
Xem toàn bộ 323 trang tài liệu này.
Người dùng không được phép cập nhật thông tin trực tiếp vào các đối tượng cơ sở dữ liệu hệ thống, như là các bảng hệ thống, các thủ tục lưu trữ hệ thống, và các khung nhìn danh mục. Nhưng người sử dụng có thể sử dụng các công cụ quản trị cho phép họ quản trị hệ thống và quản lý tất cả các người sử dụng và các đối tượng cơ sở dữ liệu. Đó là:
- SQL Server Management Studio
- SQL Server Management Objects (SMO): Giao diện lập trình ứng dụng với các đối tượng quản lý SQL Server
- Transact-SQL scripts and stored procedures: sử dụng các thủ tục lưu trữ hệ thống và các phát biểu ngôn ngữ truy vấn dữ liệu Transact-SQL
Hình 3.2. Thay đổi dữ liệu hệ thống
Các ứng dụng cơ sở dữ liệu có thể xác định danh mục và thông tin hệ thống bằng cách sử dụng các tiếp cận sau đây:
- Khung nhìn danh mục hệ thống.
- Các đối tượng quản lý SQL Server.
- Các hàm danh mục, các phương thức, các thuộc tính, hoặc các tính chất của giao diện lập trình ứng dụng cơ sở dữ liệu.
- Các thủ tục lưu trữ và các hàm.
Hình 3.3. Xem dữ liệu hệ thống
2) Cơ sở dữ liệu người dùng định nghĩa: Người sử dụng SQL Server 2008 có thể tạo các cơ sở dữ liệu người dùng định nghĩa. Mục đích của các cơ sở dữ liệu này là để lưu dữ liệu của người sử dụng. Kích thước của cơ sở dữ liệu có thể được mở rộng hoặc bị co lại. Khi một cơ sở dữ liệu người dùng không cần thiết nữa, nó có thể bị hủy bỏ. Hình 3.4 dưới đây chỉ ra cơ sở dữ liệu QLTS (Quản lý tuyển sinh) do người dùng tạo ra.
Hình 3.4. Cơ sở dữ liệu do người dùng tạo ra
3) Cơ sở dữ liệu mẫu: SQL Server cung cấp các cơ sở dữ liệu mẫu để người sử dụng làm việc với SQL Server 2008. Một cơ sở dữ liệu mẫu được giới thiệu trong SQL Server 2008 là AdventureWorks.
3.1.2. Tạo cơ sở dữ liệu
Có ba cách chính để tạo cơ sở dữ liệu trong SQL Server: sử dụng chức năng của công cụ Management Studio (MS); câu lệnh SQL; bằng ngôn ngữ Visual C#, VB, hay C++ với đối tượng SQL Server Management Object (SMO). Mặc định cơ sở dữ liệu mới tạo ra sẽ có hai tập tin: Tập tin lưu trữ dữ liệu có tên mở rộng là .mdf, tập tin ghi lại thông tin liên quan đến thao tác dữ liệu có tên mở rộng là .log. Trong trường hợp cơ sở dữ liệu dùng cho mục đích kinh doanh nào đó sẽ có khả năng chứa dung lượng lớn. Do đó, có thể tạo nhiều tập tin dữ liệu thay vì chỉ một tập tin là .mdf. Bằng cách tạo ra nhiều tập tin thứ cấp có tên mở rộng là .ndf cho một cơ sở dữ liệu, ta có thể di chuyển hay sao chép tệp tin dễ dàng hơn so với một tệp tin.
1) Tạo cơ sở dữ liệu bằng công cụ MS Các bước chính
Bước 1: Chọn Database/Chọn chuột phải/Chọn New Database.
Hình 3.5. Tạo cơ sở dữ liệu
Bước 2: Nhập tên cơ sở dữ liệu tại mục Database Name.
Hình 3.6. Nhập tên cơ sở dữ liệu
Bước 3: Chọn tài khoản bằng cách chọn nút tại mục Owner và nhập tên tài khoản vào mục Enter the Object names to select. Chọn nút Check Names để kiểm tra tài khoản này có tồn tại không. Sau đó chọn nút OK.
Hình 3.7. Chọn tài khoản
Owner là chủ nhân của cơ sở dữ liệu. Ta nên chọn tài khoản làm chủ nhân cho cơ sở dữ liệu thay vì dùng mặc định. <Default> là bí danh của tài khoản mà ta dùng để đăng nhập vào SQL Server.
Bước 4: Thay đổi vị trí lưu tập tin .mdf và .log. Chọn nút tại trường Path.
Hình 3.8. Thay đổi vị trí lưu tập tin
Bước 5: Chọn thư mục chứa tập tin: Chọn đường dẫn/OK. Mặc định vị trí lưu trữ tập tin của cơ sở dữ liệu do người sử dụng tạo ra trong thư mục “C:Program FilesMicrosoft SQL ServerMSSQL10.SQLSERVER2MSSQLDATA”.
Hình 3.9. Chọn thư mục chứa tập tin
Bước 6: Tạo tệp tin thứ cấp. Chọn nút Add/nhập tên cho tập tin thứ cấp.
Hình 3.10. Nhập tên tập tin thứ cấp
Bước 7: Khai báo dung lượng ban đầu cho cơ sở dữ liệu. Nhập dung lượng tại trường Initial Size/OK.