如何在部署脚本的事务中包含ALTER VIEW语句?

时间:2009-12-15 00:57:26

标签: sql sql-server

我在prod上运行SQL Server 2005,但在2008年开发,我需要更改视图以添加列。但是我在创建部署脚本时遇到了问题,因为我需要将它包装在像这样的事务中

begin tran;

alter view [dbo].[v_ViewName] with schemabinding
as 
    select ... 

    /* do other stuff */
commit;

当我这样做时,SQL IDE会在alter语句下面加上一条错误,指出'ALTER VIEW'语句必须是批处理中唯一的语句。如果我忽略了这个并且只是试着运行它,它会给出这个错误:

  

关键字“view”附近的语法不正确。

任何想法如何解决这个问题?

1 个答案:

答案 0 :(得分:10)

交易可以跨越多个批次:

begin tran;
GO

alter view [dbo].[v_ViewName] 
with schemabinding
as         
  select ...     
GO

/* do other stuff */
GO

commit;
GO