今天遇到了,隨手記錄一下。 sql server 存儲數據裡面 NVARCHAR 記錄中文的時候是 一個中文對應一個字元串長度,記錄英文也是一個字母一個長度 標點符號也是一樣。 VARCHAR 記錄中文的時候一個中文對應兩個字元串長度,記錄英文是一個字母長度,標點符號空格的沒測。 優缺點暫時不列,記 ...
今天遇到了,隨手記錄一下。
sql server 存儲數據裡面
NVARCHAR 記錄中文的時候是 一個中文對應一個字元串長度,記錄英文也是一個字母一個長度 標點符號也是一樣。
VARCHAR 記錄中文的時候一個中文對應兩個字元串長度,記錄英文是一個字母長度,標點符號空格的沒測。
優缺點暫時不列,記一下大致區別:
VARCHAR比NVARCHAR更加節省空間,但是一般是用在國外記錄英文上面會比較好。
如果國外安裝的語言包裡面沒有中文包 用VARCHAR存的中文會變成? 解決方案很簡單 在添加的時候加 ‘N (你記錄的數據)’ 就能解決了
不過這個方法對已經錄入的數據似乎沒有辦法 ,或許試一下SQL改變排序方式還有的救。
總體在國內用NVARCHAR會比較好,也比較方便吧。
這裡記錄一個可以線上計算字元串長度的網站方便使用:http://www.5ixuexiwang.com/str/length.php