Compartir a través de


DROP PROCEDURE (Transact-SQL)

Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) Punto de conexión de análisis SQL en Microsoft Fabric Almacenamiento en Microsoft Fabric

Quita uno o más procedimientos almacenados o grupos de procedimientos de la base de datos actual en SQL Server.

Convenciones de sintaxis de Transact-SQL

Sintaxis

Sintaxis para SQL Server, Azure SQL Instancia administrada y Azure SQL Database:

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

Sintaxis de Azure Synapse Analytics, Analytics Platform System (PDW) y Microsoft Fabric:

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

Argumentos

IF EXISTS

Se aplica a: SQL Server 2016 (13.x) y versiones posteriores, Azure SQL Instancia administrada y Azure SQL Database

Quita el procedimiento condicionalmente solo si ya existe.

schema_name

El nombre del esquema al que pertenece el procedimiento. No se puede especificar un nombre de servidor o un nombre de base de datos.

procedure

Nombre del procedimiento almacenado o grupo de procedimientos almacenados que se van a quitar. No se pueden quitar procedimientos individuales dentro de un grupo de procedimientos numerados; se quita todo el grupo de procedimientos.

procedimientos recomendados

Antes de quitar un procedimiento almacenado, compruebe los objetos dependientes y modifique estos objetos como corresponda. Quitar un procedimiento almacenado puede provocar un error en los objetos y scripts dependientes cuando estos objetos no se actualizan. Para más información, vea Ver las dependencias de un procedimiento almacenado.

Metadatos

Para mostrar una lista de procedimientos existentes, consulte la vista de sys.objects catálogo. Para mostrar la definición del procedimiento, consulte la vista de sys.sql_modules catálogo.

Permisos

Requiere CONTROL permiso en el procedimiento, o ALTER permiso en el esquema al que pertenece el procedimiento o pertenencia al rol fijo de servidor db_ddladmin .

Ejemplos

En el siguiente ejemplo se quita el procedimiento almacenado dbo.uspMyProc de la base de datos actual.

DROP PROCEDURE dbo.uspMyProc;
GO

En el siguiente ejemplo se quitan varios procedimientos almacenados de la base de datos actual.

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

En el ejemplo siguiente se quita el dbo.uspMyProc procedimiento almacenado si existe, pero no se produce un error si el procedimiento no existe. Esta sintaxis se introdujo en SQL Server 2016 (13.x).

DROP PROCEDURE IF EXISTS dbo.uspMyProc;
GO