WARNING OGG-01004,ORA-01438
--目标端应用进程abend
view report 进程名 得到报错信息如下
2020-04-24 13:48:09 WARNING OGG-03060 Source column START_DATE has more characters than target column START_DATE can hold. Some source characters will not be mapped during source column cha
racter validation of character set zhs16gbk.
2020-04-24 13:48:09 WARNING OGG-00869 OCI Error ORA-01438: value larger than specified precision allowed for this column (status = 1438), SQL <INSERT INTO "FS"."T_TX_ODR_SM" ("ID","NAME
","BATCH_NO","COMPANY_NO","COMPANY_NAME","CARD_NO","CARD_NO_SM4","PAYABLE_SUM","TASK_DETAIL","START_DATE","END_DATE","CREATE_TIME","CREATE_USER") VALUES (:a0,:a1,:a2,:a3,:a4,:a5,:a6,:a7,:a8,:
a9,:a10,:a11,:a12)>.
2020-04-24 13:48:09 WARNING OGG-01004 Aborted grouped transaction on 'FS.T_TX_ODR_SM', Database error 1438 (OCI Error ORA-01438: value larger than specified precision allowed for this c
olumn (status = 1438), SQL <INSERT INTO "FS"."T_TX_ODR_SM" ("ID","NAME","BATCH_NO","COMPANY_NO","COMPANY_NAME","CARD_NO","CARD_NO_SM4","PAYABLE_SUM","TASK_DETAIL","START_DATE","END_DATE",
"CREATE_TIME","CREATE_USER") VALUES (:a0,:a1,:a2,:a3,:a4,:a5,:a6,:a7,:a8,:a9,:a10,:a11,:a12)>).
2020-04-24 13:48:09 WARNING OGG-01003 Repositioning to rba 8737 in seqno 0.
2020-04-24 13:48:09 WARNING OGG-01154 SQL error 1438 mapping FS.T_TX_ODR_SM to FS.T_TX_ODR_SM OCI Error ORA-01438: value larger than specified precision allowed for this column (sta
tus = 1438), SQL <INSERT INTO "FS"."T_TX_ODR_SM" ("ID","NAME","BATCH_NO","COMPANY_NO","COMPANY_NAME","CARD_NO","CARD_NO_SM4","PAYABLE_SUM","TASK_DETAIL","START_DATE","END_DATE","CREATE_TI
ME","CREATE_USER") VALUES (:a0,:a1,:a2,:a3,:a4,:a5,:a6,:a7,:a8,:a9,:a10,:a11,:a12)>.
2020-04-24 13:48:09 WARNING OGG-01003 Repositioning to rba 8737 in seqno 0.
---查询后得知
源端字段被删除!!!目标段没有删除?
--源端表对应列
id VARCHAR2(32) not null,
name VARCHAR2(64),
batch_no VARCHAR2(32),
company_no VARCHAR2(32),
company_name VARCHAR2(64),
payable_sum NUMBER(12,2),
task_detail VARCHAR2(256),
start_date VARCHAR2(32),
end_date VARCHAR2(32),
create_time TIMESTAMP(6),
create_user VARCHAR2(16),
update_time TIMESTAMP(6),
update_user VARCHAR2(16)
--目标端表对应列
id VARCHAR2(32) not null,
name VARCHAR2(64),
batch_no VARCHAR2(32),
company_no VARCHAR2(32),
company_name VARCHAR2(64),
card_no VARCHAR2(32),
card_no_sm4 VARCHAR2(64) not null,
payable_sum NUMBER(12,2),
task_detail VARCHAR2(256),
start_date VARCHAR2(32),
end_date VARCHAR2(32),
create_time TIMESTAMP(6),
create_user VARCHAR2(16),
update_time TIMESTAMP(6),
update_user VARCHAR2(16)
--解决办法
ALTER TABLE FS.T_TX_ODR_SM DROP COLUMN CARD_NO;
ALTER TABLE FS.T_TX_ODR_SM DROP COLUMN CARD_NO_SM4;
--重启进程后恢复;