关于大小写的问题

cenjen188 2005-02-23 10:37:01
在页面上有一组文本框等待用户输入, 这组文本框存入同一个字段 name
用户可以输入:Jack 和 jack. 这显然是一个名字,但数据库会同时存入它们,形成两个名字。
请问如何忽略 ‘J’和 ‘j’。 只是存入一个值到数据库(oracle),至于哪一个都可以。
...全文
178 点赞 收藏 23
写回复
23 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
wanghui_00 2005-02-28
toLowerCase():变小写!
回复
cenjen188 2005-02-27
请问如何 用用户登陆时输入的名字来显示 ,而存入的全部是大写呢
回复
linhao315 2005-02-27
回复人: cenjen188() ( ) 信誉:100 2005-02-25 12:55:00 得分: 0


阿甘, Oracle 9i 认为 Jack and jack 是不同的值,它区分大小写的。
914, 你说都转换成大写(小写)是不可以的,比如一个用户用的是smAll,下次看到的是SMALL,那上帝还是会找你的。


---------------------------
其实你在页面显示的时候完全可以用用户登陆时输入的名字来显示,然后存储时都转成大写,这样既可以保证用户看到的名字跟输入的一样,也降低了数据存储的复杂性。
回复
cenjen188 2005-02-26
我想出了来HashMap.containsKey(),可以低消耗解决这个问题
回复
cenjen188 2005-02-25
阿甘, Oracle 9i 认为 Jack and jack 是不同的值,它区分大小写的。
914, 你说都转换成大写(小写)是不可以的,比如一个用户用的是smAll,下次看到的是SMALL,那上帝还是会找你的。
回复
cenjen188 2005-02-25
lydong(西瓜水) 你的方法对两个值检查可以,要如果有四个五个呢
比如:
Jack
tom
Raymond
jack
Tom
回复
lydong 2005-02-25
Tom and tom
Jerry and jerry
Tom is a coder.
or
tom is a coder.
回复
congbailing_914 2005-02-25
回复人: lydong(西瓜水) ( ) 信誉:100 2005-02-25 11:27:00 得分: 0

都转成大小写,不符合书写习惯
--------------------------------------------------------------------------
我觉得这不是问题,如果将这个运用到用户登陆上面去的话效果也是很好的!
用户登陆的时候输入的信息可以用“*”代替,这样就可以忽略输入格式了!


回复
congbailing_914 2005-02-25
楼主他们的方法还是太麻烦!
你可以用我的方法,比如说将输入的名字都按大写的格式存到数据库中!
name=name.toUpperCase();
如果按小写格式的话你就用
name=name.toLowerCase();

回复
nwsl 2005-02-25
这好像和oracle 有关吧?mysql可以用unique控制相同名字被存入,看看ORACLE有无这种?
ALTER TABLE `databasename`.`tablename`
ADD UNIQUE INDEX `indexName` (`fieldname`);
回复
rower203 2005-02-25
用String.toUpperCase()或String.toLowerCase()两个方法都可以,
思路是取到一个name后先用上述方法过滤一下,再存入数据库。这样数据库就存入同一个name了。
比较前要用同一方法过滤,就没有问题了。
回复
lydong 2005-02-25
我觉得你可以把他们都设置成小写的或者都设置成大写的!
这样在输入的时候不关你输入什么,它都会按照你设置的格式存储的!
---------------------------------
都转成大小写,不符合书写习惯
回复
congbailing_914 2005-02-25
我觉得你可以把他们都设置成小写的或者都设置成大写的!
这样在输入的时候不关你输入什么,它都会按照你设置的格式存储的!
回复
lydong 2005-02-25
回复人: congbailing_914(奇迹玩家) ( ) 信誉:100 2005-02-25 10:56:00 得分: 0
我爱你,java!你爱我吗?
-------------------------------
我爱你,caozhi,等着,马上让咱的pp亲你。


String ab="sss";
String cd="ssS";
if (ab.toLowerCase().equals(cd.toLowerCase())) System.out.println("ab=cd");

回复
congbailing_914 2005-02-25
我爱你,java!你爱我吗?
回复
cenjen188 2005-02-25
一组name, String name[].
比如:Jack tom Raymond jack Tom这样一组名字
只存入: Jack(or jack) tom(or Tom) Raymond 到数据库
告诉我吧,我想了一天了
回复
cenjen188 2005-02-25
是啊,很多时候字段的值都是大写。但这个比较特殊,毕竟有些重要的场合还是需要这样
回复
guoyongchina 2005-02-25
我做过的项目都是在oracle数据库总存入大写,然后在比较的时候都转化成大写来比较
回复
cenjen188 2005-02-25
一组name, String name[].
比如:Jack tom Raymond jack Tom这样一组名字
只存入: Jack(or jack) tom(or Tom) Raymond 到数据库

回复
lydong 2005-02-25
关键字就那么几个,区分并不是难事
修改的时候判断是否主键重复,新值与旧值判断(怎么又出来四个五个)
回复
发帖
Java EE
创建于2007-09-28

6.6w+

社区成员

J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
申请成为版主
帖子事件
创建了帖子
2005-02-23 10:37
社区公告
暂无公告