SSIS 执行变量中的脚步输出列顺序与SQL查询列顺序不同-阿里云开发者社区

开发者社区> 科技小能手> 正文

SSIS 执行变量中的脚步输出列顺序与SQL查询列顺序不同

简介:
+关注继续查看

这个问题是朋友遇到的,做一个SSIS的程序将数据导入到txt。然后再用Oracle的工具导入到Oracle。但是在SSIS中执行变量脚步的时候,发现输出的列名称跟查询的列名称完全不同。比如Schema_id在查询的第三列,但是输出的时候到了第6列。

如图:

SouthEast

SouthEast

因为txt的格式已经定义好了,而且解析的程序也已经做好,所以如果txt列顺序有问题就会影响到后面的操作。查了一下好像没有地方可以调整输出量的顺序。

当然这个问题可以通过调整目标列的顺序解决,但是需要手动的调整,如果列多了比较麻烦。

另外测试了一下直接从Table或者命令查询就不会有这个问题,感觉微软在解析变量脚步的时候没有考虑到排序。

之后发现一篇Blog也提到这个问题:SSIS 系列 - 变量查询语句引起列输出顺序不一致的解决方法

可以用下面的办法:

解决的方法虽然也需要人工手动操作,但是比起在文件管理器中删除新建要容易的多,回到数据源的列,先取消全部可用的列。

04123629-3f61655442484c709ac685f84926245

然后对照查询语句列的顺序,依次选中需要的列,比如第一个先勾选 BusinessEntityID,第二个再勾选 NationalIDNumber,后面根据需要按顺序依次勾选。

04123918-5f2e8fd7dd574c8f95a229941ff3921

按顺序选择完成之后,这样所有的列又按照查询顺序输出了。

04123959-0abd2d00a45f46ca9c4f35f0840cdb6

需要重新建立新的文件链接管理器,这样可以避免之前的缓存影响,再来看管理器中的列顺序也是对应一致的,没有问题了。

04121041-06b43bb26f32435987945d7ccbdadfc

 

 

 


本文转自 lzf328 51CTO博客,原文链接:

http://blog.51cto.com/lzf328/1335777

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
我写了一个脚本,可在“任意”服务器上执行命令!
冰河之前维护着上千台服务器组成的服务器集群,如果每次需要在服务器上执行命令的时候,都要手动登录每台服务器进行操作的话,那也太麻烦了。你想想,如果在上千台服务器的集群中,每台服务器中只需要简单的执行一个相同的命令,那别说执行命令了,就是让你依次手动登录上千台服务器,那也够你受的了。估计依次登录上千台服务器,给你三天时间你可能都登不完,那怎么办呢?有没有什么好的方法来解决这个问题呢?
20 0
基于Renascence架构的SQL查询引擎设计
基于Renascence架构的sqlite查询优化 sqlite查询优化方案是一开始是在Hw时设计的,但当时只实现一些简单case,并未完成sql的普遍支持。后面考虑到这可以做为 Renascence 架构的一个实验场景,因此将其方案做了一番修改,代码也重写了一遍,现在做成一个能支持普通sql查询的demo。 sqlite架构 参考:http://wiki.dzsc.c
1394 0
SQL语句中不同的连接JOIN
原文:SQL语句中不同的连接JOIN 为了从两个表中获取数据,我们有时会用JOIN将两个表连接起来。通常有以下几种连接方式: JOIN  or  INNER JOIN(内连接) : 这两个是相同的,要求两边表同时有对应的数据,返回行,任何一边缺失数据就不显示。
673 0
Sql查询原理与Select执行顺序(详细)
原文地址:点击打开链接 一切都是为了性能,一切都是为了业务 一、查询的逻辑执行顺序 (1) FROM left_table (3) join_type JOIN right_table (2) ON join_condition (4) WHERE where_condition (5) GROUP BY group_by_list (6) WITH {cube | rollup} (7
3682 0
同样是查询语言,它和 SQL 竟然有这么多不同
这篇文章将介绍图数据库 Nebula Graph 的查询语言 nGQL 和 SQL 的区别。
162 0
UMI+DVA根据开发环境和生产环境不同动态加载变量
你有没有遇到过这样的情况!比如你们有四种(或更多)环境:开发环境(本地调式代码环境)、测试环境(脏数据环境)、预生产环境(无限接近生产环境)、生产环境(正式环境或线上环境)等等环境。而对于不同环境你的静态资源host地址或者你的用户id等等可能是不一样的
81 0
23706
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载