01-19-2018 07:24 AM
I am facing problem while loading data into Oracle database using SCD Type 2 in SAS DI.
But I got error
"Variable ***** has different lengths on BASE and DATA files ( Base 512 DATA 128)
I searched on past error but I cant solve this error also I tried Force option and used some options.
But dint get any solution.
If anyone has solution for this then please Help me out.
01-19-2018 07:41 AM
Specify the correct length of 512 for this variable in your newly created dataset (which is appended to the existing table, as this is a WARNING from PROC APPEND).
01-19-2018 08:53 AM - edited 01-19-2018 08:55 AM
That the length difference between the variable in the base and the data table is exactly of factor 4 makes me think that you might have a problem with "byte semantics".
Below 4 libname options - defined as part of the libname metadata definition - are what was required in an actual project to make it work. What's right for you depends on your environment but below should give you a good start.
DBCLIENT_MAX_BYTES=1 ADJUST_BYTE_SEMANTIC_COLUMN_LENGTHS=NO ADJUST_NCHAR_COLUMN_LENGTHS=NO DBSERVER_MAX_BYTES=1
Another option worth considering:
And if you're using bulk loading then it's also worth to explicitly define some of the bulk load options, especially BL_DEFAULT_DIR