`
yaozuodaoforfly
  • 浏览: 119067 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Excel 导入 Sql Server出错——“文本被截断,或者一个或多个字符在目标代码页中没有匹配项”错误的解决

 
阅读更多
有人说应该先转成Access, 再转到Sql Server。 其实用处并不大, 要截断的还是被截断了。

原因是,SQL Server的导入导出为了确定数据表的字段类型,取excel文件的前8行来判别。如果前8条是少于255的字符串,则设成nvarchar(255)类型,但如果Excel后面的记录中有长度超过255的,导入时就会出错。即使在导入设置映射时调整了该字段的长度也不行。
解决的办法是改注册表
如果是:Jet引擎.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel
如果是:ACE引擎.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Access Connectivity Engine\Engines\Excel
然后找到 TypeGuessRows这个项.默认为8的.修改为0.

原文地址:http://soft-app.iteye.com/blog/1360505
分享到:
评论

相关推荐

    Excel导入数据库时出现的文本截断问题解决方案

    转换操作返回状态值4和状态文本“文本被截断,或者一个或多个字符在目标代码页中没有匹配项。””。这表明数据超过了目标列的长度限制。 为了解决这个问题,有几种方法可以尝试: 1. **调整数据库字段长度**:检查...

    bcp导库报错 错误字符串数据,右截位

    本文将针对一个常见的问题——使用`bcp`工具导入文本文件到数据库时报出的“错误字符串数据,右截位”这一错误进行详细解析,并提供相应的解决策略。 #### 一、错误概述 在使用`bcp`命令行工具导入数据时,如果...

    SQL Server 2005 DTS导入平面数据出现错误解决方案

    1. 错误 0xc02020a1: 这个错误提示数据转换失败,因为列“列2”的数据转换返回状态值4,意味着数据被截断,或者目标代码页中找不到匹配的字符。这通常发生在字符串数据无法适应目标列的宽度时。 2. 错误 0xc020902a...

    DB2错误代码SQL返回码信息对照

    - **因为GRANTEE已经拥有这些特权,所以一个或更多的特权被忽略** (SQLCOD: +562, SQLSTAT: 01560) - 如果受让人已经拥有特权,则再次授予将被忽略。 - **模式名指定了不止一次** (SQLCOD: +585, SQLSTAT: 01625)...

    DB2错误代码对照表

    2. SQL01xxx: SQL 语句成功完成,但是有警告 - 这类错误代码表示SQL语句执行成功,但可能存在某些警告情况,比如数据可能已被截断或者存在不匹配的数据类型。 3. SQL01201545: 未限定的列名被解释为一个有相互关系的...

    SQL错误状态的提示信息

    - **01657 一次只能在一个数据库中生效**:表示一次只能在一个数据库中生效。 - **01667 不能使用远程表参与本地查询**:表示不能使用远程表参与本地查询。 - **01670 缺少必需的资源**:表示缺少执行操作所必需的...

    DB2 SQL错误西信息查询

    本文将深入解析DB2中的SQLSTATE错误代码,帮助读者更好地理解和解决DB2数据库操作中出现的问题。 #### 二、SQLSTATE概述 SQLSTATE是一种用于描述SQL语句执行状态的标准代码。它由五位字符组成,每一位或每两位都有...

    BD2在主机中的错误代码详解

    ### DB2在主机中的错误代码详解 在大型机环境下,DB2作为一款广泛使用的数据库管理系统,其稳定性和性能是企业级应用的关键。然而,在实际操作过程中,遇到各种错误代码是在所难免的。本文将深入解析DB2在主机环境...

    使用SqlBulkCopy时应注意Sqlserver表中使用缺省值的列

    SqlBulkCopy是一种高效的方法,它允许开发者快速地将大量数据从一种数据源(如CSV文件)批量导入到SQL Server数据库中,但如果不正确处理,可能会引发错误。 首先,我们需要理解错误提示"来自数据源的 String 类型...

    DB2错误代码.doc

    为了帮助开发者和DB2用户更好地理解并解决这些错误,本文将详细解析DB2中的错误代码——SQLSTATE消息。SQLSTATE是一组五字符的代码,用于描述特定SQL操作的状态。本文主要介绍了不同类别的SQLSTATE值及其含义,帮助...

    Extraor.Util.Data.zip

    在这个场景中,我们看到一个名为"Extraor.Util.Data.zip"的压缩包,它涉及到如何将Excel数据有效地导入到MSSql(Microsoft SQL Server)数据库中。这个过程通常涉及到数据的预处理、数据类型匹配以及使用特定的工具...

    db2代码错误大全

    38. **SQLCODE +562**: 一个或多个权限因GRANTEE已经拥有而被忽略,意味着重复授权。 39. **SQLCODE +585**: 模式名被多次指定,可能是因为代码中的语法错误。 40. **SQLCODE +599**: 长字符数据类型(BLOB、CLOB和...

    SQL Server作业报错特殊案例分析

    在SQL Server中,如果允许截断,数据可以被截断到可以插入的长度,否则就会报错。 针对这个问题,首先需要检查涉及的SQL语句以及相关的表和列。比较字符串的实际长度和目标列的最大长度,确认是否有需要调整的数据...

    DB2错误解决手册

    - **01004** - **字符串值被截断**:当试图将一个较长的字符串赋值给一个较短的字段时,字符串会被截断。这可能会影响数据的准确性。 - **01005** - **SQLDA中的条目数不够**:SQLDA(SQL描述数组)是用于描述结果集...

    DB2异常SQLCODE信息

    - **+23701594**:期望得到一个特定类型的值,但在SQLVAR目标中找到了不匹配的类型,可能是数据类型转换问题。 - **+23801005**:与`+23601005`类似,但特指在处理LOB数据类型时出现的错误。 - **+23901005**:与`+...

    DB2错误代码

    当SQL语句中使用了未明确指定所属表的列名,而该列名在多个表中都存在时,DB2会尝试根据上下文解析这个引用。如果解析失败,将抛出此错误。 ### 动态SQL语句用分号结束 (+098, 01568) 在动态SQL语句中,如果语句以...

    DB2常见sql异常负数码解释

    **Description:** 如果在一个语句中多次指定了同一个模式名,则会返回此警告。 ##### 42. 没有为长字符数据类型(BLOB,CLOB和DBCLOB)建立比较函数 **SQL Code:** `+599` **SQL State:** `0159` **Description:** ...

    DB2 错误代码

    - **0100D**:关闭的游标已在链中的下一个结果集上重新打开。 - **0100E**:生成的过程大于允许的最大结果集数目。只有第一个整数结果集已经返回到调用者。 - **01503**:结果列数比提供的主机变量数大。 - **...

    DB2全部错误代码整理

    DB2数据库系统在运行过程中可能会遇到各种错误,这些错误通常以SQLCODE和SQLSTATE的形式表现出来。SQLCODE是一个整数值,通常负值表示错误,零表示成功,正值表示警告。SQLSTATE是一个五位的字母数字代码,提供了...

Global site tag (gtag.js) - Google Analytics