【问题标题】:How to use SSIS to export data from multiple tables into one flat file?如何使用 SSIS 将多个表中的数据导出到一个平面文件中?
【发布时间】:2023-03-12 01:28:01
【问题描述】:

我有 2 个列数不同的表,我需要使用 SSIS 将数据导出到文本文件。例如,我有客户表 tblCustomers;订单表,tblOrders

tblCustomers (id, name, address, state, zip)
id  name    address state   zip’
100 custA   address1    NY  12345
99  custB   address2    FL  54321

tblOrders(id, cust_id, name, quantity, total, date)
id  cust_id     name    quantity    total   date
1   100     candy   10      100.00  04/01/2014
2   99      veg 1       2.00    04/01/2014
3   99      fruit   2       0.99    04/01/2014
4   100     veg 1       3.99    04/05/2014

结果文件如下

“custA”, “100”, “recordtypeA”, “address1”, “NY”, “12345”
“custA”, “100”, “recordtypeB”, “candy”, “10”, “100.00”, “04/01/2014”
“custA”, “100”, “recordtypeB”, “veg”, “1”, “3.99”, “04/05/2014”
“custB”, “99”, “recordtypeA”, “address2”, “FL”, “54321”
“custB”, “99”, “recordtypeB”, “veg”, “1”, “2.00”, “04/01/2014”
“custB”, “99”, “recordtypeB”, “fruit”, “2”, “0.99”, “04/01/2014”

谁能指导我如何做到这一点?

【问题讨论】:

标签: sql-server-2008 ssis


【解决方案1】:

我猜你的意思是“指导”,而不是“公会”——我希望你在编码时打字更加小心?

我会在 SSIS 包中创建一个数据流任务。在那里,我将首先添加一个 OLE DB 源并将其指向 tblOrders。然后我会添加一个查找来添加来自 tblCustomers 的数据,方法是将 tblOrders.Cust_id 匹配到 tblCustomers.id。

【讨论】:

    【解决方案2】:

    我会使用一个 SQL 查询来连接表,并设置数据,将其用作源并导出。

    请注意,第一行有 6 列,第二行有 7 列。导入这些类型的标题/详细信息文件通常很困难(也没有标准文件那么容易)。创建后如何使用此文件?如果需要将其导入某个地方,您最好将数据连接起来并拥有 10 列,或者单独导出它们。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-04-21
      • 2011-08-08
      • 1970-01-01
      • 1970-01-01
      • 2016-03-17
      • 1970-01-01
      • 2011-09-07
      相关资源
      最近更新 更多