DBA Hub

📋Steps in this guide1/1

Resolving ORA-02374, 12899, 02372 issues during data-migration with different characterset

in this blog i have explain Resolving ORA-02374, 12899, 02372 issues during data-migration with different characterset

oracle configurationintermediate
by OracleDba
11 views
1

Overview

Resolving ORA-02374, 12899, 02372 issues during data-migration with different characterset ORA-02374: conversion error loading table "crm"."transaction" ORA-12899: value too large for column DETAILS_NOTE (actual: 4024, maximum: 4000) ORA-02372: data for row: DETAILS_NOTE: 0X'434552564943414C205350494E450D0A0D0A4D756C7469706C' I have transaction data in table "crm.transaction" where my database Characterset is "WE8MSWIN1252". In this table "DETAILS_NOTE" column datatype is varchar2 where some of the column values fully occupied with 4000 characters. When I am trying to import using IMPDP with another characterset database "AL32UTF8" then above error is coming. RCA: When data are coming from source character-set to target new character set, special charters taking 3 char space, so it is showing as "ORA-12899: value too large for column RESULT (actual: 4024, maximum: 4000)". Target Character-set : AL32UTF8 Migrate your schema or database. Create dblink with souuce to target database. Disable constraints. alter the table as example shown: Now insert the whole data . Migrate your schema or database. Disable constraints. alter the table as example shown: import the table from logical dump with below format.

Code/Command (click line numbers to comment):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
SQL> alter table crm.transaction modify DETAILS_NOTE  VARCHAR2(4000 CHAR);

SQL> alter table crm.transaction modify DETAILS_NOTE  VARCHAR2(4000 CHAR);

impdp full=N directory=data_pump dumpfile=PROD_full_%U.dmp logfile=PROD_trx_imp.log TABLE_EXISTS_ACTION=TRUNCATE schemas=CRM TABLES=CRM.transaction REMAP_TABLE=HR.transaction:transaction

create table crm.transaction
(
  trnxid      NUMBER not null,
  rsltrpthdrid    NUMBER not null,
  paramdetailid    NUMBER not null,
  details_note     VARCHAR2(4000 CHAR),
  unitid      NUMBER,
) tablespace CRM_TBLS;

Comments (0)

Please to add comments

No comments yet. Be the first to comment!