台灣最大程式設計社群網站
線上人數
597
 
會員總數:238866
討論主題:185385
歡迎您免費加入會員
討論區列表 >> MS SQL >> 有些中文姓名無法比對如何解決
[ 變換順序 ]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
有些中文姓名無法比對如何解決
價值 : 200 QP  點閱數:155 回應數:4

樓主

jackyle
初學者
2 6
410 12
發送站內信

MS SQL 資料表 namechi欄位 nvarchar(10)
黃韵琦 這個人明明有在資料表中,但用namechi='黃韵琦' 或 namechi like'%黃韵琦%' 都找不到資料
我覺得應該是[韵]這個字的關係,但如何解決這種特殊字比對的問題,感謝各位高手的解答




搜尋相關Tags的文章: [ 中文姓名 ] , [ 特殊字比對 ] ,
本篇文章發表於2017-01-05 10:08
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

Daimom
捐贈 VP 給 Daimom 檢舉此回應
我用這樣找的到


或是你資料庫裡面存的字,本身已經有問題了?
本篇文章回覆於2017-01-05 13:10
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

jackyle
檢舉此回應
我有找到解決方法了,加個N
select * from table namechi=N'黃韵琦'
select * from table namechi like N'%黃韵琦%'
本篇文章回覆於2017-01-05 14:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

Daimom
捐贈 VP 給 Daimom 檢舉此回應
那應該是在寫入的時候前面就已經有加N改為儲存unicode的字了。
不過韻這個字應該是都找的到才對。
如果有興趣研究的話,可以參考以下

這樣是找不到資料的,但如果在查詢前面加N,則找的到。
本篇文章回覆於2017-01-05 14:51
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
多存一個欄位 也許有用

select ascii('黃韻琦')

必要時比對這個
本篇文章回覆於2017-01-05 19:47
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
[ 變換順序 ]   
1

回覆
如要回應,請先登入.