天堂极乐鸟

导航

MySQL操作数据时区分大小写

一般情况下使用SQL语句执行

update login_ticket set status=1 where ticket='ABC'

会将ticket=’abc‘的数据也改掉,那么需要在列名ticket的后面加上collate utf8_bin

update login_ticket set status=1 where ticket COLLATE utf8_bin='ABC'

这里的collate后面的是指该列的字符集排序方式,具体的字符集可以在SQLyog上方:数据库->更改数据库看到

 

 

这里可以看到可以选用的字符集排序方式,这里的ci是指case insensitive(大小写不敏感),而想要大小写敏感则要找case sensitive(cs),可见这里没有,所以只能用最上面的utf8_bin,经测试该字符集排序方式是大小写敏感的。

而网上常见的说加collate Chinese_PRC_CS_AS的都是SQL Server的,与MySQL无关。

 

 

参考:http://www.voidcn.com/article/p-rxghfnkv-btx.html





posted on 2021-01-27 00:24  天堂极乐鸟  阅读(167)  评论(0编辑  收藏  举报