http://sanyuesan3.taobao.com/
com.ibatis.common.jdbc.exception.NestedSQLException:
--- The error occurred in
--- The error occurred while applying a parameter map.
--- Check the outwhbill.insertDtlHis-InlineParameterMap.
--- Check the statement (update failed).
--- Cause: java.sql.SQLException: ORA-01722: invalid number
问题是:
1.更新了表结构,DTL表和DTL_HIS表,两个表的表结构相同.但位置不同,因为alter执行顺序问题?
SQL> desc TBL_DTL;
Name Null? Type
----------------------------------------- -------- ----------------------------
VERSION NUMBER(10)
MULTI_SELL VARCHAR2(2)
EXPIRE_DATE_BEGIN VARCHAR2(40)
EXPIRE_DATE_TO VARCHAR2(40)
LVCARD_ID VARCHAR2(13)
LVCARD_TYPE VARCHAR2(20)
FR_ALERT_VAL NUMBER(10)
SQL> desc tbl__dtl_his;
Name Null? Type
----------------------------------------- -------- ----------------------------
VERSION NOT NULL NUMBER(10)
MULTI_SELL VARCHAR2(2)
FR_ALERT_VAL NUMBER(10)
EXPIRE_DATE_BEGIN VARCHAR2(40)
EXPIRE_DATE_TO VARCHAR2(40)
LVCARD_ID VARCHAR2(13)
LVCARD_TYPE VARCHAR2(20)
2.在insert语句的时候,使用了
insert into table_dtl_his (select * from table_dtl where BILL_NO=#billNo#);
3.发现问题,在执行desc table_dtl和table_dtl_his 表的时候,FR_ALERT_VAL属性的位置不同。导致查询出来的 number插入到了 varchar的字段中
4.解决方案:
insert into TBL_DTL_HIS (
select
VERSION,MULTI_SELL,FR_ALERT_VAL,EXPIRE_DATE_BEGIN,EXPIRE_DATE_TO,LVCARD_ID,LVCARD_TYPE
from TBL_DTL
where BILL_NO=#billNo# )
分享到:
相关推荐
- `java.sql.SQLException: ORA-01555: snapshot too old: rollback segment number with name "" too small`: 回滚段不足以支持事务回滚。可能需要增大回滚段大小或者优化事务处理。 11. **内存问题** - `java....
1. **ORA-22858: invalid alteration of datatype** - 这个错误通常发生在尝试直接改变字段类型时,特别是在从固定长度的类型(如`VARCHAR2`)转换到变长类型(如`CLOB`)时。 - 解决方案是先创建一个新的字段,...
INVALID_NUMBER (ORA-01722) **异常描述:** 当尝试将非数字字符串转换为数值类型时触发此异常。 **解决方法:** - 在转换之前验证输入数据是否为有效的数字格式。 - 使用适当的错误处理逻辑来捕获并处理此类异常...
#### ORA-00018: Instance number out of range - **解释**: 当指定的实例号超出范围时发生。 - **解决方案**: 确认实例号正确无误。 #### ORA-00019: Invalid instance name - **解释**: 指定的实例名称无效。 -...
#### ORA-00023: Redo log file number not in range - **描述**:重做日志文件编号超出范围。 - **解决方法**:确认重做日志文件配置正确且所有文件都存在。 #### ORA-00024: Mode does not allow dropping - **...
7. **ORA-01722: invalid number** - **含义**:在SQL语句中,字符串转换为数字失败,因为该字符串不是有效的数字格式。 - **解决方法**:确保所有的数值输入都是正确的格式。 8. **ORA-06530: ACCESS_INTO_NULL...
6. **ORA-01722: invalid number** 当试图将非数字字符串转换为数字,或者数字格式不正确时,会触发此错误。确保数据类型匹配或输入数据的格式正确即可避免。 7. **ORA-00911: invalid character** 在SQL语句中发现...
#### ORA-00063: Log file number string not found 当指定的日志文件号不存在时,会触发此错误。这通常发生在日志切换或重做日志文件丢失时,需要检查日志文件的状态,并确保所有文件都可用。 #### ORA-00067: ...
7. **INVALID_NUMBER (ORA-01722)** - 描述:字符到数字的转换失败。 - 举例:尝试将非数字字符串转换为数值类型。 8. **LOGIN_DENIED (ORA-01017)** - 描述:使用无效的用户名或密码登录Oracle。 - 举例:当...
- **ORA-01722: invalid number** - **含义**:输入的数值格式不正确。 - **解决方法**:检查并修正输入的数值。 #### 六、文档使用须知 - **版权信息**:文档受版权保护,不得非法复制或传播。 - **保密条款**...
#### ORA-1722:INVALID_NUMBER - **异常说明**:无效数字。 - **常见原因**: - 将非数字字符转换为数字类型时失败。 - 输入的数据格式不正确。 - **解决方案**: - 确保输入的数据是有效的数字格式。 - 使用...
7. `Invalid_number` (ora-01722):尝试将非法字符串转换为数字。 8. `No_data_found` (ora-01403):SELECT INTO 未返回任何行,或引用了未初始化的索引表元素。 9. `Too_many_rows` (ora-01422):SELECT INTO 语句...
**错误2:ORA-01722: invalid number** 当尝试将包含换行符的数据导入到NUMBER类型字段时,可能会遇到此错误。如果最后一个字段是NUMBER类型,换行符会被当作数值的一部分,导致解析错误。解决方法是在控制文件中...
9. **INVALID_NUMBER** (ORA-01722): 当尝试将非数字字符串转换为数字时,如果转换失败,Oracle会抛出此异常。在处理数据时,需要验证输入的格式是否正确。 10. **LOGGIN_DENIED** (ORA-01017): 提供的用户名和密码...
- `INVALID_NUMBER`(ora-01722):尝试将非数字字符串转换为数字时抛出。 - `ZERO_DIVIDE`(ora-01476):执行除法运算时,若除数为0则抛出。 - `ACCESS_INFO_NULL`(ora-06530):访问未初始化的对象时抛出。 - `...
- `ORA-1722 Invalid-NUMBER`:转换一个数字失败。 - `ORA-6500 Storage-error`:内存不够引发的内部错误。 - `ORA-6501 Program-error`:内部错误。 - `ORA-6502 Value-error`:转换或截断错误。 - `ORA-6504 ...
当尝试将非数字字符串转换为数字类型时,系统会抛出`INVALID_NUMBER`(ORA-01722)异常。 **解决方法:** 1. **验证输入**:确保所有用于数值计算的输入都是有效的数字格式。 2. **使用TRY/CATCH结构**:通过TRY/...
print("Invalid input. Please enter a number.") ``` 7. **游戏逻辑优化**:可能还涉及到游戏的复杂性,如设置猜测次数限制,显示剩余尝试次数,或提供退出游戏的选项等。 在压缩包文件`guess-game-jinja-main`...
- **错误代码**:ORA-01722 - **场景示例**:在执行涉及数字计算的查询时,若某字段值非数字格式,将导致此异常。 #### 8. LOGINDENIED - **异常描述**:提供的登录凭证(用户名或密码)不正确时触发。 - **错误...