Hi, I am trying to load oracle table named TST1 and its data into teradata v12.0. I am using OleLoad. Datatypes in pl sql for CONFIG_ID and MD_SOURCE_SYSTEM are NUMBER(15) and rest of them varchar2. when i run the OleLoad tool it does following:
.SET SESSION CHARSET "UTF8"; LOGON localtd/tduser,tduser ; DATABASE samples ; CREATE TABLE "TST1" ( CONFIG_ID DECIMAL(15,0) NOT NULL, MD_SOURCE_SYSTEM DECIMAL(15,0) NOT NULL, CONFIG_VALUE VARCHAR(50) CHARACTER SET UNICODE, CONFIG_DESCRIPTION VARCHAR(100) CHARACTER SET UNICODE, UPDATABLE_FLAG VARCHAR(1) CHARACTER SET UNICODE ) ; BEGIN LOADING "TST1" ERRORFILES TST1_errors1, TST1_errors2 INDICATORS ; AXSMOD Oledb_Axsmod "noprompt"; DEFINE CONFIG_ID (DECIMAL(15,0)), MD_SOURCE_SYSTEM (DECIMAL(15,0)), CONFIG_VALUE (VARCHAR(200)), CONFIG_DESCRIPTION (VARCHAR(400)), UPDATABLE_FLAG (VARCHAR(4)) INSERT INTO "TST1" ( CONFIG_ID, MD_SOURCE_SYSTEM, CONFIG_VALUE, CONFIG_DESCRIPTION, UPDATABLE_FLAG ) VALUES ( :CONFIG_ID, :MD_SOURCE_SYSTEM, :CONFIG_VALUE, :CONFIG_DESCRIPTION, :UPDATABLE_FLAG ) ; END LOADING ; LOGOFF ;
and gives me this error for CONFIG_ID and MD_SOURCE_SYSTEM columns: Failure copying the source. Precision specified in the data value doesnt match the precision expected for this type.
It works fine for data type Number without any precision in oracle. when i have number(value) i get this kind of error.
I cannot change the datatypes in oracle. So, can some one please suggest me how to load the data into a teradata table.
I had a similar problem when we first upgraded to Version 12 utilities. The fix that worked for me was to switch from using the Oracle provider in the source selection to using the Microsoft for Oracle provider. When I did this the error went away.