我目前有这个代码:
query = "select ID_OBJECT from "+Config.props.getProperty("Ob.SchemaName.Objects")+".sdm_doc_info where name like ? and typefileverscurr = 'DWG'";
但是,这仅返回与大写DWG匹配的结果。 我希望我的搜索不区分大小写。 在这种情况下,如何使用?i? 我试过以下但我的Eclipse不喜欢它:
query = "select ID_OBJECT from "+Config.props.getProperty("Ob.SchemaName.Objects")+".sdm_doc_info where name like ? and typefileverscurr.matches('(?i:dwg)')";
感谢您的帮助。
答案 0 :(得分:1)
通常我用两种方式来做这些工作,一种是使用SQL upper()
或lower()
函数,如下所示:
"select ID_OBJECT from "+something+".sdme_doc_info where lower(typefileverscurr) = 'dwg'";
或强>
"select ID_OBJECT from "+something+".sdme_doc_info where upper(typefileverscurr) = 'DWG'";
另一种方法是在查询中使用like
并混合上面的函数以使更加不敏感
"select ID_OBJECT from "+something+".sdme_doc_info where lower(typefileverscurr) like '%dwg%'";
或强>
"select ID_OBJECT from "+something+".sdme_doc_info where upper(typefileverscurr) like '%DWG%'";