Я использую SQL Server и разрабатываю хранимую процедуру для переименования (собственно, добавления префикса в ее имени) других хранимых процедур. Я пытался сделать это, но я не знаю, почему я получаю эту ошибку.
Посмотрите на мой код:
DECLARE @_currentProcedure AS VARCHAR(300)
DECLARE @_newProcedure AS VARCHAR(300)
SET @_currentProcedure = '[dbo].[' + @ProcedureName + ']'
SET @_newProcedure = @Prefx + @ProcedureName
-- check if this procedure exists
IF (EXISTS(SELECT *
FROM [dbo].[sysobjects]
WHERE ID = object_id(@_currentProcedure )
AND OBJECTPROPERTY(id, N'IsProcedure') = 1
))
BEGIN
-- rename it (doesn't work)
EXEC sp_rename @_currentProcedure , @_newProcedure , 'OBJECT'
GO
END
И когда я пытаюсь скомпилировать это, я получаю сообщение об ошибке
Неправильный синтаксис рядом с 'OBJECT'
Неверный синтаксис рядом с 'END'
Примерно так.
Что я могу сделать, чтобы исправить эту ошибку и заставить эту процедуру работать!?
Спасибо!