很多使用數據庫的人都知道,在安裝SQLServer數據庫是,如果設置不當就會出現一些中文亂碼。主要原因是,很多人在使用默認安裝系統時,一般不會考慮到默認排序的規則是拉丁文的排序規則,只是點擊下一步,在安裝完成之后,就會發現在使用SQL版的過程中,總是會出現一些亂碼。那么SQLServer數據庫如何解決中文亂碼問題?方法有哪些?
問題:創建新數據庫,存入中文顯示亂碼?
原因分析:SQL版的亂碼問題還是出現在SQL SERVER的安裝設置上。默認安裝時系統默認的排序規則是拉丁文的排序規則,但一般人在安裝時沒有考慮到這一點,安裝時只是點取下一步,安裝完成后,造成了SQL版在使用過程中出現亂碼。
解決方法1:
如果是新建數據庫,可以在建立數據時指定排序規則,記得選中文簡體(Chinese_PRC_CS_AI_WS);如果數據庫中已經有數據,則轉換 編碼會失敗
操作步驟
1.右鍵數據庫》屬性
2.點擊“選項”》修改排序方式
解決方法2:
最徹底的就是重裝SQL,在安裝時自定義安裝,選好語言版本及排序規則,這樣問題就解決了。
參數解釋如下:
前半部份:指UNICODE字符集,Chinese_PRC_指針對大陸簡體字UNICODE的排序規則。
排序規則的后半部份即后綴 含義:
_BIN 二進制排序
_CI(CS) 是否區分大小寫,CI不區分,CS區分
_AI(AS) 是否區分重音,AI不區分,AS區分
_KI(KS) 是否區分假名類型,KI不區分,KS區分
_WI(WS) 是否區分寬度WI不區分,WS區分
區分大小寫:如果想讓比較將大寫字母和小寫字母視為不等,請選擇該選項。
區分重音:如果想讓重音和非重音字母視為不等,請選擇該選項。如果選擇該選項,
比較還將重音不同的字母視為不等。
區分假名:如果想讓比較將片假名和平假名日語音節視為不等,請選擇該選項。
區分寬度:如果想讓比較將半角字符和全角字符視為不等,請選擇該選項
sqlserver 建庫指定utf-8 修改庫為utf-8編碼
CREATE DATABASE paas COLLATE Chinese_PRC_CI_AS
GO
ALTER DATABASE paas COLLATE Chinese_PRC_CI_AS
GO
讓ASP和MS SQL SERVER支持UTF-8編碼存儲多國語言文字
近日在ASP+MS SQL存儲UTF-8編碼內容的時候,出現亂碼的情況,經過查詢發現要使SQL SERVER支持UTF-8編碼格式,必須做一些修改才可以。
1、確保ASP頁面是UTF-8編碼的,并在ASP頁面頂部聲明中使用<%@ LANGUAGE = VBScript CodePage = 65001%>進行編碼聲明
2、輸出的HTML頁面中聲明字符集:
3、在進行URL參數傳遞的時候,要使用Server.URLEncode()方法進行編碼
4、使用JS進行URL參數傳遞中文的時候,要使用escape進行編碼
5、在將UTF-8編碼的內容存入SQL SERVER數據庫中的時候,要存儲的字段必須設置為NVARCHAR類型,SQL語句要在內容前加N表示,如insert into user (name) values (N′&username&′),除id意外的字段都需要加N。
SQLServer數據庫如何解決中文亂碼問題以及方法的問題介紹到這里就結束了,想了解更多關于SQLServer數據庫的信息,請繼續關注中培偉業。