运行存储在表中的脚本

时间:2018-11-01 02:34:52

标签: sql-server

我将脚本存储在表中。我想通过运行存储过程来安排它在SQL Server代理作业中安排每天自动运行。是否有可能或关于如何的任何想法?尝试过Google搜索,但不知道正确的关键字

这是存储脚本的表的示例:

enter image description here

下面是将在SQL Server代理作业中执行的存储过程

CREATE PROCEDURE DailyRunUpdate
AS
    SELECT Script_Value 
    FROM [Script Code] 
    WHERE [Dimension Value Code] = 'EA'

1 个答案:

答案 0 :(得分:0)

最简单的解决方案是将script_value选择到变量@ScriptSQL中,然后使用EXEC @ScriptSQL运行它,或者将其馈送到sp_executesql(正确/更好的方法,以防止不良代码或注入攻击)

一些读物 https://blogs.msdn.microsoft.com/turgays/2013/09/17/exec-vs-sp_executesql/

明显的担忧

  • 注射攻击
  • 无效的代码(使用TRY ... CATCH吗?)
  • 动态查询的执行计划