*
a);

Môi ngôi trường thực nghiệm

Windows 10MySQL Community 5MySquốc lộ Workbench 6

Tạo tài liệu mẫu

Tạo database và các bảngCREATE DATABASE IF NOT EXISTS procedure_example DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;USE procedure_example;CREATE TABLE IF NOT EXISTS san_pmê say ( id int(10) NOT NULL AUTO_INCREMENT, ten varchar(255) NOT NULL UNIQUE, gia int(10) NOT NULL, mo_ta mediumtext, created_at timestamp DEFAULT NOW() NOT NULL, updated_at timestamp DEFAULT NOW() NOT NULL ON UPDATE NOW(), PRIMARY KEY (id));describe procedure_example.san_pham;Mô hình cơ sở tài liệu demo nghiệm
*
*
Tạo Stored Procedure nhằm đếm tổng cộng sản phẩm trong bảng san_phamUSE procedure_example;/** COUNT PRODUCTS **/DROP PROCEDURE IF EXISTS count_products;delimiter //CREATE PROCEDURE count_products (OUT param1 INT) BEGIN SELECT COUNT(*) INTO param1 FROM san_pham; END//delimiter ;Trong đoạn code bên trên, thực hiện lệnh delimiter nhằm chỉ định và hướng dẫn kí tự dứt mang lại đoạn lệnh SQL. Mặc định, kí từ chnóng phẩy ; được dùng làm thông tư câu hỏi câu lệnh Squốc lộ sẽ xong xuôi.

Trong đoạn lệnh Squốc lộ bên trên, để dùng những câu lệnh Squốc lộ không giống nhau trong phần thân của Stored Procedure, thực hiện vết chnóng phẩy ; để phân bóc những câu lệnh đơn lẻ. Do kia, áp dụng kí trường đoản cú // nhằm báo đến MySQL hiểu được phần khai báo đến Stored Procedure chỉ chấm dứt Khi chạm chán kí từ này, cùng câu lệnh delimiter được sử dụng nhằm hướng đẫn vấn đề này.

Kiểm tra tác dụng Stored Procedure count_products:

CALL count_products(
a;Kết quả như sau:

*
Tạo Stored Procedure tra cứu tìm thành phầm theo id được truyền vào

USE procedure_example;/** FIND PRODUCT BY ID **/DROPhường PROCEDURE IF EXISTS find_product;delimiter //CREATE PROCEDURE find_hàng hóa (IN param1 INT) BEGIN DROP TEMPORARY TABLE IF EXISTS tmp_find_product; CREATE TEMPORARY TABLE IF NOT EXISTS tmp_find_sản phẩm AS (SELECT * FROM san_pđam mê WHERE id=param1); SELECT * FROM tmp_find_product; END//delimiter ;Kiểm tra kết quả Stored Procedure find_productsCALL find_product(8);Kết đúng như sau:


Chuyên mục: Blog