我想要一个可重新运行的部署脚本。所以我在重命名之前检查表是否存在。
IF EXISTS ( SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Schema]') AND type IN ( N'U' ) )
BEGIN
sp_rename [Schema], [SchemaInfo]
END
错误是
Incorrect syntax near 'sp_rename'.
最佳答案
尝试:
EXEC sp_rename N'Schema', N'SchemaInfo';
恕我直言,如果没有 EXEC
,您永远不应该调用存储过程。
关于sql server if block errors when running a stored proc inside - 给出语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11568275/