我有这个有XML数据的URL。我必须从URL中提取该数据并将其转储到DW表中。我正在使用SSIS脚本任务。
这就是数据的样子:
-<currency>
<csymbol>AED</csymbol>
<cname>United Arab Emirates Dirhams</cname>
<crate>3.6732001305</crate>
<cinverse>0.2722421770</cinverse>
</currency>
−<currency>
<csymbol>AFN</csymbol>
<cname>Afghanistan Afghanis</cname>
<crate>44.0000000000</crate>
<cinverse>0.0227272727</cinverse>
</currency>
−<currency>
<csymbol>ALL</csymbol>
<cname>Albania Leke</cname>
<crate>104.4100000001</crate>
<cinverse>0.0095776267</cinverse>
</currency>
这是我用来将它加载到某些Object类型或其他东西的代码。但我不知道该怎么做。
public void Main()
{
String URLString = "http://www.xe.com/dfs/datafeed2.cgi?beeline";
XmlDocument doc = new XmlDocument();
XmlTextReader reader = new XmlTextReader(URLString);
doc.Load(reader);
XmlNodeList currencynodes = doc.SelectNodes("currency");
foreach(XmlNode currency in currencynodes)
{
XmlNode csymbol = currency.SelectSingleNode("csymbol");
string csymbolvalue = csymbol.Value;
XmlNode cname = currency.SelectSingleNode("cname");
string cnamevalue = cname.Value;
XmlNode crate = currency.SelectSingleNode("crate");
string cratevalue = crate.Value;
XmlNode cinverse = currency.SelectSingleNode("cinverse");
string cinversevalue = cinverse.Value;
Dts.Variables["User::oCurrencyConversion"].Value = csymbol.Value;
}
答案 0 :(得分:1)
实际上,您需要在数据流任务中使用脚本源组件。然后使用标准目标组件将插入到DW中。
答案 1 :(得分:0)
一旦我做了同样的事情,就可以通过SSIS包将数据从XLM拉到SQL。
这是基本步骤。
您需要注意VXD格式正确,因此SSIS可以准备好读取数据。
在我办公室桌面的某个地方,我仍然有SSIS包的来源,早上第一件事我会尝试找到并在这里分享。
另外如果您的XML源是公开的,请在此处发布,以便我们为您尝试制作一个
Aru您更喜欢在C#或集成服务中执行此任务吗?