Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk melihat prosedur tersimpan mysql

Bagaimana untuk melihat prosedur tersimpan mysql

PHPz
PHPzasal
2023-04-21 14:13:101714semak imbas

MySQL ialah salah satu sistem pengurusan pangkalan data hubungan yang paling banyak digunakan pada masa ini. Ia menyediakan pengguna dengan banyak operasi pangkalan data yang berkuasa, yang mana prosedur tersimpan merupakan bahagian penting MySQL. Prosedur tersimpan membungkus jujukan penyataan SQL ke dalam satu unit untuk kegunaan semula dan pemanggilan yang mudah. Dalam artikel ini, kami akan menerangkan cara melihat prosedur tersimpan MySQL.

Sintaks prosedur tersimpan MySQL

Sebelum kita mula membincangkan cara melihat prosedur tersimpan MySQL, mari kita semak dahulu sintaks prosedur tersimpan:

CREATE [DEFINER = { user | CURRENT_USER }] PROCEDURE sp_name ([proc_parameter[,...]])
    [characteristic ...] routine_body

Antaranya,

  • DEFINER: Tentukan pencipta prosedur tersimpan Jika tidak dinyatakan, pengguna semasa akan digunakan.
  • sp_name: nama prosedur tersimpan, mematuhi konvensyen penamaan MySQL.
  • proc_parameter: Senarai parameter prosedur yang disimpan, dalam format jenis nama parameter.
  • characteristic: Pilihan, digunakan untuk menentukan ciri prosedur yang disimpan, seperti bahasa, keselamatan, dsb.
  • routine_body: Badan prosedur tersimpan, iaitu blok kod yang mengandungi satu siri pernyataan SQL.

Cara melihat prosedur tersimpan MySQL

Apabila kita perlu memahami prosedur tersimpan dalam MySQL, kita boleh menggunakan kaedah berikut untuk melihat dan membuat pertanyaan:

Kaedah 1: Gunakan arahan SHOW PROCEDURE STATUS

Anda boleh menggunakan arahan SHOW PROCEDURE STATUS untuk menanyakan maklumat terperinci semua prosedur yang disimpan dalam pangkalan data MySQL, termasuk nama prosedur tersimpan, pencipta, masa penciptaan, status, dsb.

Kod contoh:

SHOW PROCEDURE STATUS;

Melaksanakan kod di atas akan mengembalikan maklumat terperinci semua prosedur yang disimpan.

Kaedah 2: Gunakan arahan SHOW CREATE PROCEDURE

Anda boleh menggunakan arahan SHOW CREATE PROCEDURE untuk menanyakan maklumat terperinci prosedur tersimpan yang ditentukan, termasuk nama prosedur tersimpan, pencipta, masa penciptaan , parameter, ulasan, pulangan Berbaloi menunggu.

Kod sampel:

SHOW CREATE PROCEDURE sp_name;

Melaksanakan kod di atas akan mengembalikan maklumat terperinci prosedur tersimpan yang ditentukan.

Kaedah 3: Gunakan jadual sistem INFORMATION_SCHEMA

MySQL menyediakan jadual sistem INFORMATION_SCHEMA, yang boleh menanyakan maklumat metadata semua pangkalan data, jadual, paparan dan prosedur tersimpan dalam pelayan MySQL semasa.

Anda boleh mendapatkan maklumat terperinci prosedur tersimpan dengan menanyakan jadual ROUTINES di bawah INFORMATION_SCHEMA, termasuk nama prosedur tersimpan, pencipta, masa penciptaan, parameter, ulasan, nilai pulangan, dsb.

Kod sampel:

SELECT ROUTINE_NAME, ROUTINE_DEFINITION, CREATED, LAST_ALTERED, ROUTINE_COMMENT 
FROM INFORMATION_SCHEMA.ROUTINES 
WHERE ROUTINE_TYPE = 'PROCEDURE' AND ROUTINE_SCHEMA = 'database_name';

Melaksanakan kod di atas akan mengembalikan maklumat terperinci semua prosedur yang disimpan dalam pangkalan data yang ditentukan.

Nota: Apabila menggunakan INFORMATION_SCHEMA untuk menanyakan prosedur yang disimpan, anda perlu memastikan bahawa anda mempunyai kebenaran yang mencukupi, jika tidak pengecualian penafian akses akan dilemparkan.

Kesimpulan

Prosedur tersimpan MySQL ialah fungsi yang sangat praktikal yang boleh membungkus satu siri pernyataan SQL ke dalam unit bebas untuk penggunaan semula dan pemanggilan yang mudah. Apabila melakukan penyelenggaraan dan pembangunan pangkalan data, mengetahui cara melihat prosedur tersimpan MySQL akan memberi manfaat yang besar dan boleh membantu pembangun lebih memahami dan mengendalikan prosedur tersimpan. Di atas memperkenalkan tiga kaedah untuk melihat prosedur tersimpan MySQL. Pembaca boleh memilih mengikut keperluan sebenar.

Atas ialah kandungan terperinci Bagaimana untuk melihat 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