SQLServer导入Excel截断数据的解决办法
2019獨角獸企業重金招聘Python工程師標準>>>
使用SQL腳本把EXECL內容導入到MSSQL數據庫時提示出現提示返回了列 '[Microsoft.Jet.OLEDB.4.0].默認值' 的截斷數據,原長度618,截取長度510。怎么回事呢?后來發現原來是EXECL其中某列某行內容超過了255個字符。但是EXECl超過255字符長度依然能保存,為什么導入到MSSQL數據庫卻截字符呢?,F在暫且不論原理如何,先看看我的導入腳本。
? ? ? ?
--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$
在網上找了很多辦法,我使用對我最方便的解決辦法:
修改注冊表
操作系統為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。
修改字段類型
修改完注冊表后,執行SQL導數腳本已經可以導入,但是導入的表的字段類型為NTEXT,對于我要使用SQL拼湊語句非常不便,我便修改了該字段類型:
ALTER TABLE T_T1?alter column 字段名?varchar(max)
轉載于:https://my.oschina.net/skyfree/blog/261716
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的SQLServer导入Excel截断数据的解决办法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Word 2010中利用尾注添加参考文献
- 下一篇: linux cmake编译源码,linu