博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQLServer导入Excel截断数据的解决办法
阅读量:5991 次
发布时间:2019-06-20

本文共 779 字,大约阅读时间需要 2 分钟。

hot3.png

使用SQL脚本把EXECL内容导入到MSSQL数据库时提示出现提示返回了列 '[Microsoft.Jet.OLEDB.4.0].默认值' 的截断数据,原长度618,截取长度510。怎么回事呢?后来发现原来是EXECL其中某列某行内容超过了255个字符。但是EXECl超过255字符长度依然能保存,为什么导入到MSSQL数据库却截字符呢。现在暂且不论原理如何,先看看我的导入脚本。

       

--EXECL导入MSSQL2008R2数据库脚本   

SELECT * into T_T1 FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',

'Data Source="E:\execl.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...abc$

在网上找了很多办法,我使用对我最方便的解决办法:

  1. 修改注册表

    操作系统为win7 64

    [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Jet\4.0\Engines\Excel] TypeGuessRows由8改为0。

    操作系统为win7 32

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel]TypeGuessRows由8改为0。

  2. 修改字段类型

    修改完注册表后,执行SQL导数脚本已经可以导入,但是导入的表的字段类型为NTEXT,对于我要使用SQL拼凑语句非常不便,我便修改了该字段类型:

    ALTER TABLE T_T1 alter column 字段名 varchar(max)

转载于:https://my.oschina.net/skyfree/blog/261716

你可能感兴趣的文章
mysql 远程访问
查看>>
网络编程及多线程编程(VC++)
查看>>
python字典中文显示的处理办法
查看>>
新手学习在Ubuntu 14.04搭建Javaweb网站(3)--下载Window客户端PuTTY
查看>>
一致性hash算法 - consistent hashing
查看>>
接口java.util.Map.Entry的使用
查看>>
FreeMarker | 取值篇
查看>>
《Linux0.11内核完全注释》读书笔记之内核启动方式总结
查看>>
Prefer Literal Syntax over the Equivalent methods
查看>>
安装 CAS 服务器
查看>>
U盘检测程序&文件递归
查看>>
画图小工具p图的方法
查看>>
GC策略&内存申请、对象衰老
查看>>
vim格式化代码
查看>>
mysql数据库时间字段CURRENT_TIME问题
查看>>
Ftp 下载和上传 指定文件夹内所有文件(包括文件夹,并且文件夹目录不变)...
查看>>
命令行里打 cd 简直是浪费生命
查看>>
40条技巧优化php代码
查看>>
简易Linux Mail Server 搭建 -- Sendmail 设置
查看>>
linux tomcat 80 端口不能访问
查看>>