首页 > 数据库 >SSIS_数据库表数据导出为XML格式

SSIS_数据库表数据导出为XML格式

时间:2023-01-10 12:03:11浏览次数:37  
标签:XML 语文 数据库 张三 SSIS 李四 SQL tb



1. 测试表如下,

select * from tb
/*
姓名 课程 分数
---- ----- -----
张三 语文 90
张三 数学 83
李四 语文 74
李四 数学 84
李四 物理 94
*/
--将转换以下格式输出
SELECT 姓名,课程,分数 FROM tb FOR XML RAW('ROW'),Root('TB'),Elements

<TB>
<ROW>
<姓名>张三</姓名>
<课程>语文</课程>
<分数>90</分数>
</ROW>
<ROW>
<姓名>张三</姓名>
<课程>数学</课程>
<分数>83</分数>
</ROW>
<ROW>
<姓名>李四</姓名>
<课程>语文</课程>
<分数>74</分数>
</ROW>
<ROW>
<姓名>李四</姓名>
<课程>数学</课程>
<分数>84</分数>
</ROW>
<ROW>
<姓名>李四</姓名>
<课程>物理</课程>
<分数>94</分数>
</ROW>
</TB>



2. 在控制流中新建【执行 SQL 任务】和【脚本任务】

SSIS_数据库表数据导出为XML格式_SQL


3. 编辑【执行 SQL 任务】,结果集为 XML

输入执行语句:

SELECT 姓名,课程,分数 FROM tb FOR XML RAW('ROW'),Root('TB'),Elements

SSIS_数据库表数据导出为XML格式_xml_02


4.新建一个类型为Sting的变量【User::XMLData】。【执行 SQL 任务】设计完成。

SSIS_数据库表数据导出为XML格式_SQL_03


5. 编辑【脚本任务】,选择变量值为【User::XMLData】,读写都行。

SSIS_数据库表数据导出为XML格式_xml_04


6. 接着编辑上图中的【编辑脚本】,输入以下代码。【脚本任务】设计完成。

public void Main()
{
// TODO: Add your code here

System.Xml.XmlDocument xdoc = new System.Xml.XmlDocument();
xdoc.InnerXml = Dts.Variables["XMLData"].Value.ToString();
xdoc.Save(@"F:\Output.xml");

Dts.TaskResult = (int)ScriptResults.Success;
}



7. 编译文件,会生成一个文件【

F:\Output.xml

SSIS_数据库表数据导出为XML格式_XML_05





标签:XML,语文,数据库,张三,SSIS,李四,SQL,tb
From: https://blog.51cto.com/hzc2012/6000176

相关文章

  • SSIS【Foreach 循环容器_Foreach ADO.NET 架构行集枚举器】(循环导入一个Excel所有工作
    SQLServer2008R2SSIS_Foreach循环容器_ForeachADO.NET架构行集枚举器(循环导入一个Excel所有工作簿)1.本节主要是循环把工作簿Sheet1、Sheet2、Sheet3中的数据插入到数据......
  • SSIS_控制流(大容量插入任务)
    大容量插入任务为将大量的数据复制到SQLServer表或视图提供了有效的方法。例如,假定贵公司在大型主机系统上存储了数百万行的产品列表,但公司的电子商务系统却使用SQLSer......
  • SSIS_控制流(FTP 任务)
    FTP任务可以下载和上载数据文件,并管理服务器上的目录。例如,在IntegrationServices包工作流中,包可以从远程服务器或Internet位置下载数据文件。可以将FTP任务用于下......
  • SQLServer 从xml 文件中提取节点数据到数据库中
    <?xmlversion="1.0"encoding="utf-8"?><!--editedwithXMLSpyv2010(http://www.altova.com)byfengshuai(founder)--><Root><Frame><Item><ID>0</ID><Nu......
  • SSIS_数据流转换(字词查找)
    字词查找转换将从转换输入列的文本中提取的字词与引用表中的字词进行匹配,然后计算出查找表中的字词在输入数据集中出现的次数,并将计数与引用表中的此字词一并写入转换输出的......
  • SSIS_数据流转换(行计数&派生列&排序)
    1.行计数转换行计数转换在行通过数据流时对行进行计数,并将最终计数结果存储在一个变量中。此转换有一个输入和一个输出。它不支持错误输出。行计数设置是在高级编辑器中设......
  • SSIS_数据流转换(Union All&合并联接&合并)
    UnionAll:与sql语言 UnionAll 一样,不用排序,上下合并多个表。UnionAll转换替代合并转换:输入输出无需排序,合并超过两个表合并联接:有左连接、内连接、完全连接,只能关联......
  • SSIS_数据流转换(查找)
    查找转换通过联接输入列中的数据和引用数据集中的列来执行查找。是完全匹配查找。本章功能:在源表中查找与字表能关联的所有源表记录。1.准备数据。源表tb_Main:字表tb_Sub:数......
  • Redis-单机数据库-数据库键空间
    Redis是一个键值对(key-valuepair)数据库服务器,服务器中的每个数据库都由一个 redis.h/redisDb 结构表示,其中, redisDb 结构的dict 字典保存了数据库中的所有键值对,......
  • VS2022 Visual Assist 小番茄 设置强调色透明度
    这个估计你们找不到位置小番茄的RGBA其实是RGB~A也就是不透明度所以正常要设定为FFRRGGBB即可字体透明但是正常不可设置懒得逆向VAX代码...建议everything直接搜A......