zoukankan      html  css  js  c++  java
  • SQLserver导入Excel数据长度限制报错

    先介绍一下写该博客的背景:由于最近在使用腾讯问卷统计健康信息,导出的Excel表中,备注字段填报的数据过长,最长达到346,而在执行Excel导入表操作时,会出现数据被截断错误,导致数据导入失败。

    百度搜索原因:发现大多数给出的原因是在导入数据过程中,生成的临时表会根据Excel的前8行或者前3行确定数据类型,所以后面数据长度过长,导入失败。

    在初始建表时给字段设置长度限制也还是报错。

    第一种方法:直接从任务》导入数据》选择Excel数据源,这种方式长度超过255 数据无法导入成功

    第二种方法:使用SQL语句导入数据

    需要说明:导入的Excel数据字段与目标数据表的字段一一对应。

    ------------------首先进行如下设置----------------------

    exec sp_configure 'show advanced options',1
    reconfigure
    exec sp_configure 'Ad Hoc Distributed Queries',1
    reconfigure
    EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1
    EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1

    -------------------------导入数据语句---------------------

    insert into txwj.dbo.yswj1
    SELECT * FROM OpenDataSource
    ( 'Microsoft.ACE.OLEDB.12.0','Data Source="C:UsersAdministratorDesktop111111.xlsx";User ID=Admin;Password=;Extended properties=Excel 5.0')...[sheet2$]

    经本人验证,Excel文件中存在数据超过255长度的,最终文件可以导入成功,但是超过256的字段数据会被截断,只留下一部分(例如我测试的数据长度是346最后导入之后剩下239)

    目前将Excel数据导入SQLserver无法解决长度超过256的问题,问题待解决。

     

  • 相关阅读:
    图片上传-下载-删除等图片管理的若干经验总结3-单一业务场景的完整解决方案
    图片上传-下载-删除等图片管理的若干经验总结2
    HDU 1195 Open the Lock
    HDU 1690 Bus System
    HDU 2647 Reward
    HDU 2680 Choose the best route
    HDU 1596 find the safest road
    POJ 1904 King's Quest
    CDOJ 889 Battle for Silver
    CDOJ 888 Absurdistan Roads
  • 原文地址:https://www.cnblogs.com/liuffblog/p/12981027.html
Copyright © 2011-2022 走看看