你需要做的是:
1.- 在包中创建 2 个变量,一个名为“current_file”,另一个名为“loading_location”(或您喜欢的名称),两者都具有包的范围,数据类型字符串,对于 current_file,保持值为空,在 loading_location 上将您的文件夹的路径放入 Access 数据库中。
2.- 添加一个 Foreach 循环容器,在其中转到 Collection,选择表达式,然后添加一个新表达式。在属性上选择目录,然后在表达式中选择刚刚创建的 loading_location 变量。
再次返回集合并在文件中输入:*.mdb
保持所有其他选项相同。然后转到变量映射并在变量中选择 current_file 变量。
3.- 创建一个新的 OLE DB 连接。在提供程序上选择“Microsoft Jet 4.0 OLE DB 提供程序”,在数据库文件名上选择您的任何访问数据库(稍后会更改,不要担心)。
4.- 在 Foreach 循环容器内创建一个数据流任务,在该数据流任务内添加一个 OLE DB 源。打开 OLE DB 源,在连接管理器中,选择刚刚创建的连接,在数据访问模式下选择“表或视图”,然后为 DB 选择表。
5.- 添加一个 OLE DB 目标,为目标数据库选择相应的连接,然后选择要放置 Access 数据库数据的表。
现在我们将对其进行更改以通过每个 Access 数据库..
6.- 选择您为 Access DB 创建的连接,转到“属性”窗口并记下 ConnectionString 值,在我的例子中是:
Data Source="MyAccessDBFile";Provider=Microsoft.Jet.OLEDB.4.0;
根据对数据库的权限,您可能有额外的东西。
现在转到 Expression 属性,展开它,我们将添加 2 个表达式。一个过属性“ConnectionString”,并在表达式中放
"Data Source="+yourCurrentFileVariable+";Provider=Microsoft.Jet.OLEDB.4.0;"
你应该得到这样的东西:
"Data Source="+ @[User::current_file]+";Provider=Microsoft.Jet.OLEDB.4.0;"
为属性“ServerName”添加一个新表达式,在此选择 current_file 变量作为表达式,您应该在表达式字段中得到类似的内容:
@[用户::current_file]
7.- 现在您将在 OLE DB 源中得到一个错误,不要担心这只是因为 current_file 变量还没有任何值。返回到 Foreach 循环容器中的数据流任务,并将 DelayValidation 属性设置为 true。进入 Project->"Your Package" Properties->Debugging,将 Run64BitRunteime 设置为 false。
就是这样。