用于数据归档的SQL代理作业

时间:2015-09-21 15:22:14

标签: sql-server sql-agent-job archiving

我需要使用SQL代理作业为数据库执行数据存档。我必须查询作业才能运行存档。我直接将查询放在命令窗口中,用于代理作业的第一步。

单击解析按钮时会出现以下错误消息:

now is not a recognized built-in function name

我用来归档数据的查询就像

    DELETE [] FROM []
    JOIN [] ON [] = []
    WHERE BusinessDayDate < now() - 395

1 个答案:

答案 0 :(得分:0)

GETDATE() - link是SQL Server的等效Now()

尝试在代码中替换相同内容 -

SET QUOTED_IDENTIFIER ON;
DELETE [] FROM []
    JOIN [] ON [] = []
    WHERE BusinessDayDate < GETDATE() - 395

修改:已添加SET QUOTED_IDENTIFIER ON

原因:DELETE失败,因为可能存在 - 表上的主要xml索引和/或 过滤索引,索引视图和/或表上计算列的索引。

在计算列或索引视图上创建或更改索引时,SET QUOTED_IDENTIFIER必须为ON。如果SET QUOTED_IDENTIFIER为OFF,则对具有计算列或索引视图索引的表的CREATE,UPDATE,INSERT和DELETE语句将失败。良好的读取 - link