今天在用ibatis执行查询时,报下面错误:
Cause: java.sql.SQLException: 索引中丢失 IN 或 OUT 参数:: 1;
不知道什么原因,网上搜索了一下,好像是传参数的问题。我的sqlmap文件如下:
sql 代码
- <select id="advancedQuery" parameterClass="java.lang.String" resultMap="GrantLogResult">
- SELECT t1.*,t2.user_name as accreditor_user_name,
- t2.real_name as accreditor_real_name,t3.name as role_name
- FROM(
- $value$
- )t1, user_basic_info t2, role_info t3
- WHERE t2.id(+)=t1.accreditor
- AND t3.id(+)=t1.grant_role
- </select>
然后传的参数是一条select语句,格式大概如下:
sql 代码
- select * from authorization_info
- where authorize_time between t1 and t2
- order by authorize_time desc
t1 和 t2是程序生成的Timestamp类型的值。
搞了半天之后,问题依旧,没有办法之下,改变了传入参数的select语句写法,如下:
sql 代码
- select * from authorization_info
- where to_char(authorize_time,'yyyy-MM-dd') >= 't1'
- and to_char(authorize_time,'yyyy-MM-dd') <='t2'
- order by authorize_time desc
这样写了之后问题解决了,但是还是不知道其中的原因。
分享到:
相关推荐
---------索引中丢失in或out参数终极解决方案---------- 表现:提示的索引位置大于实际参数个数, 每次重启服务可以成功一次或几次, 之后短时间内全部失败. ---------祝各位工作愉快,全网首发,血泪史----------
1. Wait_timeout:这个参数确定服务器关闭交互式连接前等待活动的秒数,交互式客户端定义为在 mysql_real_connect() 中使用 CLIENT_INTERACTIVE 选项的客户端,默认值是 28800 秒(8 小时)。 2. Interactive_time...
* bus indices out of range:总线分支索引超出范围 * Bus range syntax errors:总线范围的语法错误 * Illegal bus range values:非法的总线范围值 * Illegal bus definitions:定义的总线非法 * Mismatched bus ...
说明: (如果值为 TRUE) 当在隐式转换中丢失数据时返回错误的参数。 值范围: FALSE | TRUE 默认值: TRUE nls_numeric_characters: 说明: 指定将用作组分隔符和小数位的字符。组分隔符就是用来分隔整数位组 (如千, ...
这意味着你在模型中定义的数据或公式超出了系统内存的承载能力,尝试减少模型的规模或者增加计算机的内存。 2. **TOO MANY LINES OF TEXT IN THE MODEL**:模型中的文本行数过多。Lingo有对模型文本行数的限制,...
1. bus indices out of range:总线分支索引超出范围。 2. Bus range syntax errors:总线范围的语法错误。 3. Illegal bus range values:非法的总线范围值。 4. Illegal bus definitions:定义的总线非法。 5. ...
在 javaSQL 预编译中,如果 params 参数中有 null 值,会报 java.sql.SQLException: 索引中丢失 IN 或 OUT参数错误。例如: if (!isOpened()) { openConn(); } params[2]="aabbcc"; PreparedStatement stmt = ...
15. **Missing component models in model files**:模型文件中找不到元件模型,可能是文件丢失或路径不正确。 16. **Missing pin found in component display mode**:元件显示模式下缺少管脚,可能影响到设计的...
1. bus indices out of range(总线分支索引超出范围):在电路设计中,总线索引超出范围将导致设计错误。 2. Bus range syntax errors(总线范围的语法错误):总线范围的语法错误将导致设计错误。 3. Illegal bus ...
- **Errors in component model parameters** 元件模型中出现错误的的参数:元件模型的参数设置错误。 - **Extra pin found in component display mode** 多余的管脚在元件上显示:在元件的图形显示模式下,显示了不...
* bus indices out of range 总线分支索引超出范围 * Bus range syntax errors 总线范围的语法错误 * Illegal bus range values 非法的总线范围值 * Illegal bus definitions 定义的总线非法 * Mismatched bus label...
1. **bus indices out of range**:总线分支索引超出范围意味着在设计中,总线的分支编号超过了预设的合法范围。 2. **Bus range syntax errors**:总线范围的语法错误是指在定义总线时,使用的语法不符合规定,可能...
1. bus indices out of range 总线分支索引超出范围:这类错误发生在总线分支索引值超出了允许的范围,导致电气连接错误。 2. Bus range syntax errors 总线范围的语法错误:这类错误发生在总线范围的语法不正确,...
### OpenSSL 创建CA及证书详解 #### 一、OpenSSL简介 ...在本篇文章中,我们将详细介绍如何使用OpenSSL来创建自己的证书颁发机构(Certificate ...此外,如果证书丢失或被盗,应立即吊销该证书,防止被恶意利用。
《深入解析Protel DRC规则:中英文对照与电气故障排查》 在电子设计自动化(EDA)领域,Protel作为一款广泛使用的电路设计软件,其强大的功能覆盖了从原理图设计到PCB布局的全过程。其中,设计规则检查(Design ...
- 参数定义时,需明确指出`IN`、`OUT`或`INOUT`,`IN`参数可省略。 - 异常处理在MySQL中使用`DECLARE HANDLER FOR`语句,而不是Oracle的`EXCEPTION WHEN`。 2. **数据类型的转换**: - Oracle的`VARCHAR2`对应...
1. bus indices out of range 总线分支索引超出范围 2. Bus range syntax errors 总线范围的语法错误 3. Illegal bus range values 非法的总线范围值 4. Illegal bus definitions 定义的总线非法 5. Mismatched bus ...
1. **创建格式文件**:BCP允许你创建一个格式文件来定义数据文件中的字段格式,这可以确保数据正确地映射到目标表的列。格式文件可以用`bcp format`命令创建。 2. **数据导入**: - `bcp <数据库名>.<所有者名>....
1. **参数声明**:SQLServer2000使用`@param_name datatype [OUTPUT]`,Oracle11G使用`(param_name IN/OUT datatype)`。 2. **输出参数**:在SQLServer2000中,输出参数需在AS后声明并赋值;Oracle11G中,`INTO`...
# MyISAM设置恢复表之时使用的缓冲区的尺寸,当在REPAIR TABLE或用CREATE INDEX创建索引或ALTER TABLE过程中排序 MyISAM索引分配的缓冲区 myisam_max_sort_file_size = 10G # 如果临时文件会变得超过索引,不要使用...