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