oracle ora-01001,奇怪的ORA-01001错误

各位高手,一个奇怪的问题求救。SOS!!!

运行于客户的webpshere服务器上的java程序调用oracle一个pkg的一个简单的function来插数据进入表,没有用到任何游标,

居然报ORA-01001: invalid cursor这个错,找了许久没有找到原因。麻烦各位出手帮忙!!

可能有用的线索:出这个错的半个小时之前相同的程序出过插入字段msg_content可能超过4000 char的错误:ORA-01461: can bind a LONG value only for insert into a LONG column.不知道两者是否有关。

附上func and table 相关内容:

FUNCTION f_insertInmsglog(p_legal_entity_code   VARCHAR2,

p_channel_id          VARCHAR2,

p_msg_id              number,

p_msg_trans_key       VARCHAR2,

p_status              VARCHAR2,

p_err_code            VARCHAR2,

p_err_desc            VARCHAR2,

p_msg_content         VARCHAR2 ) RETURN NUMBER AS

l_in_msg_id NUMBER;

l_cis_msg_id NUMBER;

BEGIN

INSERT INTO cis_intraday_inmsglog

(in_msg_id,

legal_entity_code,

communciation_channel_id,

msg_trans_key,

cis_msg_id,

status,

err_code,

err_description,

msg_content,

last_updated_date,

last_updated_by)

VALUES

(seq_intraday_in_msg_id.NEXTVAL,

p_legal_entity_code,

p_channel_id,

p_msg_trans_key,

p_msg_id,

p_status,

p_err_code,

p_err_desc,

p_msg_content,

SYSDATE,

'Intraday') RETURN in_msg_id INTO l_in_msg_id;

COMMIT;

RETURN l_in_msg_id;

EXCEPTION

WHEN OTHERS THEN

ROLLBACK;

g_errmsg.legal_entity_code := p_legal_entity_code;

g_errmsg.pgm_id      := 'p_InsertInmsgLog';

g_errmsg.audit_id    := NULL;

g_errmsg.event_id    := NULL;

g_errmsg.action_id   := NULL;

g_errmsg.msg_id      := p_msg_id;

g_errmsg.system_id   := '';

g_errmsg.channel_id  := p_channel_id;

g_errmsg.contract_id := '';

g_errmsg.msg_type    := '';

g_errmsg.errtext     := SQLERRM;

p_raiseError(g_errmsg);

RETURN l_in_msg_id;

END;

cis_intraday_inmsglog表结构

Name                     Type                Nullable Default Comments

------------------------ ------------------- -------- ------- --------

IN_MSG_ID                NUMBER(22)

LEGAL_ENTITY_CODE        VARCHAR2(20 BYTE)

COMMUNCIATION_CHANNEL_ID VARCHAR2(20 BYTE)

MSG_TRANS_KEY            VARCHAR2(100 BYTE)  Y

CIS_MSG_ID               NUMBER(22)          Y

STATUS                   VARCHAR2(20 BYTE)   Y

ERR_CODE                 VARCHAR2(255 BYTE)  Y

ERR_DESCRIPTION          VARCHAR2(1000 BYTE) Y

MSG_CONTENT              VARCHAR2(4000)      Y

LAST_UPDATED_DATE        DATE                Y

LAST_UPDATED_BY          VARCHAR2(20 BYTE)   Y

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值