I am loading 999...99 (18 times) into a teradata table field whose definition is ABC DECIMAL(18,0) NOT NULL COMPRESS 0. But when I see loaded data it is 1000...00 (1 then 18 zeros). I am unable to figure out why this is happening. I am using Ab Initio while for loading the data. The data field definition in Ab Initio is decimal("|", maximum_length=19) ABC i.e. maximum length is 19 and also | (pipe) separated.
I have found out the solution for the above stated problem :) The data being loaded into Teradata is perfect. The problem lies when you try to view data using select statement which can just show decimals upto 15 digits correctly. To view the data properly you can typecast the field to select cast(ABC as varchar(18)).