LocalDB資料庫修改排序規則,修復漢字變問號

2021-09-07 16:16:43 字數 1631 閱讀 5082

vs中新增的輕量級資料庫localdb,有個這個,開發人員就不必再安裝龐大的sql server了,可以方便地測試執行小型專案;既然是輕量級資料庫,它拋棄了龐大的身軀,功能上當然也會受到侷限,其中之一就是它預設的排序規則,使用預設排序規則,從**前台新增的中文資料在資料庫中顯示亂碼或者變問號;這個問題困擾了我好幾天時間,通過各種搜尋,終於找到解決方案;特此轉述,希望能幫到有同樣困惑的您!

新建資料庫預設排序規則為:sql_latin1_general_cp1_ci_as,如果使用中文會出現亂碼,顯示問號

1.右鍵資料庫例項,新建查詢修改資料庫為單使用者模式

[sql]view plain

copy

alter database [資料庫名或完整路徑] set single_user with rollback  immediate ;  

go  

2.修改排序規則(這裡為中文--拼音--不區分大小寫)

[sql]view plain

copy

alter database [資料庫名或完整路徑] collate chinese_prc_ci_as ;  

go  

3.重新設定為多使用者模式

[sql]view plain

copy

alter database [資料庫名或完整路徑]  set multi_user;  

其中排序規則名稱由兩部份構成,前半部份是指本排序規則所支援的字符集。

如:chinese_prc_cs_ai_ws

前半部份:指unicode字符集,chinese_prc_指針對大陸簡體字unicode的排序規則。排序規則的後半部份即字尾含義:

_bin 二進位制排序

_ci(cs) 是否區分大小寫,ci不區分,cs區分 區分大小寫:如果想讓比較將大寫字母和小寫字母視為不等,請選擇該選項。

_ai(as) 是否區分重音,ai不區分,as區分  區分重音:如果想讓比較將重音和非重音字母視為不等,請選擇該選項。如果選擇該選項,比較還將重音不同的字母視為不等。

_ki(ks) 是否區分假名型別,ki不區分,ks區分 區分假名:如果想讓比較將片假名和平假名日語音節視為不等,請選擇該選項。

_wi(ws) 是否區分寬度 wi不區分,ws區分 區分寬度:如果想讓比較將半形字元和全形字符視為不等,請選擇該選項

使用例項:

[sql]view plain

copy

--第一步關閉當前資料的所有連線  

--第二步:執行修改排序規則語句  

LocalDB資料庫修改排序規則,修復漢字變問號

vs2012,vs2013新增的輕量級資料庫localdb,有個這個,開發人員就不必再安裝龐大的sql server了,可以方便地測試執行小型專案 既然是輕量級資料庫,它拋棄了龐大的身軀,功能上當然也會受到侷限,其中之一就是它預設的排序規則,使用預設排序規則,從 前台新增的中文資料在資料庫中顯示亂碼...

LocalDB資料庫修改排序規則,修復漢字變問號

vs2012,vs2013新增的輕量級資料庫localdb,有個這個,開發人員就不必再安裝龐大的sql server了,可以方便地測試執行小型專案 既然是輕量級資料庫,它拋棄了龐大的身軀,功能上當然也會受到侷限,其中之一就是它預設的排序規則,使用預設排序規則,從 前台新增的中文資料在資料庫中顯示亂碼...

LocalDB資料庫修改排序規則,修復漢字變問號

vs2012,vs2013新增的輕量級資料庫localdb,有個這個,開發人員就不必再安裝龐大的sql server了,可以方便地測試執行小型專案 既然是輕量級資料庫,它拋棄了龐大的身軀,功能上當然也會受到侷限,其中之一就是它預設的排序規則,使用預設排序規則,從 前台新增的中文資料在資料庫中顯示亂碼...