我有一个存储过程,它将从接收位置选择MQ文件,处理它并将其放在保存位置。
目前,当我手动执行此存储过程时,此存储过程无效。
但是,文件会在每天的特定时间自动获取并保存在保存位置。我不知道哪个存储过程正在调用它。
在此特定时间每天设置一个SQL Server作业。这项工作正在调用我手动调用的相同存储过程。
当我尝试手动运行SQL作业时,不会拾取文件。
MQ中是否有任何机制可以选择文件并将其放在接收位置?
答案 0 :(得分:0)
我最初的猜测是:域名访问权限。当SQL Agent调用该过程时,它将在“运行”SQL代理服务的帐户的权限(域访问权限)下运行。此帐户对您正在访问的文件夹具有适当的访问权限。
当您登录并调用该过程时,它将以您的访问权限运行,并且您可能没有足够的权限使用这些目标文件夹来执行列出的工作。
可能比这更复杂。一旦你离开了简单的数据库操作领域并开始使用SQL来搞乱你的网络,那么你需要处理一个代理帐户和晦涩功能的世界。它可以并且已经完成,但配置很少很简单。很大程度上取决于你(以及代码)的实现方式。