mybatis查询oracle ’无效的列索引‘和ORA-00911’无效的字符‘错误

1、Caused by: java.sql.SQLException: 无效的列索引

参考文献:http://bbs.csdn.net/topics/300179772

配置的sql语句写错了

select
      distinct ‘#{pkgName}‘ as pkgName,
               ‘#{appName}‘ as appName,
               version as versionName
from stat_dim_version
where appkey=#{appKey} order by version desc

使用了#{**}后就不用再加单引号了。改正为

select
      distinct #{pkgName} as pkgName,
               #{appName} as appName,
               version as versionName
from stat_dim_version
where appkey=#{appKey} order by version desc

2、ORA-00911’无效的字符‘错误

参考文档:http://www.cnblogs.com/zhangronghua/archive/2007/08/29/874484.html

oracle配置的语句后面不要加分号,这个在mysql中没有出现问题,在oracle的语句中不通。

时间: 2024-10-20 14:25:29

mybatis查询oracle ’无效的列索引‘和ORA-00911’无效的字符‘错误的相关文章

JFinal ActiveRecordException: 无效的列索引

代码: Db.update("delete from T_Xabc where ID= '?'","9900"); 现象: com.jfinal.plugin.activerecord.ActiveRecordException: java.sql.SQLException: 无效的列索引 at com.jfinal.plugin.activerecord.DbPro.update(DbPro.java:279) at com.jfinal.plugin.activ

java.sql.SQLException: 无效的列索引

“无效的列索引”其实是个低级的错误,原因无非几个: 1.sql串的?号数目和提供的变量数目不一致: 例如:jdbcTemplate.update(sql, new Object[] {newState,oldState}); 如果sql里面有1个?号,Object[]送了2个,就会报错. 2.sql串里的?号书写不正确 英文?和中文?有时难以区分. 3.sql串的?号用''括了起来. 例如:sql="UPDATE abc SET abc.name='?' WHERE abc.id='?'&quo

HBase高性能复杂条件查询引擎---二级多列索引

http://www.infoq.com/cn/articles/hbase-second-index-engine 原理 “二级多列索引”是针对目标记录的某个或某些列建立的“键-值”数据,以列的值为键,以记录的RowKey为值,当以这些列为条件进行查询时,引擎可以通过检索相应的“键-值”数据快速找到目标记录.由于HBase本身并没有索引机制,为了确保非侵入性,引擎将索引视为普通数据存放在数据表中,所以,如何解决索引与主数据的划分存储是引擎第一个需要处理的问题,为了能获得最佳的性能表现,我们并没

java:Oracle(视图,索引,序列)

1.索引:索引一共分为4种 -- 在oracle中, -- normal:普通索引 -- unique:唯一索引 -- bitmap:位图索引 -- B 树索引:默认:如果不建立索引的情况下,oracle就自动给每一列都加一个B 树索引 -- index(下标,索引):作为索引,在oracle如果自带索引能满足当前查询需求,就只需要建立索引,oracle自带机制会帮你使用 -- 如果当前查询oracle自带的索引满足不了,就要自己编写索引 (不学) -- 索引就可以直接理解为一个目录 -- 二叉

MySQL列索引与多列索引浅析

创建一个使用列索引的表: create table index_test1(id int not  null auto_increment,first_name varchar(30) not null,last_name varchar(30) not null,primary key(id),index index_first(first_name),index index_last(last_name))engine myisam charset utf8; 创建一个使用多列索引的表:cr

Mybatis:使用bean传值,当传入值为Null时,提示“无效的列类型”的解决办法

问题描述: 在使用mybatis对数据库执行更新操作时,parameterType为某个具体的bean,而bean中传入的参数为null时,抛出异常如下: org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping: ParameterMapping{property='pxh',

oracle 单列索引 多列索引的性能测试

清除oralce 缓存:alter system flush buffer_cache; 环境:oracle 10g . 400万条数据,频率5分钟一条 1.应用场景:  找出所有站点的最新一条数据.sql语句如下: —————————————————————————————————————————————————— with aa as( select t1.EQP_ID ,max(MEASURE_TIME) maxtm from PLU_WATER_DATA t1 where t1.MEAS

Oracle查询表信息(索引,外键,列等)

oracle查询表信息(索引,外键,列等) oracle中查询表的信息,包括表名,字段名,字段类型,主键,外键唯一性约束信息,索引信息查询SQL如下,希望对大家有所帮助: 1.查询出所有的用户表 select * from user_tables 可以查询出所有的用户表 select owner,table_name from all_tables; 查询所有表,包括其他用户表 通过表名过滤需要将字母作如下处理 select * from user_tables where table_name

MyBatis 中无效的列类型 整形

在使用Mybatis时,不同的xml配置文件,有的会提示:无效的列类型: 通过观察,如果是参数是Map类型或者Java Object类型,如果Map或者Object里面的属性类型不一致,如有些属性是String类型,有些属性是Integer类型,那么MyBatis解析的时候,就会出现问题,类型无法识别. 当然,如果传入参数不是Map或者Java Object,而是多个参数列表的形式,如果参数类型一致,那么不会出现问题,如果参数类型不一致,如既有String类型,也有Integer类型,那么解析的