SQL SERVER中文亂碼解釋~

run sp_help "your table" to get the collation setting for the column.  In order to store chinese correctly, you should set the collation be:
    Chinese_PRC_CI_AS
 or Chinese_Stoke_CI_AS

char/varchar data type is ANSI char which must define a code page. If you set the collation be SQL_Latin1_General_CP_CI_AS, it can only store latin characters. In order to store chinese character in a char column, you have to set the collation be  Chinese_PRC_CI_AS  or Chinese_Stoke_CI_AS which has a chinese code page defined.

nchar/nvarchar collumn is different, you can store any Unicode character include enlish, chinese, japanese in one column.

In term of input chinese character, the character constant will use database's collation. Thus, if the database's collation is not chinese collation, there is no way to input chinese char/varchar data, such as 
'中文' will be treated as '??'.  But for nvarchar/ncar, you can input it
on any collation. such as  N'中文' will be treated as two unicode chars

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章