今天写代码的时候遇到一个问题:根据部门ID搜索项目:
部门id在实体类的定义是:private String orgId; //归口单位id
在数据库是:VARCHAR2(20)
当查询时select * from ... where orgId in(9007,9005)
select * from ... where orgId in('9007','9005'),两种查询方式都不会报错
部门id在实体类的定义是:private String orgId; //归口单位id
在数据库是:VARCHAR2(20)
当查询时select * from ... where orgId in(9007,9005)
select * from ... where orgId in('9007','9005'),两种查询方式都不会报错
解决方案 »
- !!高分求救 Oracle触发器
- 怎么连接两个不相关的表???高手请帮忙!!
- oracle启动问题
- oracle中查询行号的问题!急!在线等!
- 【求助】使用occi连接数据库时出错:ORA-12537:TNS:connection closed
- linux中怎么更新*rmp
- 紧急求救:我不小心执行了DELETE FROM aTableName,把一个表里的数据全删掉了,用什么命令能把这表里的数据恢复到刚才的状态?
- 急,怎么用system登录不了oracle9i?
- 请问作为一个普通用户,怎么查到数据库当前的连接数---------v$session表不给我查---does not exist
- 如何在Win2000下卸载Oracle developer,注册表中的一个键值删不掉?
- 同样的代码,ojdbc驱动,在win10下开发环境报这个异常,win7下正常,求解?
- 自定义table在拼装sql语句时遇到的问题
当查询时select * from ... where orgId in(9007,9005)
select * from ... where orgId in('9007','9005'),两种查询方式都不会报错因为你的字段类型是 varchar型,而 where orgId in(9007,9005) 写了两个数值,这里就存在一个隐式转换,即 OrgId 转换成数值型后,才做的比较,肯定用不到索引
如果 你的数据库中,存了一个不 纯数字的 orgid ,那么第一个语就会出错。所以,你要用第二种。