2016-12-11 64 views
0

OK所以这里的尝试我的代码来创建一个视图,但它不断告诉我,创建视图必须只在该批次中唯一的语句想尽一切需要帮助不正确的语法错误CREATE VIEW必须是批处理中的唯一语句

在SQL Server
CREATE VIEW [Vendors List] 
AS 
    SELECT 
     VendorID, 
     SUM(InvoiceTotal) AS [YTD Invoice Total], 
     SUM(PaymentTotal) AS [YTD Payment Total], 
     SUM(CreditTotal) AS [YTD Credit Total] 
    FROM 
     dbo.Invoices 
    GROUP BY 
     VendorID 
+3

请在'CREATE VIEW'之前的'GO'行。 –

+0

非常感谢你的工作 –

+0

@GordonLinoff为什么不张贴你的答案作为答案?那么这个问题就不会解决了。 – SqlZim

回答

0

许多有用的报表必须在一个批次的开始。这些措施包括create triggercreate stored procedure,等等。

什么是批处理?它基本上是一个汇编单位。它也限制了局部变量的范围。我建议你阅读关于在documentation批次。

启动一个批量的最简单的方法是使用GO。有时,您可能希望在代码块的中间放置语句,并且不能使用GO(例如,在存储过程的主体中)。在这种情况下,您可以使用动态SQL。

相关问题