用MS SqlServer2012进行数据导出时,使用的查询语句导出,但是出现了错误:

“发现 xx个未知的列类型转换
您只能保存此包“

点击列查看详细错误信息时,可以看到:

[源信息]
源位置: 192.168.1.97
源提供程序: SQLNCLI11
表: [查询]
列: ItemSize
列类型: 203
SSIS 类型: (类型未知...)
映射文件(到 SSIS 类型): C:\Program Files (x86)\Microsoft SQL Server\110\DTS\MappingFiles\MSSQLToSSIS10.XML

[目标信息]
目标位置: C:\Users\Administrator\Desktop\火星公司_测试_发货单_201705181134.xls
目标提供程序: Microsoft.Jet.OLEDB.4.0
表: `查询`
列: ItemSize
列类型: VarChar
SSIS 类型: Unicode 字符串 [DT_WSTR]
映射文件(到 SSIS 类型): C:\Program Files (x86)\Microsoft SQL Server\110\DTS\MappingFiles\JetToSSIS.xml

[转换步骤]
转换未知...
SSIS 转换文件: C:\Program Files (x86)\Microsoft SQL Server\110\DTS\binn\DtwTypeConversion.xml

在CSDN的一个帖子中查到,一些信息:

这是一个bug,这里解释了原因以及解决方案
https://connect.microsoft.com/SQLServer/feedback/details/775897/sql-server-import-and-export-wizard-does-not-recognise-varchar-and-nvarchar

上面链接中介绍:

描述

当输入检索通过一个查询使用SQL Server导入和导出向导在SQL Server 2012中的数据,VARCHAR类型被公认为是“200”而nvarchar类型“202”。这导致向导显示“审查”的数据类型的警告/错误类似于以下内容:14未知列类型转换(S)你只能拯救packagethis意味着数据传输不能执行和向导只能保存转移为ssis包的问题。似乎只出现在数据源查询-即“查询指定数据传输”中指定表复制或查询的SQL Server导入和导出向导部分。选择“复制数据从一个或多个表或视图”选项中指定表复制或查询部分似乎认识到varchar和nvarchar数据类型正确。

在品论中有人指出,可以将你的查询语句,创建成视图,然后用视图导出就正常了,我没有试过。

微软的工作人员说,上面的反馈重复,所以又发了一个链接:
https://connect.microsoft.com/sqlserver/feedback/details/772761/dtswizard-in-sql-2012-sp1-no-longer-recognizes-nvarchar-varchar-data-types-when-source-is-a-query
以上链接里面,似乎提示微软已经修复了该bug;
但是我没看到怎么修复的,我仍然有该问题。 有人指出可以看看这个链接:
https://social.msdn.microsoft.com/Forums/sqlserver/en-us/97ff1f01-c02a-4c9a-b867-8eaecc464cfb/2012-sp1-no-longer-recognizes-common-data-types?forum=sqlintegrationservices 我看了不行。 还好我装了两个客户端,最后我用我的sqlserver2008解决了问题,但是解决的并不彻底啊。

