Aracılığıyla paylaş


DROP PROSEDÜRÜ (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiAzure Synapse AnalyticsAnaliz Platformu Sistemi (PDW)Microsoft Fabric'teki SQL analiz uç noktasıMicrosoft Fabric'teki ambarMicrosoft Fabric'teki SQL veritabanı

SQL Server'daki mevcut veritabanından bir veya daha fazla depolanmış prosedür veya prosedür grubunu kaldırır.

Transact-SQL söz dizimi kuralları

Sözdizimi

SQL Server, Azure SQL Yönetilen Örneği ve Azure SQL Veritabanı söz dizimi:

DROP { PROC | PROCEDURE } [ IF EXISTS ] { [ schema_name. ] procedure } [ , ...n ]

Azure Synapse Analytics, Analytics Platform Sistemi (PDW) ve Microsoft Fabric için söz dizimi:

DROP { PROC | PROCEDURE } { [ schema_name. ] procedure_name }

Arguments

VARSA

Şunlara uygulanır: SQL Server 2016 (13.x) ve sonraki sürümler, Azure SQL Managed Instance ve Azure SQL Database

Prosedür ancak zaten varsa koşullu olarak kaldırılır.

schema_name

Yordamın ait olduğu şemanın adı. Bir sunucu adı veya veritabanı adı belirtilemez.

prosedür

Kaldırılacak saklanan prosedürün veya saklanan prosedür grubunun adı. Numaralı prosedür grubundaki bireysel işlemler bırakılamaz; Tüm işlem grubu bırakılır.

En iyi yöntemler

Herhangi bir depolanmış prosedürü kaldırmadan önce, bağımlı nesneleri kontrol edin ve bu nesneleri buna göre değiştirin. Bir depolanmış prosedürün düşürülmesi, bağımlı nesneler ve betiklerin güncellenmediğinde arızalanmasına neden olabilir. Daha fazla bilgi için, bakınız : Bir Saklanan Prosedürün Bağımlılıklarını Gör

Meta veriler

Mevcut prosedürlerin listesini görüntülemek için katalog görünümünü sys.objects sorgulayın. Prosedür tanımını görüntülemek için katalog görünümünü sys.sql_modules sorgulayın.

Permissions

Prosedür için izin, ALTER prosedürün ait olduğu şema üzerine izin veya db_ddladmin sabit sunucu rolünde üyelik gerektirirCONTROL.

Örnekler

Aşağıdaki örnek, mevcut veritabanındaki depolanmış prosedürü dbo.uspMyProc kaldırmaktadır.

DROP PROCEDURE dbo.uspMyProc;
GO

Aşağıdaki örnek, mevcut veritabanında depolanan birkaç prosedürü kaldırır.

DROP PROCEDURE
    dbo.uspGetSalesbyMonth,
    dbo.uspUpdateSalesQuotes,
    dbo.uspGetSalesByYear;

Aşağıdaki örnek, varsa saklanan dbo.uspMyProc prosedürü kaldırır ancak prosedür yoksa hata yapmaz. Bu sözdizimi SQL Server 2016 (13.x) sürümünde tanıtıldı.

DROP PROCEDURE IF EXISTS dbo.uspMyProc;
GO