程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> 更多數據庫知識 >> 格式導致的Excel導入sql出現異常的解決方法

格式導致的Excel導入sql出現異常的解決方法

編輯:更多數據庫知識

本來程序是正常運行的,有時候會因為用戶的excel文檔沒有按要求的格式來做,才會出現一些異常情況。本以為這次也是一樣,後來拿到數據一看,並沒有發現什麼異常,而且自己又照著做了一些數據,竟然也會出現異常,只好懷疑是自己的程序有問題了。

常言說的好,最難找的是最後一個錯誤,這話確實不錯。我幾乎動用了我所掌握的各種手段,程序上真的沒辦法找出有啥問題了。在一個問題上折騰久了,浪費時間不說,還容易讓自己的情緒低落。到後來,還是轉去懷疑用戶的數據有問題,無意中做了一下格式調整,竟然發現異常不見了。

Excel的單元格格式設置十分豐富,數據一旦被格式化,那你所看到可能已經不是廬山真面目了。比如貨幣格式,數據本身只是一串數字,並不會包含貨幣符號。

在我這個程序中,有一列數據為編碼,可能是字母和數字的混合,也可能是純數字,正常情況下,應該設置成文本格式,可能因為純數字在這種情況下會有一個錯誤提示,也就是在單元格旁邊出現了一個黃色的感歎號,用戶大概覺得不對,就設置成了郵政編碼這種特殊格式,數據看起來沒啥變化,但程序在識別的時候就出現了異常。還有一個字段是月份,程序要求在一位數前補0,如果格式設置為數字,前面的0就沒有了,所以必須設置為文本。如果自定義為:00,雖然在excel下顯示的數字和想要的一樣,但程序在處理時會當成一個數字處理,結果也會不符合要求。

總結一下,對於要導入到數據庫的excel數據,不要做格式化處理,保持原始的字符或數字格式是最明智的選擇。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved