Rumah >pangkalan data >tutorial mysql >Prosedur tersimpan MySQL

Prosedur tersimpan MySQL

王林
王林asal
2024-02-21 12:45:041244semak imbas

Prosedur tersimpan MySQL

Prosedur tersimpan MySQL memerlukan contoh kod khusus

Dalam MySQL, prosedur tersimpan ialah sekeping kod prapenyusun yang ditakrifkan, disimpan dan dilaksanakan pada pelayan pangkalan data. Prosedur tersimpan boleh menerima parameter dan mengembalikan hasil, yang menjadikannya sesuai untuk mengendalikan operasi pangkalan data yang kompleks dan logik perniagaan.

Di bawah, kami akan memperkenalkan penggunaan prosedur tersimpan MySQL melalui contoh kod tertentu.

Andaikan kita mempunyai jadual maklumat pekerja bernama "pekerja", yang mengandungi medan seperti nombor pekerja, nama, umur dan jabatan. Kami perlu menulis prosedur tersimpan untuk menanyakan maklumat pekerja dalam lingkungan umur tertentu.

Pertama, kita perlu mencipta jadual "pekerja" dan memasukkan beberapa data sampel:

CREATE TABLE employees (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50) NOT NULL,
  age INT NOT NULL,
  department VARCHAR(50) NOT NULL
);

INSERT INTO employees (name, age, department)
VALUES ('张三', 25, '销售部'),
       ('李四', 30, '人力资源部'),
       ('王五', 35, '技术部'),
       ('赵六', 40, '财务部');

Seterusnya, kita boleh membuat prosedur tersimpan untuk menanyakan maklumat pekerja berdasarkan lingkungan umur:

DELIMITER //

CREATE PROCEDURE GetEmployeesByAgeRange(IN minAge INT, IN maxAge INT)
BEGIN
  SELECT * FROM employees WHERE age >= minAge AND age <= maxAge;
END //

DELIMITER ;

Dalam kod di atas, kami menggunakan DELIMITER kata kunci untuk menentukan pembatas yang menamatkan definisi prosedur tersimpan. Kami kemudian mencipta prosedur tersimpan bernama GetEmployeesByAgeRange menggunakan pernyataan CREATE PROCEDURE. Prosedur tersimpan ini menerima dua parameter input, minAge dan maxAge, yang menentukan julat umur. Dalam badan prosedur tersimpan, kami menggunakan pernyataan SELECT untuk menanyakan maklumat pekerja yang memenuhi syarat. DELIMITER 关键字来指定结束存储过程定义的分隔符。然后,我们使用 CREATE PROCEDURE 语句创建了一个名为 GetEmployeesByAgeRange 的存储过程。该存储过程接受两个输入参数 minAgemaxAge,用于指定年龄范围。在存储过程体中,我们使用 SELECT 语句来查询符合条件的员工信息。

最后,我们使用 DELIMITER

Akhir sekali, kami menggunakan kata kunci DELIMITER untuk memulihkan pembatas pernyataan asal.

Kini, kami boleh menghubungi prosedur tersimpan untuk menanyakan maklumat pekerja. Katakan kita perlu menanyakan maklumat pekerja antara umur 30 dan 35 tahun, kita boleh melaksanakan kod berikut:

CALL GetEmployeesByAgeRange(30, 35);

Selepas menjalankan kod di atas, kita akan mendapat keputusan berikut:

+----+------+-----+-----------------+
| id | name | age | department      |
+----+------+-----+-----------------+
|  2 | 李四 |  30 | 人力资源部      |
|  3 | 王五 |  35 | 技术部           |
+----+------+-----+-----------------+

Melalui kod contoh di atas, kita boleh lihat storan MySQL Bagaimana untuk menggunakan proses. Prosedur tersimpan boleh melaksanakan operasi pangkalan data yang kompleks dengan mencipta blok kod yang telah ditetapkan yang boleh dipanggil berbilang kali mengikut keperluan.

Ringkasnya, prosedur tersimpan MySQL ialah ciri pangkalan data yang berkuasa yang boleh meningkatkan kecekapan kerja pembangun dan mengurangkan kod pendua. Mahir dalam penggunaan prosedur tersimpan boleh membolehkan kami mengendalikan pelbagai operasi pangkalan data dan logik perniagaan dengan lebih cekap dan fleksibel. 🎜

Atas ialah kandungan terperinci Prosedur tersimpan MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn