关键字'truncate'附近的语法不正确。在视图中

时间:2012-08-17 05:10:15

标签: tsql

我收到错误“关键字'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

4 个答案:

答案 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