首页 文章

Sql代理作业不会执行

提问于
浏览
0

我已经创建了一个sql代理作业,如下所示

USE [Database]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[StoredProc_RPT_Test]
@batch_id = Null,
@StartDate = Null,
@EndDate = Null
SELECT 'Return Value' = @return_value
GO

当所有参数为空时,存储过程StoredProc_RPT_Test调用另一个存储过程 . 其中将数据插入永久表中 .

我可以手动运行StoredProc_RPT_Test,它工作正常 . 数据存在于永久表中 . 但是,当我运行sql代理程序作业时,没有结果永久表?

真的很困惑 . 这是因为iam调用了两个存储过程吗?

4 回答

  • 0

    问题是SQL Server Agent的默认textize为1024.在执行存储过程之前的SQL Server Agent步骤中,我只是添加了textize .

    例如

    SET TEXTSIZE 15000
    EXEC dbo.yourspname @param1, @param2...
    

    希望这会对某人有所帮助 .

  • 0

    很可能SQL Server代理没有足够的权限来运行您的SP . 将作业所有者(在对话框中)设置为具有权限的帐户 .
    手动运行作业时,请在上下文中执行此操作 .

  • 0

    尝试不在程序内部选择返回值 .

  • 2

    您是否检查了作业日志中是否有任何失败消息?另外,请确保SQL Server服务帐户具有该过程的执行权限 .

相关问题