此代码不起作用,返回错误:
BEGIN
CREATE VIEW [dbo].[dummy] AS SELECT 1 AS Dummy
END
GO`
Incorrect syntax near the keyword 'VIEW'.
为什么?
注释:
GO 语句的存在 似乎没有什么区别
内部语句在代码块分隔符之外可以正常工作。
这是一个更大查询的一部分,但是 单独测试 在此介绍。
最佳答案
这是因为 CREATE VIEW 必须是批处理中的第一个语句,如 this MSDN reference 中所述。 .
相反,你可以这样做: 例如
.....
BEGIN
EXECUTE('CREATE VIEW [dbo].[dummy] AS SELECT 1 AS Dummy')
END
关于sql - 为什么我不能在 BEGIN ... END block 内创建 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3133982/