【问题标题】:Pull data from asp.net web page using SSIS使用 SSIS 从 asp.net 网页中提取数据
【发布时间】:2013-05-20 03:05:58
【问题描述】:

我是 SSIS 的新手。我的要求是从 asp.net 网页中的 EXCEL 电子表格中提取数据。我将不得不每天从该页面提取数据。我怎样才能做到这一点?

【问题讨论】:

  • What have you tried? 您需要自己编写/发布代码,如果您不确定为什么某些事情没有按预期工作,请发布代码并说明您期望它做什么,以及它实际上在做什么,包括所有错误消息。
  • 试试这个链接bit.ly/10OTzOd

标签: ssis


【解决方案1】:

把你的问题分解成更小的部分,直到你有可以解决的问题。解决了所有小问题后,您需要将这些部分整合在一起以形成一个有凝聚力的解决方案。

看了你的问题陈述,我看出你有以下需求

  • 从 Excel 数据源中提取数据(注意,您的问题并未指定您应该如何处理
  • 从网页获取 Excel 电子表格
  • 使用 SSIS 进行管理

提取数据

定义一个Excel Connection Manager 并将其配置为与您的文件一起使用。我希望文件的格式是一致的,因为如果推断的数据类型发生更改,数据流任务将停止。

将数据流任务添加到您的控制流并作为源,使用 Excel 数据源并将连接管理器设置为您刚刚创建的 Excel CM。选择适当的目的地并将其连接起来。请注意,Excel 中的字符串数据是 nvarchar/unicode,因此您需要使用数据转换任务将其切换为非 unicode 类型。

下载文件

鉴于缺乏细节,我只能猜测您的需求。因此,我猜 Excel 文件是网页上的链接。该网页是公开的,因此无需登录。我进一步假设网站上的文件总是被命名为相同的东西,因此http://contoso.com/Yogurt.xls 如果文件名更改,http://contoso.com/Yogurt_2013-05-19.xlshttp://contoso.com/Yogurt_2013-05-20.xls 等,那么你有一个解析 HTML 以查找适当的链接。

所有这些警告都到位后,我提出WebClient.DownloadFile

string url = @"http://contoso.com/Yogurt.xls";
string downloadFile = @"C:\ssisdata\yogurt.xls";
WebClient wc = new WebClient();

wc.DownloadFile(url, downloadFile);

由于它是硬编码的位置,不执行错误处理等,此代码尚未准备好用于黄金时段,但它演示了解决方案。

使用 SSIS

上面的代码将放在Script Task 中,我将传入 url 并将文件作为变量下载到任务中,这样我就有了一个通用的文件抓取任务。

【讨论】:

  • 非常感谢。它解决了我的问题。很抱歉无法提供太多细节。从下次开始,我会提高我的提问技巧。感谢您的帮助。
猜你喜欢
  • 2023-03-09
  • 1970-01-01
  • 2011-08-08
  • 2021-10-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多