DROP PROCEDURE (Transact-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)Titik akhir analitik SQL di Microsoft FabricWarehouse di Microsoft Fabric

Menghapus satu atau beberapa prosedur tersimpan atau grup prosedur dari database saat ini di SQL Server.

Konvensi sintaks transact-SQL

Sintaksis

-- 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 and Microsoft Fabric
  
DROP { PROC | PROCEDURE } { [ schema_name. ] procedure_name }  

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi yang lebih lama, lihat Dokumentasi versi sebelumnya.

Argumen

JIKA ADA
Berlaku untuk: SQL Server (SQL Server 2016 (13.x) melalui versi saat ini).

Secara kondisional menghilangkan prosedur hanya jika sudah ada.

schema_name
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 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 ada, kueri tampilan katalog sys.objects . Untuk menampilkan definisi prosedur, kueri tampilan katalog sys.sql_modules .

Keamanan

Izin

Memerlukan izin CONTROL pada prosedur, atau izin UBAH 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 (Transact-SQL)
sys.objects (Transact-SQL)
sys.sql_modules (T-SQL)
Menghapus Prosedur Tersimpan