自动&在SQL Server 2005中计划导入mdb

时间:2012-11-28 09:36:25

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

我有一个.bat文件,可以通过ftp下载已知文件夹中的文件xyz.mdb。

此访问数据库的表名称可能每个月都有所不同。

我需要通过预定的作业启动bat文件,然后在特定数据库中的SQL Server中导入xyz.mdb(我可以删除并重新创建它)。

有什么建议吗?我对ssis不是很了解。

1 个答案:

答案 0 :(得分:0)

使用WinSCP或类似功能进行FTP下载,而不是BAT文件。您可以使用执行流程任务调用它,并根据成功或失败控制流程。如果成功,则添加For Each循环容器并将其指向“已知文件夹”,将每个文件名分配给变量。然后在循环中,您可以添加从每个Access DB读取的数据流任务。

第一个棘手的部分是连接定义。您需要使用表达式来生成连接字符串。从手动生成的开始,然后在表达式中重建它,用变量替换文件名。

第二个棘手的部分是连接堆栈。 Access数据库引擎2010为您提供64位的OLE DB,但奇怪的是它一次只能在一种风格,64位或32位。这导致了很多混乱,即使在64位机器上,BIDS总是32位。

我已经开始使用ODBC驱动程序了。微软已经声明将来不推荐使用OLE DB,而ODBC是可行的方式(适合云)。任何现代Windows操作系统都将附带32位Access ODBC驱动程序,您可以安装64位Access数据库引擎2010并获得64位ODBC驱动程序。