Excel 匯入 SQL Server 步驟:
1. 在登錄檔中按照以下方法設定 Excel 的文字長度。如果不設定, 會導致列中超過255個字元的記錄被截斷;
如果是:Jet引擎.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Access Connectivity Engine\Engines\Excel
然後找到 TypeGuessRows這個項.預設為8的.修改為0.
2. 在SQL Server中啟用:
--使用前,啟用Ad Hoc Distributed Queries:
exec sp_configure 'show advanced options',1
reconfigure
exec sp_configure 'Ad Hoc Distributed Queries',1
reconfigure
--使用完成後,關閉Ad Hoc Distributed Queries:
exec sp_configure 'Ad Hoc Distributed Queries',0
reconfigure
exec sp_configure 'show advanced options',0
reconfigure
3. 將Excel 中的檔案插入到 SQL Server 中
--直接查詢Excel
SELECT * into TempTable FROM OPENROWSET('MICROSOFT.JET.OLEDB.4.0', 'Excel 8.0;HDR=YES;DATABASE=d:\1.xls ',sheet1$)
--HDR=YES 有兩個值:YES/NO,表示第一行是否欄位名,預設是YES,第一行是欄位名
--IMEX=1 解決數字與字元混合時,識別不正常的情況.
值得注意的是:
1. 記住:如果你在Excel中是 sheet1 , 在上面的語句中還是得寫 sheet1$
2. 如果你直接複製某段程式碼過去執行不了, 很可能是中間多了空格什麼的, 有些網站複製過來會多些空格。
3. 還是在本地連線執行查詢xls吧, 外部連線查詢xls可能會有錯誤。
4. 如果你沒有關閉Excel就來查詢xls, 會報以下錯誤:
Msg 7399, Level 16, State 1, Line 1
連結伺服器 "(null)" 的 OLE DB 訪問介面 "MICROSOFT.JET.OLEDB.4.0" 報錯。提供程式未給出有關錯誤的任何資訊。
Msg 7303, Level 16, State 1, Line 1
無法初始化連結伺服器 "(null)" 的 OLE DB 訪問介面 "MICROSOFT.JET.OLEDB.4.0" 的資料來源物件。
4. 雖然採取了這麼多措施, 但還是要防止出現截斷, 如果資料量少於1000條,手工檢查一下全部資料(看一下頭和尾就好)。如果資料量大,至少要檢視LEN大於255的所有記錄。
5. 將臨時表的的欄位去掉回車,換行,Tab鍵, 左右空格。
UPDATE Table1 SET ICD=LTRIM(RTRIM(replace(replace(replace(CONVERT(VARCHAR(max),ICD),char(10),''),char(13),''),CHAR(9),'')))
6. 更新資料表。手工查檢, 如果資料量不超過1000條, 應該每一條都測試;
7. 主要的幾點容易出錯的地方:
- 在初次測試時, 應該測試所有的較短的單條資料, 對於較長的資料, 測試最尾一條和中間一條Code即可
- 有些資料需要後補0, 如: 995 ==> 995.0
- 有些資料需要前補0, 如: 78.11 ==> 078.11
- 有些資料中間有空格, 如:7945 V77.0, 其實應該是兩條資料, 應該用逗號讓兩者分開。
- 必需測試每一條資料。
相關文章
- Excel資料匯入Sql Server,部分數字為NullExcelSQLServerNull
- phpExcel實現Excel資料的匯入匯出(全步驟詳細解析)PHPExcel
- .sql檔案匯入到sql server中SQLServer
- SQL Server 匯出Excel有換行的解決方法SQLServerExcel
- vue匯出excel表格步驟以及易出錯點VueExcel
- 使用Oracle SQL Developer匯入Excel資料OracleSQLDeveloperExcel
- sql server匯入mysql,使用工具SQLyogServerMySql
- Vue element-ui 裡面的table匯出excel表格 步驟VueUIExcel
- SQL Server 遷移至MySQL 關鍵步驟的梳理總結ServerMySql
- 電腦製作excel表格全步驟 excel製作表格的步驟教程Excel
- vue excel匯入匯出VueExcel
- SQL Server 資料庫查詢死鎖的處理步驟SQLServer資料庫
- excel匯入工具Excel
- Angular Excel 匯入與匯出AngularExcel
- Excel匯入匯出神器(Java)ExcelJava
- 將資料匯入kudu表(建立臨時hive表,從hive匯入kudu)步驟Hive
- 匯入excel檔案Excel
- Maatwebsite\Excel匯入用法WebExcel
- maatwebsite/excel": "^3.1 匯入excel 問題WebExcel
- navlicat 匯入匯出SQLSQL
- 關於SQL server2008除錯儲存過程的完整步驟SQLServer除錯儲存過程
- realvnc server,realvnc server的9個安裝步驟VNCServer
- vue + element + 匯入、匯出excel表格VueExcel
- kxcel, 方便匯入和匯出 ExcelExcel
- SQL Server 2014 匯出資料字典SQLServer
- 網站搬家時匯入SQL Server備份檔案失敗網站SQLServer
- maatwebsite/excel3.1 匯入Excel詳解WebExcel
- Laravel box/spout 匯入 ExcelLaravelExcel
- Excel 表匯入資料Excel
- Oracle 資料匯入ExcelOracleExcel
- java 匯入到EXCEL表格JavaExcel
- 如何使用 JavaScript 匯入和匯出 ExcelJavaScriptExcel
- EasyPoi, Excel資料的匯入匯出Excel
- Vue + Element 實現匯入匯出ExcelVueExcel
- 【輪子】EasyExcel,簡易版匯入、匯入 Excel、CSVExcel
- 如何匯入甜美粉色系濾鏡LR的具體操作步驟
- 優化 SQL 語句的步驟優化SQL
- 用SQL建立索引的方法步驟SQL索引
- 前端實現Excel匯入和匯出功能前端Excel