Hướng dẫn SQL

TRANG CHỦ SQL Giới thiệu SQL Cú pháp SQL Lựa chọn SQL SQL Chọn phân biệt SQL ở đâu SQL Và, Hoặc, Không Đặt hàng SQL theo Chèn SQL vào Giá trị rỗng trong SQL Cập nhật SQL SQL Delete SQL Select Top SQL Min và Max Số lượng SQL, Trung bình, Tổng SQL như Ký tự đại diện SQL SQL trong SQL giữa Bí danh SQL SQL tham gia Tham gia bên trong SQL SQL còn lại tham gia SQL Right Join Tham gia đầy đủ SQL SQL tự tham gia SQL Union Nhóm SQL bởi SQL có SQL tồn tại SQL Bất kỳ, Tất cả SQL chọn vào Chèn SQL vào vùng chọn Trường hợp SQL Hàm Null trong SQL Thủ tục lưu trữ SQL Nhận xét SQL Toán tử SQL

Cơ sở dữ liệu SQL

SQL Tạo cơ sở dữ liệu SQL Drop DB Cơ sở dữ liệu sao lưu SQL SQL Tạo bảng Bảng thả SQL Bảng thay thế SQL Các ràng buộc SQL SQL không rỗng SQL duy nhất Khóa chính SQL Khóa ngoại SQL Kiểm tra SQL SQL mặc định Chỉ mục SQL Tăng tự động SQL SQL Dates Chế độ xem SQL SQL Injection Lưu trữ SQL Các kiểu dữ liệu SQL

Tham chiếu SQL

Từ khóa SQL Các chức năng của MySQL Các chức năng của SQL Server Chức năng MS Access Tham khảo nhanh SQL

Ví dụ về SQL

Ví dụ về SQL Câu hỏi SQL Bài tập SQL Chứng chỉ SQL

Thủ tục lưu trữ SQL cho SQL Server


Thủ tục lưu trữ là gì?

Thủ tục được lưu trữ là một mã SQL đã chuẩn bị sẵn mà bạn có thể lưu, do đó, mã có thể được sử dụng lại nhiều lần.

Vì vậy, nếu bạn có một truy vấn SQL mà bạn viết đi viết lại nhiều lần, hãy lưu nó dưới dạng một thủ tục được lưu trữ, sau đó chỉ cần gọi nó để thực thi nó.

Bạn cũng có thể chuyển các tham số cho một thủ tục được lưu trữ để thủ tục được lưu trữ có thể hoạt động dựa trên (các) giá trị tham số được truyền vào.

Cú pháp thủ tục được lưu trữ

CREATE PROCEDURE procedure_name
AS
sql_statement
GO;

Thực hiện một thủ tục đã lưu trữ

EXEC procedure_name;

Cơ sở dữ liệu Demo

Dưới đây là lựa chọn từ bảng "Khách hàng" trong cơ sở dữ liệu mẫu Northwind:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

Ví dụ về thủ tục được lưu trữ

Câu lệnh SQL sau tạo một thủ tục được lưu trữ có tên "SelectAllCustomers" chọn tất cả các bản ghi từ bảng "Khách hàng":

Thí dụ

CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;

Thực hiện quy trình đã lưu trữ ở trên như sau:

Thí dụ

EXEC SelectAllCustomers;


Thủ tục được lưu trữ với một tham số

Câu lệnh SQL sau tạo một thủ tục được lưu trữ để chọn Khách hàng từ một Thành phố cụ thể từ bảng "Khách hàng":

Thí dụ

CREATE PROCEDURE SelectAllCustomers @City nvarchar(30)
AS
SELECT * FROM Customers WHERE City = @City
GO;

Thực hiện quy trình đã lưu trữ ở trên như sau:

Thí dụ

EXEC SelectAllCustomers @City = 'London';

Thủ tục được lưu trữ với nhiều tham số

Việc thiết lập nhiều tham số rất dễ dàng. Chỉ cần liệt kê từng tham số và kiểu dữ liệu được phân tách bằng dấu phẩy như hình dưới đây.

Câu lệnh SQL sau tạo một thủ tục được lưu trữ để chọn Khách hàng từ một Thành phố cụ thể với Mã Bưu điện cụ thể từ bảng "Khách hàng":

Thí dụ

CREATE PROCEDURE SelectAllCustomers @City nvarchar(30), @PostalCode nvarchar(10)
AS
SELECT * FROM Customers WHERE City = @City AND PostalCode = @PostalCode
GO;

Thực hiện quy trình đã lưu trữ ở trên như sau:

Thí dụ

EXEC SelectAllCustomers @City = 'London', @PostalCode = 'WA1 1DP';