Jatuhkan semua prosedur tersimpan mysql

Pada artikel ini, saya menjelaskan cara menghapus semua Prosedur Tersimpan dalam database tertentu. Beberapa kali dalam proyek kami, kami harus menghapus semua Stored Procedures. Jika ada banyak Prosedur Tersimpan maka sangat membosankan untuk membuang semuanya. Di sini saya menjelaskan cara menghapus semua Prosedur Tersimpan dalam database secara otomatis

Saya menganggap Anda memiliki pengetahuan dasar tentang Stored Procedures dan kursor;

Pertama-tama kita membuat tabel

Pembuatan Tabel

  1. buat tabel emp(empId int, empName varchar(15))
  2. Pergilah
  3. masukkan ke dalam emp
  4. pilih 1,'Deepak'union semua
  5. pilih 2,'Arora'
  6. Pergilah
  7. pilih * dari emp

Keluaran

delete-all-stored-procedure.png 

Sekarang kita membuat dua Prosedur Tersimpan

Pembuatan Stored Procedure pertama

  1. buat proc usp_select
  2. sebagai
  3. pilih * dari emp
  4. Pergilah
  5. exec usp_select

Keluaran

delete-all-stored-procedure.png 

Pembuatan Stored Procedure kedua

  1. buat proc usp_insert(@id int, @nama varchar(15))
  2. sebagai
  3. sisipkan ke nilai emp (@id, @name)
  4. Pergilah
  5. exec usp_insert 3,'Daljeet singh'
  6. Pergilah
  7. exec usp_select

Keluaran

delete-all-stored-procedure-2012.png

Sekarang kita membuat kursor

  1. nyatakan cur_dropProc kursor
  2. gulir untuk
  3. pilih [nama] dari sysobjects di mana xtype='p'

Sekarang jalankan kode berikut

  1. buka cur_dropProc
  2. Pergilah
  3. Deklarasikan @procName varchar(500)
  4. ambil pertama dari cur_dropProc ke @procName
  5. sementara @@fetch_status=0
  6. mulai
  7. Exec('lepaskan prosedur ' + @procName)
  8. ambil berikutnya dari cur_dropProc ke @procName
  9. akhir
  10. Pergilah
  11. tutup cur_dropProc
  12. Pergilah
  13. membatalkan alokasi  cur_dropProc

Keluaran

delete-all-stored-procedure-.png 

Sekarang lihat Stored Procedure di Database

  1. pilih [nama] dari sysobjects di mana xtype='p'

delete-all-stored-proceduree.png 

Pada artikel ini, saya menjelaskan cara menghapus semua Prosedur Tersimpan dalam database di SQL Server. Saya harap artikel ini membantu Anda memahami topik ini. Silakan bagikan jika Anda tahu lebih banyak tentang ini. Umpan balik dan kontribusi konstruktif Anda dipersilakan.   

Pernyataan ini digunakan untuk menghentikan prosedur tersimpan. Artinya, rutin yang ditentukan dihapus dari server bersama dengan semua hak khusus untuk prosedur tersebut. Anda harus memiliki hak istimewa ALTER ROUTINE_ untuk rutinitas. Jika variabel sistem server automatic_sp_privileges_ disetel, hak istimewa tersebut dan EXECUTE diberikan secara otomatis ke pembuat rutin - lihat Hak Istimewa Rutin Tersimpan

Klausul IF EXISTS_ adalah ekstensi MySQL/MariaDB. Ini mencegah terjadinya kesalahan jika prosedur atau fungsi tidak ada. NOTE diproduksi yang dapat dilihat dengan SHOW WARNINGS

Sementara pernyataan ini langsung berlaku, utas yang menjalankan prosedur dapat melanjutkan eksekusi

Contoh

DROP PROCEDURE simpleproc;

JIKA ADA

DROP PROCEDURE simpleproc;
ERROR 1305 (42000): PROCEDURE test.simpleproc does not exist

DROP PROCEDURE IF EXISTS simpleproc;
Query OK, 0 rows affected, 1 warning (0.00 sec)

SHOW WARNINGS;
+-------+------+------------------------------------------+
| Level | Code | Message                                  |
+-------+------+------------------------------------------+
| Note  | 1305 | PROCEDURE test.simpleproc does not exist |
+-------+------+------------------------------------------+
_

Lihat juga

Komentar

Konten yang direproduksi di situs ini adalah milik dari pemiliknya masing-masing, dan konten ini tidak ditinjau sebelumnya oleh MariaDB. Pandangan, informasi, dan opini yang diungkapkan oleh konten ini tidak selalu mewakili MariaDB atau pihak lain mana pun

Bagaimana cara menghapus semua prosedur tersimpan di MySQL?

Berikut langkah-langkah menghapus stored procedure di MySQL menggunakan statement MySQL DROP PROCEDURE. DROP PROCEDURE [IF EXISTS] stored_procedure_name; Dalam pernyataan di atas, Anda perlu menentukan nama stored procedure. Jika Anda mencoba menghapus stored procedure yang tidak ada, MySQL akan memberikan error.

Bagaimana cara menghapus semua Prosedur Tersimpan?

Tampilkan aktivitas pada postingan ini. .
Di panel Object Explorer, pilih folder Stored Procedures
Tekan F7 (atau dari menu utama, pilih View > Object Explorer Details)
Pilih semua prosedur kecuali Tabel Sistem
Tekan tombol Hapus dan pilih OK

Bagaimana cara menjatuhkan beberapa Prosedur Tersimpan di SQL Server?

Tampilkan aktivitas pada postingan ini. .
Klik pada Tab Prosedur Tersimpan
Saring Prosedur Penyimpanan Menggunakan Fungsi Filter dari SQL
Pilih Semua Prosedur Dengan Ctrl + A kecuali Tabel Sistem
Tekan tombol Hapus dan Klik OK

Bagaimana cara menghapus prosedur tersimpan di baris perintah MySQL?

Gunakan MySQL Shell . Sintaks dasarnya adalah. HAPUS PROSEDUR [JIKA ADA] stored_procedure_name; Parameter JIKA ADA menghapus prosedur tersimpan hanya jika ada di server.