Rumah  >  Artikel  >  pangkalan data  >  pernyataan prosedur tersimpan mysql

pernyataan prosedur tersimpan mysql

PHPz
PHPzasal
2023-05-23 09:02:36608semak imbas

MySQL ialah sistem pengurusan pangkalan data hubungan yang digunakan secara meluas. Prosedur tersimpan ialah himpunan pernyataan SQL yang telah disusun sebelumnya yang boleh dilaksanakan dalam MySQL. Pernyataan prosedur tersimpan ialah pernyataan yang digunakan untuk mencipta dan mentakrifkan prosedur tersimpan.

Pernyataan prosedur tersimpan MySQL boleh mengurangkan tekanan pada pelayan pangkalan data dan meningkatkan kecekapan aplikasi. Mereka membenarkan pembangun merangkum beberapa arahan dan tugas yang biasa digunakan dalam satu objek supaya ia boleh digunakan dengan mudah apabila perlu.

Mari kita lihat dengan lebih mendalam pada pernyataan prosedur tersimpan MySQL.

Mencipta prosedur tersimpan

Untuk mencipta prosedur tersimpan, anda perlu menggunakan perintah CREATE PROCEDURE. Perintah ini termasuk nama prosedur yang disimpan, parameter input, parameter output dan badan prosedur. Sintaksnya adalah seperti berikut:

CREATE PROCEDURE procedure_name ([IN | OUT | INOUT] parameter_name data_type,
    [IN | OUT | INOUT] parameter_name data_type, ...)
BEGIN
    -- 过程体
END;

di mana, procedure_name ialah nama tersuai yang digunakan untuk mengenal pasti prosedur yang disimpan, parameter_name ialah nama parameter input, output atau input/output, data_type ialah jenis data parameter . Awalan untuk parameter ini boleh digunakan untuk menentukan sama ada parameter ialah parameter input, output atau input/output.

Berikut ialah contoh mudah:

CREATE PROCEDURE HelloWorld (IN `name` VARCHAR(20))
BEGIN
    SELECT CONCAT('Hello, ', `name`);
END;

Memanggil prosedur tersimpan

Setelah prosedur tersimpan dibuat, ia boleh dipanggil menggunakan perintah CALL. Sintaks asas adalah seperti berikut:

CALL procedure_name([parameter_value, parameter_value, ...]);

di mana procedure_name ialah nama prosedur tersimpan untuk dipanggil dan parameter_value ialah parameter yang akan dihantar kepada prosedur tersimpan. Jika prosedur tersimpan mempunyai parameter output, anda boleh menggunakan pernyataan SELECT untuk mengembalikan keputusan.

Berikut ialah contoh mudah:

CALL HelloWorld('Alice');

Ubah suai prosedur yang disimpan

Jika anda perlu mengemas kini badan atau parameter prosedur yang disimpan, anda boleh menggunakan ALTER PROCEDURE perintah. Sintaks asas adalah seperti berikut:

ALTER PROCEDURE procedure_name ([IN | OUT | INOUT] parameter_name data_type,
    [IN | OUT | INOUT] parameter_name data_type, ...)
BEGIN
    -- 过程体
END;

Sintaks ini sangat serupa dengan perintah CREATE PROCEDURE, satu-satunya perbezaan ialah anda tidak perlu menentukan nama prosedur yang disimpan apabila menggunakan perintah ALTER PROCEDURE.

Berikut ialah contoh mudah:

ALTER PROCEDURE HelloWorld (IN `new_name` VARCHAR(20))
BEGIN
    SELECT CONCAT('Hello, ', `new_name`);
END;

Memadamkan prosedur tersimpan

Jika prosedur tersimpan tidak lagi diperlukan, anda boleh menggunakan perintah DROP PROCEDURE untuk memadamkannya. Sintaks asas adalah seperti berikut:

DROP PROCEDURE procedure_name;

di mana, procedure_name ialah nama prosedur tersimpan yang akan dipadamkan.

Berikut ialah contoh mudah:

DROP PROCEDURE HelloWorld;

Ringkasan

Pernyataan prosedur tersimpan MySQL boleh digunakan untuk mencipta prosedur tersimpan yang mengandungi satu set pernyataan SQL yang telah ditetapkan yang boleh digunakan apabila perlu boleh dipanggil dengan mudah. Prosedur tersimpan boleh meningkatkan kecekapan aplikasi dan mengurangkan beban pada pelayan. Artikel ini menyediakan sintaks asas dan contoh untuk membuat, memanggil, mengubah suai dan memadamkan prosedur tersimpan. Arahan ini boleh digunakan dalam pangkalan data MySQL mengikut keperluan.

Atas ialah kandungan terperinci pernyataan 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