Prosedur tersimpan MySQL ialah kaedah menyimpan satu siri pernyataan SQL dalam pangkalan data yang boleh dipanggil untuk melaksanakan kenyataan ini apabila diperlukan. Penciptaan prosedur tersimpan MySQL memerlukan beberapa pengetahuan asas sintaks SQL dan beberapa konsep pengaturcaraan.
Dalam artikel ini, kita akan belajar cara mencipta prosedur tersimpan MySQL dan menggambarkan sintaks asas dan proses penciptaannya menggunakan contoh.
Sintaks asas yang digunakan oleh prosedur tersimpan MySQL adalah seperti berikut:
CREATE PROCEDURE procedure_name() BEGIN -- SQL statements END;
Antaranya, CREATE PROCEDURE ialah kata kunci prosedur tersimpan MySQL , procedure_name ialah nama prosedur tersimpan. Blok kod antara BEGIN dan END ialah kod SQL yang dilaksanakan oleh prosedur tersimpan.
Berikut ialah contoh prosedur tersimpan mudah, yang digunakan untuk menanyakan maklumat pelajar:
CREATE PROCEDURE GetStudent() BEGIN SELECT * FROM Student; END;
Prosedur tersimpan dipanggil GetStudent, dan fungsinya adalah untuk mengembalikan semua data dalam Jadual data pelajar.
Prosedur tersimpan MySQL boleh menerima parameter input dan parameter output. Parameter input digunakan untuk menghantar data kepada prosedur yang disimpan, dan parameter output digunakan untuk mengembalikan data daripada prosedur yang disimpan. Antaranya, kedua-dua parameter input dan parameter output mesti dinyatakan apabila prosedur tersimpan dibuat.
Berikut ialah contoh prosedur tersimpan dengan parameter input:
CREATE PROCEDURE GetStudentByGrade(IN grade INT) BEGIN SELECT * FROM Student WHERE Grade = grade; END;
Prosedur tersimpan dipanggil GetStudentByGrade dan ia mempunyai gred parameter input, jenis INT. Apabila prosedur tersimpan ini dipanggil, ia mengembalikan semua rekod pelajar yang grednya sama dengan gred.
Prosedur tersimpan MySQL juga boleh menggunakan pembolehubah untuk menyimpan data. Pembolehubah ini boleh diisytiharkan dan digunakan di dalam blok kod prosedur tersimpan.
Berikut ialah contoh prosedur tersimpan dengan pembolehubah:
CREATE PROCEDURE GetStudentByClassName(IN class_name VARCHAR(50), OUT student_count INT) BEGIN DECLARE class_id INT; SELECT ClassID INTO class_id FROM Class WHERE ClassName = class_name; SELECT COUNT(*) INTO student_count FROM Student WHERE ClassID = class_id; END;
Prosedur tersimpan dipanggil GetStudentByClassName dan ia mempunyai dua parameter: parameter input class_name dan parameter output student_count. Ia mula-mula mengisytiharkan class_id pembolehubah, dan kemudian memperoleh nilai pembolehubah melalui pertanyaan. Akhir sekali, ia mengira bilangan pelajar yang dikaitkan dengan kelas melalui pertanyaan dan menyimpannya dalam pembolehubah student_count.
Prosedur tersimpan MySQL boleh menggunakan pernyataan kawalan untuk mengawal pelaksanaan blok kod. Kenyataan kawalan prosedur tersimpan MySQL biasa termasuk IF, CASE, WHILE dan FOR.
Berikut ialah contoh prosedur tersimpan menggunakan pernyataan kawalan IF:
CREATE PROCEDURE GetStudentByID(IN student_id INT) BEGIN DECLARE student_name VARCHAR(50); IF student_id <= 0 THEN SET student_name = 'Invalid ID'; ELSE SELECT StudentName INTO student_name FROM Student WHERE StudentID = student_id; END IF; SELECT student_name; END;
Prosedur tersimpan dipanggil GetStudentByID dan ia mempunyai parameter input student_id. Ia mula-mula mengisytiharkan nama_pelajar pembolehubah dan kemudian menggunakan pernyataan kawalan IF untuk menyemak sama ada ID pelajar yang dimasukkan adalah sah. Jika tidak sah, ia akan mengembalikan "ID Tidak Sah"; jika sah, ia akan menanyakan pangkalan data dan menyimpan nama pelajar yang ditemui dalam pembolehubah nama_pelajar.
Mencipta prosedur tersimpan menggunakan MySQL boleh dicapai melalui baris arahan MySQL atau MySQL Workbench.
Di bawah baris arahan MySQL, anda boleh menggunakan arahan berikut untuk mencipta prosedur tersimpan:
CREATE PROCEDURE procedure_name() BEGIN -- SQL statements END;
Kemudian anda boleh menggunakan arahan berikut untuk memanggil prosedur tersimpan:
CALL procedure_name();
Di bawah MySQL Workbench, anda boleh Gunakan langkah berikut untuk mencipta prosedur tersimpan:
Selepas mencipta prosedur tersimpan, anda boleh menggunakan arahan berikut untuk memanggil prosedur tersimpan di bawah baris arahan MySQL:
CALL procedure_name();
Di bawah MySQL Workbench, anda boleh menggunakan langkah berikut untuk panggil prosedur tersimpan:
Prosedur disimpan MySQL ialah cara untuk menyimpan kod SQL dalam pangkalan data. Dengan menggunakan prosedur tersimpan, pertanyaan SQL yang kompleks atau blok kod SQL yang biasa digunakan boleh disimpan dalam pangkalan data untuk digunakan semula kemudian atau untuk meningkatkan kecekapan pertanyaan. Artikel ini memperkenalkan sintaks asas prosedur tersimpan MySQL, cara menggunakan parameter, pembolehubah dan penyataan kawalan serta cara membuat dan memanggil prosedur tersimpan. Kami berharap artikel ini dapat membantu anda memahami prosedur tersimpan MySQL dan menggunakannya dalam kerja sebenar untuk meningkatkan kecekapan operasi pangkalan data.
Atas ialah kandungan terperinci penciptaan prosedur tersimpan mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!