Stored procedures 如何检查SQL Azure中是否存在存储过程?

Stored procedures 如何检查SQL Azure中是否存在存储过程?,stored-procedures,azure-sql-database,Stored Procedures,Azure Sql Database,我通常在SQL Server中使用以下代码: IF EXISTS (SELECT * FROM sysobjects WHERE id = OBJECT_ID(N'[dbo].[proc_MyProc]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1) DROP PROCEDURE [dbo].[proc_MyProc] GO 在SQLAzure中如何执行此操作?我收到一条错误消息:“无效的对象名‘sysobjects’。” 增加: 错误实际上是在检查

我通常在SQL Server中使用以下代码:

IF  EXISTS (SELECT * FROM sysobjects WHERE id = OBJECT_ID(N'[dbo].[proc_MyProc]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1)
DROP PROCEDURE [dbo].[proc_MyProc]
GO
在SQLAzure中如何执行此操作?我收到一条错误消息:“无效的对象名‘sysobjects’。”

增加:

错误实际上是在检查存储过程是否存在并找到执行此操作的代码时发生的:

IF  EXISTS (SELECT Routine_Name from information_schema.Routines WHERE Routine_Name = 'proc_MyProc')
DROP PROCEDURE [proc_MyProc]
GO

我已经更新了问题并提供了答案。

这也适用于SQL Azure

if object_id('[dbo].[proc_MyProc]') is not null
  DROP PROCEDURE [proc_MyProc]