将多个查询导出到不同的表

时间:2009-11-25 10:11:20

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

我需要出口;从ms sql对ms访问数据库的不同表进行多次查询。

我知道可以通过获取每个查询并将其导出到单个表并为不同的查询重复相同的操作。

我想知道的是......可以一次性完成吗?

假设有三个查询,每个查询输出需要在不同的表中...在这种情况下是否可以使用单个导出?

3 个答案:

答案 0 :(得分:1)

您可以将各个导出保存为SSIS包,然后将它们合并到一个包中。

出口甚至可以并行运行。

答案 1 :(得分:0)

我不确定你的意思。您可以将所有SQL语句放入一个命令批处理中,而不是分别执行每个命令,例如:

insert into Table1 select ...
insert into Table2 select ...
insert into Table3 select ...

答案 2 :(得分:0)

这些直通查询还是Jet(访问)查询?如果它们是Jet查询,则应创建make table查询并通过VBA批量运行它们。如果您愿意,可以在VBA中轻松构建make表查询本身。下面是一个从链接的SQL Server表中获取连接字符串的示例,但是您可以填写自己的连接字符串,它应该与链接表的connect属性具有相同的格式。

Dim db As Database
Dim strSQL As String
Dim strConnect As String

Set db = CurrentDb
strConnect = db.TableDefs("dbo_test").Connect

strSQL = "INSERT INTO NewAccessTable (ID, Descr) " _
& "SELECT ID, Descr FROM [" & strConnect & "].[test] "

db.Execute strSQL, dbFailOnError
Debug.Print db.RecordsAffected