我有一个SSIS 2008包,它从Access数据库(OLEDB数据源)读取数据并使用它来更新SQL Server表。
更新完成后,我希望程序包删除Access数据库。我已经尝试过文件系统任务和脚本任务,但都没有工作,因为包正在打开数据库连接。
我收到错误消息:
该进程无法访问该文件 'C:..... \ abc.mdb'因为它正在存在 被另一个过程使用。
如何让软件包发布数据库连接?
我尝试在ConnectionManager对象上调用Dispose()方法,但无济于事。我注意到ConnectionManager类有一个 ReleaseConnection 方法,但我认为这只会释放使用相关的 AcquireConnection 方法创建的新连接。我需要SSIS来释放它自己的内部连接,以便删除MDB文件。
有什么建议吗?
提前致谢。
答案 0 :(得分:2)
您可以尝试设置作业来运行包含两个步骤的ssis包,一个用于运行包,另一个用于删除文件。如果pacakge运行完毕,它应该释放连接。