2010-08-31 57 views

回答

2

有几种方法可以做到这一点。

一种是使用派生列任务创建数据流。然后,您可以拉入这两个变量并将其发送到OLE DB或SQL Server目标。

另一个是使用执行SQL任务。这个技巧的一部分是正确使用参数。该查询将如下所示:

IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'dbo.[VarLog]') AND type in (N'U')) 
DROP TABLE dbo.[VarLog] 

Create table dbo.varlog (
    [var1] [varchar](50) NULL, 
    [var2] [varchar](50) NULL 
) 

Insert into varlog (var1,var2) values(?, ?) 

在参数映射屏幕上添加两个变量。请注意,参数名称是一个基于0的计数器,对应于?。以屏幕显示为例。在我的测试中,我使用了PackageName和StartTime的系统变量。

alt text

注:我选择放弃和替换表的例子。最有可能的是你会想要这个静态的,并且可能会添加一个日期时间到表中来跟踪随时间推移的变量。注2:我知道开始时间不是一个varchar,但它服务于示例的目的。

+0

好的一个。谢谢 – User7354632781 2010-08-31 15:08:51

0
SELECT @Var1 AS COL1, @Var2 AS COL2 
INTO #MyTempTable 

我没有尝试这样做。不过,我认为它应该起作用。