MỤC LỤC
Cũng tương tự như thủ tục lưu trữ, một trigger là một đối tượng chứa một tập các câu lệnh SQL và tập các câu lệnh này sẽ được thực thi khi trigger được gọi. Điểm khác biệt giữa thủ tục lưu trữ và trigger là: các thủ tục lưu trữ được thực thi khi người sử dụng có lời gọi đến chúng còn các trigger lại được “gọi” tự động khi xảy ra những giao tác làm thay đổi dữ liệu trong các bảng. Khi dữ liệu trong bảng bị thay đổi (tức là khi bảng chịu tác động của các câu lệnh INSERT, UPDATE hay DELETE) thì trigger sẽ được tự đông kích hoạt.
- Các thao tác trên dữ liệu (xoá, cập nhật và bổ sung) có thể được trigger phát hiện ra và tự động thực hiện một loạt các thao tác khác trên cơ sở dữ liệu nhằm đảm bảo tính hợp lệ của dữ liệu. Thông qua trigger, ta có thể tạo và kiểm tra được những mối quan hệ phức tạp hơn giữa các bảng trong cơ sở dữ liệu mà bản thân các ràng buộc không thể thực hiện được. Một trigger là một đối tượng gắn liền với một bảng và được tự động kích hoạt khi xảy ra những giao tác làm thay đổi dữ liệu trong bảng.
- Một trigger có thể thực hiện nhiều công việc (theo kịch bản), có thể nhiều sự kiện kích hoạt thực thi trigger, có thể tách rời các sự kiện trong một trigger. - Trigger chia thành 2 loại Instead of và After: Instead of là loại trigger mà hoạt động của sự kiện gọi nó sẽ bỏ qua và thay vào nó là các lệnh thực hiện trong trigger. After (tương đương với từ khóa For) đây là loại ngầm định, khác với loại Instead of thì loại trigger này sẽ thực hiện các lệnh trong nó sau khi đã thực hiện xong sự kiện gọi nó.
• Dữ liệu trong bảng INSERTED sẽ là dòng dữ liệu được bổ sung vào bảng gây nên sự kích hoạt đối với trigger bằng câu lệnh INSERT. • Khi câu lệnh UPDATE được thực thi trên bảng, các dòng dữ liệu cũ chịu sự tác động của câu lệnh sẽ được sao chép vào bảng DELETED, còn trong bảng INSERTED sẽ là các dòng sau khi đã được cập nhật. Thay vì định nghĩa một trigger được kích hoạt trên một bảng, ta có thể chỉ định trigger được kích hoạt và thực hiện những thao tác cụ thể khi việc thay đổi dữ liệu.
Sử dụng trigger trong trường hợp câu lệnh INSERT, UPDATE và DELETE có tác động đến nhiều dòng dữ liệu. Nhìn trên hình ta thấy khi thực hiện chế độ này người sử dụng muốn khai thác SQL Server phải thông qua 4 bước xác thực (1- Domain, 2- Computer, 3- SQL Server, 4- Database). Khi thiết lập ở chế độ bảo mật này, những User được quyền khai thác phải là những User do quản trị SQL Server tạo ra, mà những user của Windows không được khai thác.
Tuy nhiên, SQL Server cho phép thiết lập hai chế độ Windows Authentication Mode (Windows Authentication) và Mixed Mode (Windows. Authentication and SQL Server Authentication), chế độ Mixed Mode là sự kết hợp của Windows Authentication và SQL Server Authentication, ở chế độ này cả user của Windows và SQL Server để có thể thiết lập để truy nhập SQL Server. Người dùng trong SQL Server được chia thành 2 mức: Người truy nhập vào SQL Server gọi là Login, người khai thác CSDL gọi là User. Là đối tượng được quyền truy nhập vào SQL Server, tùy theo chế độ bảo mật của SQL Server mà những login là account của Windows NT hay của SQL Server, login do Server quản lý trực tiếp.
Nếu tạo login của SQL Server thì bạn nhập tên mới, mật khẩu, chọn login thuộc server role nào, có thể gán quyền truy nhập khai thác CSDL nào. EXEC sp_addlogin 'Albert', 'food', 'corporate' Mọi thao tác sửa, xóa được thực hiện như các đối tượng khác. User là đối tượng khai thác CSDL, nếu login chỉ xác định truy nhập vào SQL Server thì User là login ID tham gia khai thác CSDL, user do CSDL quản lý trực tiếp.
- Chọn Login, nhập user name, chọn role mà user thuộc ->Ok Các thao tác xóa, sửa thực hiện như các đối tượng khác, để gán quyền cho user bạn có thể chọn lại user vừa tạo cho CSDL sau đó vào nhấn vào Permissions. Giả sử bạn đã có các tập tin của CSDL (gồm tập tin dữ liệu và nhật ký có thể được copy từ vị trí khác). Trước tiên ta xem kỹ thuật copy các tập tin CSDL sang một vị trí khác (mà vẫn giữ vị trí), sau khi copy sang vị trí khác bạn có thể sử dụng trong Instance mới.
Là bước thực hiện tách CSDL khỏi Instance, Instance không quản lý CSDL nhưng khác với xóa CSDL là các tập tin chứa CSDL vẫn còn. Mục này giới thiệu kỹ thuật ghép nối tập tin CSDL vào Instance, là bước tiếp theo của các bước Copy và Dettach.
Chọn New Schedule ở đây nhập Schedule Name cho Job ta chọn là ScheduleCoppyPlayers, Phần tần suất (Frequency) ta chọn Occurs chạy vào hàng ngày lúc 12h đêm. B5: ấn OK để hoàn tất việc đặt lịch chạy cho Job và OK để hoàn tất Job. B6: Để chắc là Job của bạn có chạy đúng hay không thì bạn Click chuột phải vào Job vừa tạo chọn Start Job.
B7: Nếu nó báo thế này thì có nghĩa là Job của bạn đã chạy chính xác.
Ở trang General, trong hộp Linked Server, gừ tờn của thể hiện SQL Server mà bạn muốn liên kết đến. Nếu thể hiện của SQL Server là thể hiện ngầm định thỡ gừ tờn của Server chứa thể hiện này. Nếu SQL Server là một thể hiện được đặt tờn thỡ gừ tờn mỏy và tờn thể hiện như Accounting\SQLExpress.
Trong Server Type, chọn SQL Server để chỉ thị rằng Server liên kết là thể hiện khác của SQL Server. Ở trang Security, xác định ngữ cảnh sẽ được sử dụng khi SQL Server gốc kết nối với Server liên kết. Trong một môi trường doman, ở đó các người sử dụng đang kết nối bằng login doman của mình thì chọn Be made using the login’s current security context là tốt nhất.
Khi các người sử dụng kết nối đến SQL Server gốc bằng cách sử dụng SQL Server login thì lựa chọn tốt nhất là chọn By using this security context, và sau đó cung cấp ủy nhiệm cần thiết cho bảo mật ở Server liên kết. Sử dụng Transact-SQL để tạo Server liên kết đến thể hiện khác của SQL Server. Sử dụng Transact-SQL để tạo Server liên kết đến thể hiện khác của SQL Server.
Khi SQL Server được cài đặt lần đầu, sysdatabases chứa các mục cho các cơ sở dữ liệu Master, Model, msdb, mssqlweb và tempdb. Lưu ý các màn hình giám sát hiệu suất Windows NT là có sẵn chỉ khi sử dụng Microsoft Windows NT ® 4.0 là hệ điều hành. Bất kỳ cơ sở dữ liệu tạo sau 99 cơ sở dữ liệu đầu tiên sẽ không được chứa trong bảng hệ thống.
Cột Text chứa các phát biểu định nghĩa SQL ban đầu, nó được giới hạn kích thước tối đa là 4 MB. Để che các định nghĩa stored procedure, sử dụng CREATE PROCEDURE với từ khoá mã hóa (ENCRYPTION keyword). Các bảng này chứa thông tin được sử dụng bởi các hoạt động BackUp và Restore backupfile Mỗi hàng là 1 tập tin dữ liệu hoặc đăng nhập.
Các thủ tục lưu trữ hệ thống – system stored procedure (Sp_..) Các phiên bản của MS SQL Server đều có các Store Procedure hệ thống. Đây là store procedure hệ thống, giúp ta tra cứu nhanh về thông tin của các đối tượng (objects) có trong database. • sp_help : để lấy tất cả các thông tin về tất cả các đối tượng trong Database đang kết nối.
• sp_help <tên của đối tượng> : để lấy tất cả các thông tin cụ thể của đối tượng (thông số tên đối tượng truyền vào) trong Database đang kết nối. Đây là store procedure hệ thống, giúp ta tra cứu định nghĩa các đối tượng: store procedure hệ thống, store procedure do người dùng định nghĩa, hàm do người dùng định nghĩa, trigger, …. Ví dụ cơ bản nhất khi dùng store procedure hệ thống này là đếm số dòng của tất cả các bảng trong Database.
Đây là store procedure hệ thống giúp bạn liệt kê các Views , store procedure do người dùng định nghĩa , hàm do người dùng định nghĩa , trigger , … có phụ thuộc vào tên đối tượng truyền vào. Đây là store procedure hệ thống giúp bạn lấy kích thước của Database hoặc kích thước của một đối tượng trong Database.