Как условно создать хранимую процедуру в SQL Server?

в рамках своей стратегии интеграции, у меня есть несколько сценариев SQL, которые выполняются в целях обновления базы данных. Первое, что все эти сценарии сделать, это проверить, если они нужны для выполнения, напр.:

if @version <> @expects
    begin
    	declare @error varchar(100);
    	set @error = 'Invalid version. Your version is ' + convert(varchar, @version) + '. This script expects version ' + convert(varchar, @expects) + '.';
    	raiserror(@error, 10, 1);
    end
else
    begin
        ...sql statements here...
    end

прекрасно Работает! За исключением, если мне нужно добавить хранимой процедуры. "Создание proc" команда должна быть единственной команды в пакетном команд sql. Поставив "создать proc" в моем случае заявление причины этой ошибки:

'CREATE/ALTER PROCEDURE' must be the first statement in a query batch.

ой-ой-Ой! Как делать я ставить СОЗДАТЬ PROC команду в сценарий, и только выполнить, если это нужно?

Найдено 8 ответов:

How do I conditionally create a stored procedure in SQL Server?

http://stackoverflow.com/questions/55506/how-do-i-conditionally-create-a-stored-procedure-in-sql-server

Посмотреть решение →