解決數(shù)據(jù)庫保存中文亂碼問題
輸入中文時(shí)數(shù)據(jù)庫中顯示為亂碼,提供以下兩種解決方案:
1.修改字段類型
varchar是采用單字節(jié)存數(shù)
nvarchar采用的是unico編碼,存儲兩個(gè)字節(jié)
一個(gè)英文字母存varchar格式,占一個(gè)字節(jié);存nvarchar占2個(gè)字節(jié)。
varchar也可以存儲中文,如果系統(tǒng)不支持中文,就會出現(xiàn)亂碼(??)。
nvarchar的另一個(gè)好處是在判斷字符串的時(shí)候可以不考慮中英文差別。
在存儲代價(jià)低廉的情況下,推薦使用nvarchar,在確保不會出現(xiàn)中文的情況下可以采用varchar。
在語句中使用N'',N表示unicode的意思,表示按unicode進(jìn)行編碼.
如:
insert into UserInfo(UserName) values (N'XXXX') |
2.修改數(shù)據(jù)庫的排序規(guī)則解決問題
假設(shè)數(shù)據(jù)庫名為testDB
alter database testDB collate Chinese_PRC_CI_AS; |
執(zhí)行成功的前提是要關(guān)閉其它連接
posted on 2013-08-30 09:30 順其自然EVO 閱讀(742) 評論(0) 編輯 收藏 所屬分類: 數(shù)據(jù)庫