SQL Server2012使用导入和导出向导时,用sql语句作为数据源,出现数据源类型会变成202或者203的更多相关文章

  1. 连接到 PostgreSQL 数据源(SQL Server 导入和导出向导)

    本主题向你介绍如何从 SQL Server 导入和导出向导的“选择数据源”页或“选择目标”页连接到 PostgreSQL 数据源. 重要 连接到 PostgreSQL 数据库的详细需求和先决条件不在此 ...

  2. Visual Basic 2012 借助DataGridView控件将SQL server2012 数据导入到Excel 2010

    摘  要: SQL Server 2012 数据和Excel 2010之间的连接和数据的传输,本篇文章主要针对的是SQL Server 2012 数据导入到Excel 2010文件中.Excel软件对 ...

  3. PL/SQL简单使用——导入、导出数据表

    1.使用PL/SQL导出.导入表 在使用PL/SQL操作oracle数据库时,经常使用的一个操作就是将自己写的数据表导出,或者想把他人的数据表导入到自己的数据库中.虽然是很简单的操作,但自己之前一直出 ...

  4. SQL Server 2008导入、导出数据库

    SQL Server 2008数据库的导入.导出和Mysql的导出还有一定的区别,刚开始的时候完全摸不到方向,利用Microsoft SQL Server Management Studio进行导入. ...

  5. SQL Server 将查询结果导出插入(insert)语句的简单方式

    转自 http://blog.csdn.net/danny_style/article/details/45166391 1.首先将查询结果添加到一个原数据库中不存在的表,表名随意命名. 例:SELE ...

  6. sql server 2008导入和导出sql文件

    导出表数据和表结构sql文件 在日常的开发过程中,经常需要导出某个数据库中,某些表数据:或者,需要对某个表的结构,数据进行修改的时候,就需要在数据库中导出表的sql结构,包括该表的建表语句和数据存储语 ...

  7. SQL Server 数据导入与导出

    1. BCP 命令 用法: bcp {dbtable | query} {in | out | queryout | format} 数据文件 [-m 最大错误数] [-f 格式化文件] [-e 错误 ...

  8. 数据库SQL Server2012笔记(七)——java 程序操作sql server

    1.crud(增删改查)介绍:create/retrieve/update/delete 2.JDBC介绍 1)JDBC(java database connectivity,java数据库连接) 2 ...

  9. .Net 导出Excel时设置单元格的格式为文本类型

    <td style= 'vnd.ms-excel.numberformat:@ ' align='right'>" & Format(Val(rowTitle.Item( ...

随机推荐

  1. 2019年5~6月训练记录(更新ing)

    前言 \(ZJOI\)正式结束了. 但期中考试只考了年级\(216\),退役既视感... 于是就被抓回去补文化课了. 下半个学期可能要以文化课为主了吧! 但周三.周日应该还是会正常参加训练的,但其他时 ...

  2. python_50_函数与函数式编程

    import time def logger(): """追加写""" time_format='%Y-%m-%d %X'#年-月-日 小时 ...

  3. 在主机端和设备端进行”incrementArray“并对结果进行比较

    实验思想: 在主机端将数据初始化后传输到设备端,设备端和主机端进行同样的操作对数据加1,然后将设备端的结果传输到主机,最后核对主机端的计算结果和设备端的计算结果是否一直. // incrementAr ...

  4. ajax 的 promise

    $.when().done().fail() $.when($.ajax("test1.html"),$.ajax("test2.html")).done(fu ...

  5. 大蟒蛇肚子的"风暴"

    遇到了数据库连接数不足的问题,一般情况下会预留一些会话增加的情况,但在一些特殊情况下如连接风暴(logon storm), 如果在监听中没有做rate限流,对数据库来说巨大的冲击可能会导致数据库Han ...

  6. sendmail安装与配置

    一.安装sendmail与mail 1.安装sendmail:  1) centos下可以安装命令:yum -y install sendmail 2) 安装完后启动sendmail命令:servic ...

  7. centos7上基于kubernetes的docker集群管理

    kubernetes和docker的作用这里就不作介绍了,直接进入主题. 本文的目的是搭建docker集群,并使用kubernetes管理它们. 文中的软件环境除了kubernetes和docker, ...

  8. k8s的pv和pvc简述

    pvc:资源需要指定:1.accessMode:访问模型:对象列表:    ReadWriteOnce – the volume can be mounted as read-write by a s ...

  9. JavaScript 循环

    for循环:  如果您希望一遍又一遍运行相同的代码,并且每次的值都不同,那么使用循环是很方便的. 我们可以这样输出数组的值: document.write(cars[0] + "<br ...

  10. Python周末21天笔记

    模块一: 基础相互据类型之间的相互转换 1. 字符串str 与 列表 list 与字典 dict 以及 元祖tuple的转换 例一: 把字典的key和value的值取出来,按照顺序存入到list中 d ...