程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> mysql如何處理varchar與nvarchar類型中的特殊字符

mysql如何處理varchar與nvarchar類型中的特殊字符

編輯:關於MYSQL數據庫

如果你每次建數據表的時候固執的使用varchar,那麼你可能會遇到以下的問題:

現在saleUserName的字段類型為varchar(50)

update TableNameset saleUserName='小覃祝你⑭快樂' where ID=87

select * from TableName where ID=87

why?SaleUserName字段裡的文字怎麼變成這樣了。⑭這個符號怎麼變成了?

好的,那麼我現在將saleUserName的字段類型改為nvarchar(50)呢

updateTableNameset saleUserName='小覃祝你⑭快樂' where ID=87

select * from TableName where ID=87

What!?怎麼還是一樣!

那麼,稍微改一下,在參數值前面加上N。現在可以看到調皮的⑭出來了。

updateTableNameset saleUserName=N'小覃祝你⑭快樂' where ID=87

------加上N代表存入數據庫時以Unicode格式存儲。

----------------------------------------------------------總結的時候,我總是得召喚出這麼華麗的分割線-----------------------------------------------------------------

unicode,以前學習的時候看過,根本沒留心。那麼好,百度一下,百度百科是這麼說的:Unicode是國際組織制定的可以容納世界上所有文字和符號的字符編碼方案。

nvarchar和ntext就是可以容納unicode的類型,所以才能存儲調皮的⑭等特殊字符。

以前根本沒留意過這些數據類型,看到說是存unicode類型的,可是根本不知道unicode為何物。碼農就是這麼任性,不夠重視這些東西。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved