Stored Procedures
Nội dung:
- Tổng quan SQL Stored Procedures
- Làm việc với stored procedures
1. Giới thiệu
INFO
- Stored Procedure lưu trữ một tập hợp các câu lệnh SQL và các câu lệnh lập trình đi kèm trong cơ sở dữ liệu, cho phép tái sử dụng khi cần.
- Hỗ trợ các ứng dụng tương tác nhanh, chính xác
Các thuận lợi
- Stored procedure cho phép điều chỉnh chương trình cho phù hợp, mang tính tái sử dụng.
- Stored procedure cho phép thực thi nhanh hơn cách viết từng câu lệnh sql
- Stored procedure làm giảm bớt vấn đề kẹt đường truyền mạng, dữ liệu được gởi theo gói.
- Stored procedure có thể sử dụng trong vấn đề bảo mật, phân quyền
Có 2 loại
- System stored procedures
- User stored procedures
Stored-procedure trong SQL Server bao gồm:
- Inputs: nhận các tham số đầu vào khi cần
- Execution: kết hợp giữa các yêu cầu nghiệp vụ với các lệnh lập trình như IF..ELSE, WHILE...
- Outputs: trả ra các đơn giá trị (số, chuỗi…) hoặc một tập kết quả.
Ví dụ
2. Tạo Stored-procedure
Cú pháp
TIP
- Tên hàm, tên biến trong SQL Server không phân biệt hoa thường.
- Có thể thay thế Create Procedure bằng Create Proc
- Tham số đầu vào
Tham số bắt buộc: bắt buộc phải truyền
Tham số tuỳ chọn: gán giá trị mặc định, giá trị mặc định nếu không gọi.
Ví dụ
VD1: Tạo stored-procedure tính tổng của 2 số nguyên
VD2: Tạo stored-procedure tính tổng của 2 số nguyên có tham số đầu ra
Tạo stored-procedure có return dữ liệu
Cú pháp
Ví dụ
Biên dịch và gọi thực thi một stored-procedure
- Biên dịch : Chọn toàn bộ mã lệnh Tạo storedprocedure => Nhấn F5
- Gọi thực thi một store-Procedure đã được biên dịch bằng lệnh exec
Ví dụ
Làm việc với thủ tục có tham số mặc định
3. Cập nhật Store procedure
Cú pháp
Ví dụ
Lệnh xóa Procedure
4. Lệnh điều kiện trong điều khiển các rẽ nhánh trong Proc
Sử dụng câu lệnh điều kiện giúp điều khiển các rẽ nhánh trong Proc
Xét ví dụ trước về việc thêm phòng ban, kiểm tra Maphg có tồn tại hay chưa
5. Store procedure template
Sử dụng công cụ tạo store proc dưới dạng template
Ví dụ
6. Kiến thức thêm
Dùng công cụ Execute a Store procedure
System Store procedure
Là những stored procedure chứa trong Master Database, thường bắt đầu bằng tiếp đầu ngữ sp_
Chủ yếu dùng trong việc quản lý cơ sở dữ liệu (administration) và bảo mật (security).
Ví dụ: sp_helptext <tên của đối tượng> : để lấy định nghĩa của đối tượng (thông số tên đối tượng truyền vào) trong Database
Một số System stored procedures thông dụng