2012-12-15 45 views
0

是否有可能设计执行SQL任务,以便从SQL数据库读取时执行任务A以及何时执行任务A以及何时从变量读取任务B ?这意味着执行SQL任务可以同时处理SQL语句和变量。是否有可能执行SQL语句同时适用于SQL语句和变量

+0

我不是100%肯定能理解你的问题,但你可以启动表函数,标量函数和存储过程来完成你的任务。所以任务A是一个存储过程,任务B也是,那么你可以随时启动它们。 – YvesR

+0

不幸的是我不明白你的回复。我如何设置执行SQL任务的选项,如ResultSet或SQLStatement?我如何编写适当的查询,以便在更改它时,执行SQL任务知道它必须使用我们在ssis中设置的SQlStatement或Variables? –

+0

要执行语句,您可以使用http://msdn.microsoft.com/en-us/library/ms188332.aspx,但您可能需要了解如何使用存储过程,然后使用imho。看看这里http://www.mssqltips.com/sqlservertutorial/160/sql-server-stored-procedure/ – YvesR

回答

0

因此,您希望在运行时设置Execute SQL任务的SqlStatementSource属性,具体取决于您是否从SQL数据库检索值。如果未检索到任何值,则需要将其设置为预先存在的变量的值。

  1. 创建一个执行SQL任务来检索您的SQL数据库值 并将其分配给变量DatabaseSQL。我假设你的查询将返回NULL,如果没有值被发现。
  2. 将您的默认值分配给变量DefaultSQL。
  3. 在你执行SQL任务,创建一个用于 SqlStatementSource属性的表达式和表达式设置为

    REPLACENULL(@user :: DatabaseSQL,@user :: DefaultSQL)