mysql建表时强制区分大小写怎么写?
平时很🛁少会考虑数据🎙存储需【cún chǔ xū】要明确❎字符串【zì fú chuàn】类型字【lèi xíng zì】段的大【duàn de dà】⏭小写,MySQL默认的查询也不区分大小写【dà xiǎo xiě】。但作为用户信息【xī】🕡,一旦用户名重复,又会浪【yòu huì làng】费很多👁资源🔭。再者【zài zhě】,李逵【lǐ kuí】、李鬼的多起来【duō qǐ lái】☔,侦辨起来很困难。要做到这一点【zhè yī diǎn】,要么在建表时【jiàn biǎo shí】,明确大小写【dà xiǎo xiě】敏⏭感🌷(字段明确大小写【dà xiǎo xiě】敏⏭感🌷)。如果通🤖盘数据库所有🗜字段都【zì duàn dōu】需要大【xū yào dà】小写敏⏭感🌷,不如在字符集设置时【shè zhì shí】做好调🎣整📞。不过,通常不【tōng cháng bú】🔵建议这【jiàn yì zhè】么做✴。
如果跟🔂我一样【wǒ yī yàng】,数据库【shù jù kù】已经在线上跑【xiàn shàng pǎo】了,一个表上百万条数据👒,做字段类型变♐更有可能导致💚数据库【shù jù kù】宕机【dàng jī】👘。那么好👴吧,在查询【zài chá xún】时,多加个单词好【dān cí hǎo】🕔了!-
例如,一般查询:
SELECT * FROM U WHERE name LIKE 'a%';
SELECT * FROM U WHERE name LIKE 'A%';
其结果是一样的🚘,为了区【wéi le qū】分💰'A%'和'a%',可以这【kě yǐ zhè】么做【me zuò】🚣:
SELECT * FROM U WHERE binary name LIKE 'a%';
SELECT * FROM U WHERE binary name LIKE 'A%';
仅仅多了一个binary,就可以【jiù kě yǐ】🏮得到不【dé dào bú】同的结🚓果!
当然,如果需要建表【yào jiàn biǎo】😕时强制💬区分大小写,可以这【kě yǐ zhè】么写【me xiě】👩:
create table table_name(
name varchar (20) binary
);
就这么🤠简单【jiǎn dān】!
关键词:mysql
阅读本文后您有什么感想? 已有 人给出评价!
- 0
- 0
- 0
- 0
- 0
- 0