DROP PROCEDURE (Transact-SQL)
Berlaku untuk:
SQL Server (semua versi yang didukung)
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics Analytics
Platform System (PDW)
Menghapus satu atau beberapa prosedur tersimpan atau grup prosedur dari database saat ini dalam SQL Server.
Sintaks
-- Syntax for SQL Server and Azure SQL Database
DROP { PROC | PROCEDURE } [ IF EXISTS ] { [ schema_name. ] procedure } [ ,...n ]
-- Syntax for Azure Synapse Analytics and Parallel Data Warehouse
DROP { PROC | PROCEDURE } { [ schema_name. ] procedure_name }
Catatan
Untuk melihat sintaks transact-SQL untuk SQL Server 2014 dan yang lebih lama, lihat Dokumentasi versi sebelumnya.
Argumen
IF EXISTS
Berlaku untuk: SQL Server ( SQL Server 2016 (13.x) melalui versi saat ini).
Secara kondisional menghilangkan prosedur hanya jika sudah ada.
nama_skema
Nama skema tempat prosedur berada. Nama server atau nama database tidak dapat ditentukan.
Prosedur
Nama prosedur tersimpan atau grup prosedur tersimpan yang akan dihapus. Prosedur individual dalam grup prosedur bernomor tidak dapat dihilangkan; seluruh grup prosedur dihilangkan.
Praktik Terbaik
Sebelum menghapus prosedur tersimpan, periksa objek dependen dan ubah objek ini dengan sesuai. Menghilangkan prosedur tersimpan dapat menyebabkan objek dependen dan skrip gagal ketika objek ini tidak diperbarui. Untuk informasi selengkapnya, lihat Menampilkan Dependensi Prosedur Tersimpan
Metadata
Untuk menampilkan daftar prosedur yang sudah ada, kueri tampilan katalog sys.objects . Untuk menampilkan definisi prosedur, kueri tampilan katalog sys.sql_modules .
Keamanan
Izin
Memerlukan izin CONTROL pada prosedur, atau mengubah izin pada skema tempat prosedur berada, atau keanggotaan dalam peran server tetap db_ddladmin .
Contoh
Contoh berikut menghapus prosedur tersimpan dbo.uspMyProc dalam database saat ini.
DROP PROCEDURE dbo.uspMyProc;
GO
Contoh berikut menghapus beberapa prosedur tersimpan dalam database saat ini.
DROP PROCEDURE dbo.uspGetSalesbyMonth, dbo.uspUpdateSalesQuotes, dbo.uspGetSalesByYear;
Contoh berikut menghapus dbo.uspMyProc prosedur tersimpan jika ada tetapi tidak menyebabkan kesalahan jika prosedur tidak ada. Sintaks ini baru dalam SQL Server 2016 (13.x).
DROP PROCEDURE IF EXISTS dbo.uspMyProc;
GO
Lihat juga
ALTER PROCEDURE (Transact-SQL)
CREATE PROCEDURE (SQL Bertransaksi)
sys.objects (Transact-SQL)
sys.sql_modules (SQL bertransaksi)
Menghapus Prosedur Tersimpan
