Khi nhiều người cùng truy nhập CSDL với các mục đích khác nhau. Rất có t hể sẽ xảy ra hiện tượng tranh chấp dữ liệu. Cần có cơ chết ưu tiên khi truy cập CSDL. Ví dụ: admin luôn có thể tru cập cơ sở dữ liệu. | Bài giảng tóm tắt Hệ quản trị cơ sở dữ liệu 3 5 - Khi gọi hàm loại 1 trả về giá trị cơ bản phải có tên owner của hàm đi kèm ví dụ dbo. SoLonNhat 5 8 -10 . Thay đổi hàm người dùng Thay từ khóa create trong các lệnh tạo hàm bằng từ khóa alter Xóa hàm người dùng Drop function tên_hàm_cần _xóa Ví dụ Drop function DanhSachMatHang 3. Các hàm hệ thống Ngoài các hàm do người dùng định nghĩa SQL Server còn cung cấp các hàm xây dựng sẵn của hệ thống. Các hàm này cung cấp tiện ích như xử lý chuỗi xử lý thời gian xử lý số học. Sinh viên tìm hiểu thêm về các hàm này trong Books on-line và các tài liệu tham khảo. Để tạo hàm hệ thống cần tiến hành theo các bước sau V Tạo hàm trong cơ sở dữ liệu Master V Tên hàm bắt đầu bởi fn_functỉonName K Thay đổi chủ nhân của hàm bằng thủ tục sp_changeobjectowner như sau EXEC sp_changeobjectowner fn__functionName system_function_schema Ví dụ Tạo hàm hệ thống thực chuyển đổi một biến kiểu ngày tháng sang kiểu chuỗi. --Tạo hàm fn_doingay create function fn_doingay @ngay datetime returns char 10 as begin return convert nchar 10 @ngay 103 end --Thay đổi chủ nhân của hàm EXEC sp_changeobjectowner fn_doingay system_function_schema Sau lệnh này hàm fn_doingay có thể dùng được cho CSDL bất kỳ. Select manv hoten fn_doingay ngaysinh From nhanvien VI. Triggers và cài đặt ràng buộc dữ liệu 1. Giới thiệu Trigger là một loại stored procedure đặc biệt có các đặc điểm sau Bài giảng tóm tắt Hệ quản trị cơ sở dữ liệu 3 6 - Tự động thực hiện khi có thao tác insert delete hoặc update trên dữ liệu. - Thường dùng để kiểm tra các ràng buộc toàn vẹn của CSDL hoặc các qui tắc nghiệp vụ. - Một trigger được định nghĩa trên một bảng nhưng các xử lý trong trigger có thể sử dụng nhiều bảng khác. Xử lý của trigger thường cần sử dụng đến hai bảng tạm - Inserted chứa các dòng vừa mới được thao tác insert update thêm vào bảng. - Deleted chứa các dòng vừa mới bị xóa khỏi bảng bởi thao tác update delete. Lưu ý update delete dòng chứa giá trị cũ insert dòng chứa giá trị mới - .