在SQL执行任务(SSIS)中设置用户定义的变量

时间:2013-11-07 16:24:01

标签: sql sql-server sql-server-2005 ssis

这是在SQL Server 2005 SSIS中:

我对SSIS事情有点新意。是否可以在TSQL或执行SQL任务中“设置”包级别用户定义的变量?我了解如何映射单个行集查询的结果。但是,假设我想在一个任务中映射3个变量?

请考虑以下事项:

DECLARE @Table1 VARCHAR(255)

SET @Table1 = 'Z_Cisco_CallDetail_' + CONVERT(varchar, YEAR(DATEADD(MILLISECOND, -3, DATEADD(YEAR,DATEDIFF(YEAR, 0, DATEADD(YEAR, -1, GETDATE())) + 1, 0))))

--create table

DECLARE @Table2 VARCHAR(255)

SET @Table2 = 'Z_Cisco_AgentConnDetail_' + CONVERT(varchar, YEAR(DATEADD(MILLISECOND, -3, DATEADD(YEAR,DATEDIFF(YEAR, 0, DATEADD(YEAR, -1, GETDATE())) + 1, 0))))

--create table

DECLARE @Table3 VARCHAR(255)

SET @Table3 = 'Z_AWK_CallRecords_' + CONVERT(varchar, YEAR(DATEADD(MILLISECOND, -3, DATEADD(YEAR,DATEDIFF(YEAR, 0, DATEADD(YEAR, -1, GETDATE())) + 1, 0))))

--create table

现在我想将这3个动态表名映射到用户定义的包变量。我在另一个线程中看到了这种语法:

SET @[User::Cisco_CallRecords_Tablename] = @Table1

但我似乎无法让它发挥作用。也许我误解了一些事情。有什么想法吗?

谢谢,

杰西

0 个答案:

没有答案