1
noe132 2017-05-14 12:21:02 +08:00
理应是不区分大小写的。
|
2
noe132 2017-05-14 12:21:37 +08:00 1
比如邮箱,不能说小写是一个账号,大写是另一个账号吧
|
3
IanPeverell 2017-05-14 12:22:24 +08:00
一般存储前都会 lowercase 处理一下的吧……
|
4
geelaw 2017-05-14 12:31:17 +08:00 1
取决于你怎么设计这个系统。
大多数账号系统都是大小写保持、大小写不敏感的。 不过你会遇到一些恶心的问题,比如“大小写不敏感地相等”这件事情很模糊,你需要指定一个 locale。 |
5
imn1 2017-05-14 12:32:24 +08:00
我还想把 s1 和 sl 当同一个帐号呢
|
6
murmur 2017-05-14 12:36:15 +08:00 1
如果是企业应用推荐不区分大小写而且一定要 trim
|
7
FunctionOne OP @murmur 请问 trim 是进行怎样的操作?
|
8
murmur 2017-05-14 13:02:45 +08:00 1
@FunctionOne 去除首尾的空格
|
9
realpg 2017-05-14 13:08:30 +08:00 1
基本用 mysql 存储 字符集就用不分大小写的 方便
|
10
sobigfish 2017-05-14 13:12:44 +08:00 1
程序里 数据库里都处理成一个 不然区分大小写的话会出现很多假冒的 id 因为还有 aBc ABc 等等等等 。。。。
|
11
Mutoo 2017-05-14 13:38:34 +08:00 1
不要让骗子有机可趁。建议使用大小写不敏感的系统。
|
12
nodin 2017-05-14 13:38:42 +08:00 via iPhone 1
账户体系总要有容错率的,大小写不区分,I、l、1 等同处理。
|
13
FunctionOne OP @nodin 非常感谢这个建议。
|
14
hzwei 2017-05-14 14:08:22 +08:00 via Android 1
如果不区分大小写,仅仅“ ABCDEFG ”的账号会出现 2 的 7 次方个,这样整个账号系统会很混乱。
|
16
Mitt 2017-05-14 18:39:28 +08:00
不要试图给自己找麻烦,远离一切大小写坑
|
17
zhaoxiting1997 2017-05-14 18:45:23 +08:00
我记得之前 V2EX 就出过一个伪造的小写 livid,后面好像被发现了,删掉了。
|
18
hinate 2017-05-14 19:21:53 +08:00 via iPhone
不要区分,不然会出现高仿号...
|
19
lslqtz 2017-05-14 20:37:33 +08:00 1
不要区分,但是保存时应该按照大小写来保存。
然后 trim 是要的,但是不建议对 l1i 做等同处理。 |
20
chanssl 2017-05-14 21:48:55 +08:00
@zhaoxiting1997 #17 BXIA 和 BXlA
|
21
GoBeyond 2017-05-15 05:59:06 +08:00 via Android
不想弄出一堆假冒 id 就不要这么做
|