输出为XML的两种方法
1.用数据流, 将平面文件作为DES输出
  在SQL里将要输出的数据查询成为单列的字符串: SELECT (SELECT * FROM A FOR XML ROOT('A'),ELEMENTS) AS A
  转换该列的数据类型为 NTEXT
  用平面文件DES接收转换后的列,并保存为.xml格式(而非.txt)

2.用控制流, 在script tast用字节流输出
  在执行SQL里将要输出的数据查询为XML格式 SELECT * FROM A FOR XML ROOT('A'),ELEMENTS
  用变量接收保存该XML
  在script task里,用字节流的方式把XML写到文件(写的路径也可以用变量传递)
  写入文件时,默认会加上<ROOT>节点,可以用字符串处理的repace方法将其替换为空串

3.不使用 SSIS,直接通过 SQL也可以输出到文件
      -- XP_CMDSHELL 默认情况处于安全考虑,该功能是关闭的,需要用sp_configure设置为开启,用完之后再设置为关闭
  EXEC XP_CMDSHELL 'BCP "SELECT(SELECT TOP 2 * FROM [AdventureWorks2012].[Sales].[SalesOrderDetail]
    FOR XML RAW(''SalesOrderDetail''),ROOT(''SalesOrder''),ELEMENTS )AS XML_Order " QUERYOUT "D:\text.xml" -c -T'

输入XML解析数据到数据库
1.数据流中,用XML作为源
  首先需要确定XML是一个标准文件,能够被SSIS解析
  需要关于XML描述的XSD文件(可以根据已有的xml生成一个XSD文件)
  DES表的字段一般都可以用nvarchar接收; 一般默认xml输出的字符串类型的长度为unicode 255

  标签里带有“xmlns”命名空间的XML文件,可以自己写一个XSLT文件,用XSLT文件规定的格式,重新生成不带命名空间的XML文件
    http://www.cnblogs.com/chenxizhang/archive/2009/06/20/1507287.html

2.XML字符串
  比如,基于SOAP协议的WebService,用WSDL传递来的XML字符串
  如果XML字符串的标签里带有“xmlns”命名空间,可以考虑用SQL解析(先将XML保存到临时表,再用SQL的replace方法去掉xmlns,然后用SQL解析)

SSIS中xml的输入输出的更多相关文章

  1. 微软BI 之SSIS 系列 - 在 SSIS 中使用 Web Service 以及 XML 解析

    开篇介绍 Web Service 的用途非常广几乎无处不在,像各大门户网站上的天气预报使用到的第三方 Web Service API,像手机客户端和服务器端的交互等都可以通过事先设计好的 Web Se ...

  2. 转载SSIS中的容器和数据流—数据转换(Transformations)续

    数据挖掘请求 数据挖掘任务是SSIS中一个很重要的任务,它的思想来源于一些算法.数据挖掘请求运行数据挖掘请求,并将结果输出到数据流.它还可以添加一些预测新列,一些应用场合如下列举: 根据已知的一些列, ...

  3. 在SSIS中使用自定义的DLL文件

    原文:在SSIS中使用自定义的DLL文件 步骤1.开发dll(需要签名) using System;using System.Collections.Generic;using System.Text ...

  4. [转]在SSIS中,使用“包配置”时的常见错误与解析

    本文转自:http://www.cnblogs.com/invinboy/archive/2008/05/26/1034312.html 在以前的DTS中,在包的开发.测试.发布迁移过程中你必须手动的 ...

  5. [转]SSIS中的脚本—脚本任务

    本文转自:http://www.cnblogs.com/tylerdonet/archive/2011/09/16/2179123.html 脚本任务主要用来控制数据流,当现有的控制流 任务不能满足复 ...

  6. 关于SSIS中解密FTP字符串的方法

    FTP(File Transfer Protocol),是文件传输协议的简称.用于Internet上的控制文件的双向传输.同时,它也是一个应用程序(Application).用户可以通过它把自己的PC ...

  7. excel 导入数据库 / SSIS 中 excel data source --64位excel 版本不支持-- solution

    当本地安装的excel(2013版) 是64-bit时:出现的以下两种错误 解决: 1. excel 导入数据库 , 如果文件是2007则会出现:“The 'Microsoft.ACE.OLEDB.1 ...

  8. 2016 - 1- 23 iOS中xml解析 (!!!!!!!有坑要解决!!!!!!)

    一: iOS中xml解析的几种方式简介 1.官方原生 NSXMLParser :SAX方式解析,使用起来比较简单 2.第三方框架 libxml2 :纯C 同时支持DOM与SAX GDataXML: D ...

  9. Java中XML格式的字符串4读取方式的简单比较

    Java中XML格式的字符串4读取方式的简单比较 1.java自带的DOM解析. import java.io.StringReader; import javax.xml.parsers.Docum ...

随机推荐

  1. 史上最全的大厂Mysql面试题在这里!

    1.MySQL的复制原理以及流程 基本原理流程,3个线程以及之间的关联: 主:binlog线程——记录下所有改变了数据库数据的语句,放进master上的binlog中: 从:io线程——在使用star ...

  2. 一次apk打开时报内存溢出错误,故写下内存溢出的各种原因和解决方法

    原转载:https://blog.csdn.net/cp_panda_5/article/details/79613870 正文内容: 对于JVM的内存写过的文章已经有点多了,而且有点烂了,不过说那么 ...

  3. QT读取xml配置文件

    //获取字符串字段 QString ConfigHelper::GetStringConfigValue(QString str) { if(str == "InitDeviceNo&quo ...

  4. Git 学习总结

    概况 CVS 及 SVN 都是集中式的版本控制系统,而 Git 是分布式版本控制系统. 集中式版本控制系统最大的毛病就是必须联网才能工作: 分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是 ...

  5. PostgreSQL 10.7 linux 主从配置

    PostgreSQL 10.7 主从安装 硬件环境 云服务商:华为云 Linux: CentOS7.1 工具:Xshell Xftp IP:114.115.251.168 Port: 5432 543 ...

  6. How to fix corrupt HDFS FIles

    1 问题描述 HDFS在机器断电或意外崩溃的情况下,有可能出现正在写的数据(例如保存在DataNode内存的数据等)丢失的问题.再次重启HDFS后,发现hdfs无法启动,查看日志后发现,一直处于安全模 ...

  7. 再谈AbstractQueuedSynchronizer1:独占模式

    关于AbstractQueuedSynchronizer JDK1.5之后引入了并发包java.util.concurrent,大大提高了Java程序的并发性能.关于java.util.concurr ...

  8. 从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 二十║Vue基础终篇:传值+组件+项目说明

    缘起 新的一天又开始啦,大家也应该看到我的标题了,是滴,Vue基础基本就到这里了,咱们回头看看这一路,如果你都看了,并且都会写了,那么现在你就可以自己写一个Demo了,如果再了解一点路由,ajax请求 ...

  9. [截稿日期] 人机交互与普适计算方向的A、B类国际会议

    CCF推荐的人机交互与普适计算方向的A.B类会议截稿日期 一.A类 序号 会议简称 会议全称 出版社   截稿日期 网址 1 CHI ACM Conference on Human Factors i ...

  10. Spring Boot分布式系统实践【基础模块构建3.3】注解轻松实现操作日志记录

    日志注解 前言 spring切面的编程,spring中事物处理.日志记录常常与pointcut相结合 * * Pointcut 是指那些方法需要被执行"AOP",是由"P ...