ssis mysql ado.net 迁移,使用SSIS查询ADO .NET源查询从SQL Server传入参数

I would like to pass parameters to a MySQL query using ado.net as the source of the query.

SELECT *

FROM userinfo

WHERE load_date > '2012-01-07'

AND load_date < '2012-01-14'

I have a settings table in sql server that has my values:

SELECT startdate, enddate

FROM tblsetting

I have managed to pass these values into SSIS. If I run a query against my sql server tables I am able to use this:

SELECT *

FROM userinfo

WHERE load_date > ?

AND load_date < ?

But when I change my source to ado.net, connecting to mysql server , it does not like that syntax. Can anyone explain what am I missing?

解决方案

You can write a SQL expression and store it a variable of type String

"SELECT *

FROM userinfo

WHERE load_date > '" + (DT_WSTR,20) @[User::YourDateTimeVar] + "''

AND load_date < '" + (DT_WSTR,20)@[User::YourDateTimeVar] + " ' "

and then use this variable for a property which is present in the expression of Data Flow Task .Write click on DFT and select Properties . Click on Expression and select Ado.NET sql command from the properties in the dialogue box

As3WY.png

Select the variable for the above property.Here ADO_SRC_Orale[SqlCommand] property will be replaced by the name of your ADO.NET source

Qs5XU.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值