2009-12-21 44 views
0

我正试图从MySQL表中检索数据,并在SQL Server 2008 SSIS中使用ADO .NET连接插入到SQL Server表中。在我的数据流任务中,我有一个查询MySQL表的ADO .NET Source(选择所有发票)和一个将数据插入到我的SQL Server表中的ADO .NET目标。现在,我想在我的数据源中添加一个参数,以便仅选择从我的SQL Server表中检索到的最大值(invoiceNumber)。我使用“OLE DB命令”执行了类似的任务,但问题是我需要查询MySQL数据库。任何想法我可以如何实现这一目标?ADO .NET源码的SSIS查询参数

+0

如果我得到正确的答案 – 2009-12-22 19:26:40

回答

0

设置数据访问模式在ADO.NET源到SQL Command并编写查询。

+0

我已经为我的查询做到了这一点。我从哪里得到参数? – 2009-12-21 21:04:32

+1

变量 - 首先查询您的本地数据库,将结果放入一个变量并将变量传递给第二个查询。 – 2009-12-26 20:29:24

0

您shoudn't必须添加一个参数:

select * 
from invoices 
where invoiceNumber = (select max(invoiceNumber) from invoices) 

在SQL Server中的上述作品。我假设相同的查询将在MySQL中工作

+0

我想你可能会误解我。必须在我的本地SQL Server表中调用select max(invoiceNumber)。然后,我可以使用该数字来查询外部的MySQL数据库。所以,eveyday软件包会从MySQL数据库获取新的发票并将它们推送到SQL Server。 – 2009-12-22 19:23:38

1

我发现使用参数与ADO.NET数据源的唯一方法是此解决方法: 转到流控制并selenct包含您的ADO的活动流.NET源码。 在属性窗口中可以看到ADO.NET源代码Sql命令 转到表达式并选择属性:[YOU SOURCE NAME]。[SqlCommand]然后使用变量编辑表达式来模拟参数