我收到错误“关键字'truncate'附近的语法不正确。”并且不确定这里的语法有什么问题,这对我来说并不明显......可能是愚蠢的东西,但我需要另一组眼睛:
ALTER VIEW [dbo].[vw_All_Events]
AS
truncate table Event
Select [event_id]
,[site_id]
,[autogenerated]
,[creation_date]
,[last_update_date]
from Event
GO
答案 0 :(得分:3)
视图仅允许AS
之后的单个语句,并且必须是数据检索(返回行集)。它不能是不同的类型,包括数据定义,数据修改,程序,声明或任何其他类型。
你可以使用存储过程或用户定义的函数执行这些操作(但不能在函数中执行DDL和DML)。
详细地说,存储过程允许控制流语句,如IF THEN ELSE BEGIN END WHILE RETURN。您可以使用DML来更新,删除和插入。您可以使用DDL来创建和删除表和索引,添加列和约束等。您可以返回多个行集。您可以执行动态SQL。
你想要完成什么?
答案 1 :(得分:1)
更好的方法是,使用存储过程而不是视图。
您可以编写多个语句并获得输出。
答案 2 :(得分:0)
您只能在视图中使用select语句。因此,'truncate'是一个无效的命令。
答案 3 :(得分:-1)
TRUNCATE
不适用于观看次数。
查看此link