Tran Huu Dang
7 min

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

pic1

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ả. pic1

Ví dụpic1


2. Tạo Stored-procedure

Cú pháppic1

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 pic1

VD2: Tạo stored-procedure tính tổng của 2 số nguyên có tham số đầu ra pic1

Tạo stored-procedure có return dữ liệu
Cú pháppic1

Ví dụpic1

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 pic1

Ví dụpic1

Làm việc với thủ tục có tham số mặc định
pic1

3. Cập nhật Store procedure

Cú pháppic1

Ví dụpic1

Lệnh xóa Procedurepic1

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 Procpic1

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ưapic1

5. Store procedure template

Sử dụng công cụ tạo store proc dưới dạng templatepic1

Ví dụpic1

6. Kiến thức thêm

Dùng công cụ Execute a Store procedurepic1

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 pic1

  • Một số System stored procedures thông dụng pic1