Rumah  >  Artikel  >  pangkalan data  >  Apakah kelemahan prosedur tersimpan mysql

Apakah kelemahan prosedur tersimpan mysql

青灯夜游
青灯夜游asal
2022-04-12 16:54:042891semak imbas

Kelemahan prosedur tersimpan mysql: 1. Struktur prosedur tersimpan menjadikannya lebih sukar untuk membangunkan prosedur tersimpan dengan logik perniagaan yang kompleks 2. Sukar untuk menyahpepijat prosedur tersimpan; dan mengekalkan prosedur tersimpan; 4. Memandangkan prosedur tersimpan mengikat aplikasi ke pangkalan data, menggunakan prosedur tersimpan untuk merangkum logik perniagaan akan mengehadkan kemudahalihan aplikasi.

Apakah kelemahan prosedur tersimpan mysql

Persekitaran pengendalian tutorial ini: sistem windows7, versi mysql8, komputer Dell G3.

Pengenalan kepada prosedur tersimpan:

Prosedur Tersimpan (Prosedur Tersimpan) ialah satu set pernyataan SQL yang digunakan untuk melengkapkan fungsi tertentu disusun dan disimpan dalam pangkalan data. Pengguna melaksanakan prosedur tersimpan dengan menyatakan namanya dan memberikan parameter (jika prosedur tersimpan mempunyai parameter).

1. Prosedur tersimpan hanya disusun apabila ia dibuat Tidak perlu menyusun semula setiap kali prosedur tersimpan dilaksanakan pada masa hadapan prosedur tersimpan boleh meningkatkan kelajuan pelaksanaan pangkalan data.

2 Apabila melakukan operasi kompleks pada pangkalan data (seperti Kemas Kini, Masukkan, Pilih, Padam pada berbilang jadual), operasi kompleks ini boleh dirangkumkan dalam prosedur tersimpan dan digabungkan dengan pemprosesan transaksi yang disediakan oleh pangkalan data. .

3. Prosedur tersimpan boleh digunakan semula, yang boleh mengurangkan beban kerja pembangun pangkalan data.

4. Keselamatan tinggi, anda boleh menetapkan bahawa hanya pengguna tertentu yang berhak menggunakan proses tersimpan yang ditentukan.

Kebaikan dan keburukan prosedur tersimpan MySQL

Kelebihan prosedur tersimpan MySQL

  • Prosedur yang biasanya disimpan membantu meningkatkan prestasi aplikasi. Apabila dibuat, prosedur tersimpan disusun dan disimpan dalam pangkalan data. Walau bagaimanapun, MySQL melaksanakan prosedur tersimpan sedikit berbeza. Prosedur tersimpan MySQL disusun atas permintaan. Selepas menyusun prosedur tersimpan, MySQL meletakkannya dalam cache. MySQL mengekalkan cache prosedur tersimpannya sendiri untuk setiap sambungan. Jika aplikasi menggunakan prosedur tersimpan berbilang kali dalam satu sambungan, gunakan versi terkumpul, jika tidak, prosedur tersimpan berfungsi seperti pertanyaan.

  • Prosedur tersimpan membantu mengurangkan trafik antara aplikasi dan pelayan pangkalan data kerana aplikasi tidak perlu menghantar berbilang penyata SQL yang panjang, tetapi hanya nama dan parameter prosedur tersimpan .

  • Prosedur tersimpan boleh diguna semula dan telus untuk sebarang aplikasi. Prosedur tersimpan mendedahkan antara muka pangkalan data kepada semua aplikasi supaya pembangun tidak perlu membangunkan fungsi yang sudah disokong dalam prosedur tersimpan.

  • Program yang disimpan adalah selamat. Pentadbir pangkalan data boleh memberikan kebenaran yang sesuai kepada aplikasi yang mengakses prosedur tersimpan dalam pangkalan data tanpa memberikan sebarang kebenaran kepada jadual pangkalan data asas.

Selain daripada kelebihan ini, prosedur tersimpan mempunyai kelemahannya sendiri, yang harus diambil perhatian sebelum menggunakannya dalam pangkalan data.

Kelemahan Prosedur Tersimpan MySQL

  • Jika anda menggunakan sejumlah besar prosedur tersimpan, maka penggunaan memori setiap sambungan menggunakan prosedur tersimpan ini akan meningkat dengan banyak. Selain itu, jika anda terlalu menggunakan banyak operasi logik dalam prosedur tersimpan anda, penggunaan CPU juga akan meningkat kerana pelayan pangkalan data tidak direka untuk operasi logik.

  • Pembinaan prosedur tersimpan menjadikannya lebih sukar untuk membangunkan prosedur tersimpan dengan logik perniagaan yang kompleks.

  • Sukar untuk nyahpepijat prosedur tersimpan. Hanya beberapa sistem pengurusan pangkalan data membenarkan anda menyahpepijat prosedur tersimpan. Malangnya, MySQL tidak menyediakan keupayaan untuk menyahpepijat prosedur tersimpan.

  • Membangun dan mengekalkan prosedur tersimpan bukanlah mudah.

  • Kemudahalihan yang lemah: Memandangkan prosedur tersimpan mengikat aplikasi ke pangkalan data, menggunakan prosedur tersimpan untuk merangkum logik perniagaan akan mengehadkan kemudahalihan aplikasi.

  • Masalah penyusunan semula, kerana kod back-end disusun sebelum dijalankan, jika objek dengan perhubungan rujukan berubah, prosedur dan pakej tersimpan yang terjejas perlu dikompilasi semula Compile ( tetapi ia juga boleh ditetapkan untuk menyusun secara automatik pada masa jalan).

[Cadangan berkaitan: tutorial video mysql]

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