Rumah >pangkalan data >tutorial mysql >Prosedur tersimpan dalam mysql
MySQL ialah pangkalan data hubungan yang biasa digunakan, di mana prosedur tersimpan merupakan ciri yang sangat penting. Prosedur tersimpan ialah aplikasi lanjutan bahasa SQL Ia menggabungkan berbilang pernyataan SQL dan memprosesnya sebagai satu unit untuk mencapai operasi yang kompleks pada pangkalan data.
Pengenalan kepada prosedur tersimpan
Prosedur tersimpan ialah salah satu objek pangkalan data, sama seperti jadual, pandangan, indeks, dsb. Ia adalah satu set pernyataan SQL yang dipratentukan. Dalam MySQL, prosedur tersimpan ialah kod program boleh guna semula yang boleh dilaksanakan pada klien atau pada pelayan pangkalan data.
Ciri-ciri prosedur tersimpan:
1. Enkapsulasi
Prosedur tersimpan boleh menggabungkan satu set pernyataan SQL ke dalam satu fungsi, meningkatkan pengkapsulan dan keselamatan pangkalan data, untuk mengelakkan beberapa operasi yang tidak betul.
2. Kecekapan pelaksanaan yang tinggi
Prosedur tersimpan disusun ke dalam kod binari apabila ia dibuat, kod binari dipanggil terus, dan kecekapan pelaksanaan adalah sangat tinggi.
3. Kebolehgunaan semula
Prosedur tersimpan boleh dipanggil beberapa kali, meningkatkan kebolehgunaan semula.
4. Fungsi berkuasa
Prosedur tersimpan ialah aplikasi lanjutan bahasa SQL Ia sangat berkuasa dan boleh merealisasikan operasi pangkalan data yang kompleks.
Sintaks prosedur tersimpan
Takrif prosedur tersimpan
Sintaks takrifan prosedur tersimpan adalah seperti berikut:
BUAT PROSEDUR PROSEDUR_nama([senarai parameter])
BEGIN
存储过程主体内容
END;
Antaranya, [Senarai Parameter] adalah pilihan dan mewakili parameter input dan output yang diperlukan oleh prosedur yang disimpan. Kandungan utama prosedur tersimpan ialah satu set pernyataan SQL, yang boleh termasuk penyataan aliran kawalan (seperti IF, WHILE dan LOOP, dsb.), dan juga boleh memanggil prosedur tersimpan lain.
Parameter prosedur tersimpan
Prosedur tersimpan boleh mempunyai parameter input, parameter output dan parameter input/output. Parameter input ialah nilai yang dihantar dari luar dan digunakan dalam prosedur tersimpan. Parameter output dikira atau diberikan dalam prosedur tersimpan dan dikembalikan kepada pemanggil selepas prosedur tersimpan dilaksanakan. Parameter input/output digunakan untuk komunikasi dua hala.
Sintaks parameter prosedur tersimpan adalah seperti berikut:
CREATE PROCEDURE procedure_name(IN|OUT|INOUT parameter_name parameter_type[,IN|OUT|INOUT parameter_name parameter_type...])
BEGIN
存储过程主体内容
END;
Antaranya, parameter_name ialah nama parameter, parameter_type ialah jenis parameter, IN mewakili parameter input, OUT mewakili parameter output, dan INOUT mewakili parameter input/output. .
Panggilan prosedur tersimpan
Sintaks panggilan prosedur tersimpan adalah seperti berikut:
Nama_prosedur CALL([senarai parameter])
Di mana, nama_prosedur ialah nama prosedur tersimpan, dan parameter Senarai ialah parameter input yang diperlukan oleh prosedur tersimpan.
Contoh Prosedur Tersimpan
Berikut ialah contoh penciptaan prosedur tersimpan yang mudah Ia mencipta prosedur tersimpan bernama getUserInfo, yang memerlukan nama pengguna untuk dimasukkan dan mengembalikan nama panggilan pengguna:
DELIMITER $$
BUAT PROSEDUR getUserInfo(DALAM nama VARCHAR(20), nama panggilan KELUAR VARCHAR(20))
MULAKAN
SELECT user_nickname INTO nickname FROM user WHERE user_name=name;
TAMAT $$
DELIMITER ;
Prosedur tersimpan ini mempunyai dua parameter: nama ialah parameter input, menunjukkan nama pengguna pertanyaan ialah parameter output, menunjukkan nama panggilan pengguna. Kandungan utama prosedur tersimpan ini ialah pernyataan SELECT, yang menanyakan jadual pengguna untuk nama panggilan pengguna yang layak dan memberikannya kepada nama panggilan.
Panggilan prosedur tersimpan:
CALL getUserInfo('jack', @nickname);
PILIH @nama panggilan;
Kod di atas akan memanggil prosedur tersimpan getUserInfo dengan parameter 'jack' memberikan hasil pertanyaan kepada pembolehubah @nama panggilan dan mengeluarkan pembolehubah @nama panggilan.
Ringkasan prosedur tersimpan
Prosedur tersimpan ialah ciri penting MySQL, yang boleh membantu kami melaksanakan operasi pangkalan data dengan lebih baik. Melalui prosedur tersimpan, kami boleh menggabungkan berbilang pernyataan SQL ke dalam satu unit untuk menambah baik pengkapsulan operasi dan keselamatan. Ia juga meningkatkan kecekapan pertanyaan, meningkatkan kebolehgunaan semula dan kebolehskalaan. Dalam aplikasi praktikal, prosedur tersimpan boleh digunakan untuk mengendalikan beberapa keperluan perniagaan yang kompleks, seperti import data, penukaran data, pengiraan, dsb. Berbanding dengan pernyataan SQL tradisional, prosedur tersimpan lebih mudah dan boleh dipercayai, dan merupakan bahagian yang sangat diperlukan dalam pembangunan pangkalan data.
Atas ialah kandungan terperinci Prosedur tersimpan dalam mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!