如何使从视图中进行选择触发代理作业



我对这里的任何肮脏伎俩都持开放态度,无论它们多么不干净或不明智。

我的用户通过Excel查询我的服务器。我希望用户能够从Excel触发代理作业。他们只有"SELECT"one_answers"View Definitions"权限。据我所知,这意味着我必须设计一些方法,让我的用户可以通过查询视图来触发代理作业。如何做到这一点?

您可以设置一个SQL作业来监视(每X分钟运行一次?(查询历史:如何在SQL Server Management Studio中查看查询历史记录一旦在视图中找到查询,它就会写下执行时间戳并触发您想要运行的作业。下一次运行时,它会查找相同的查询,但在保存的时间戳之后触发。

这将是更多的";"安全";如果您已经在服务器上运行了适当的监控工具。

但你真的应该考虑一个更好的解决方案。

编辑:根据您的评论创建一个触发作业的存储过程。授予用户对存储过程的执行权限。在过程中,使用上下文切换可以运行作业,而无需授予用户运行任何作业的权限-只需切换到服务帐户:https://learn.microsoft.com/en-us/sql/t-sql/statements/execute-as-transact-sql?view=sql-服务器-ver15

最新更新