sql nvarchar類型和varchar類型存儲中文字符長度


    今天遇到了,隨手記錄一下。
   sql server 存儲數據里面 

          NVARCHAR 記錄中文的時候是 一個中文對應一個字符串長度,記錄英文也是一個字母一個長度 標點符號也是一樣
          VARCHAR 記錄中文的時候一個中文對應兩個字符串長度,記錄英文是一個字母長度,標點符號空格的沒測。


    優缺點暫時不列,記一下大致區別:

          VARCHAR比NVARCHAR更加節省空間,但是一般是用在國外記錄英文上面會比較好。

           如果國外安裝的語言包里面沒有中文包 用VARCHAR存的中文會變成? 解決方案很簡單 在添加的時候加 ‘N (你記錄的數據)’ 就能解決了
   不過這個方法對已經錄入的數據似乎沒有辦法 ,或許試一下SQL改變排序方式還有的救。

          總體在國內用NVARCHAR會比較好,也比較方便吧。

 

 

    這里記錄一個可以在線計算字符串長度的網站方便使用:http://www.5ixuexiwang.com/str/length.php


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM