MLoad script from JCL - Error message

Tools

MLoad script from JCL - Error message

Hi All,
I am trying to load a table thru an MLoad JCL. Thru the SQL asst, i am able to query the table and also write into it using the same USER. But when i ran the job, i got the following error message in the job log.

07:15:40 UTY1008 RDBMS failure: 3524, The user does not have CREATE TABLE access to database TEST_DB.
Highest return code encountered = '12'.

Why is this happening considering that i use the same user to acccess the dB in the SQL assistant and that time i dont get any error.
Thanks
Varun R
6 REPLIES

Re: MLoad script from JCL - Error message

mload creates error/work tables in the database, hence the user id requires CREATE TABLE access to the database. Otherwise you can specify a different database for these tables on which the user has CREATE TABLE access.

Re: MLoad script from JCL - Error message

That is true, but surprisingly, i created the target table on the dB using the same user using SQL asst. That is what is puzzling me.. :-(

Regards
Varun

Re: MLoad script from JCL - Error message

Hmm.... does the error message say which database it's referring too ?

I wonder if mload is trying to create tables in the user's database. can you try a create table from SQL Assistant under the user's own id (database) ? it could be that :o

Re: MLoad script from JCL - Error message

I do not have rights for creating table in that user id dB, but then i have clearedly mentioned in the MLoad script that the work/error tables are to be created under the target dB only...

.SET DBASE_TARGETTABLE TO 'TEST_DB';
.SET DBASE_WORKTABLE TO 'TEST_DB';
.SET DBASE_ETTABLE TO 'TEST_DB';
.SET DBASE_UVTABLE TO 'TEST_DB';

What is the general layout of these tables? Maybe i can have them created manually and see if the script works or will the MLoad fail if this is done? (Yeah i think it would fail saying that the work/error tables already exist)

Oh i am so confused...

regards
varun R

Re: MLoad script from JCL - Error message

ok..i think i got it. The script, i think, is trying to create the Mload log table under the user dB and i dont hv rights in that. But how to find out what is the default dB for creating the log table? And how do i change that or specify a particular dB for creating the log table, in the MLoad script?

I think answers to these would solve the problem... Any suggestions?

regards
varun

Re: MLoad script from JCL - Error message

In fact, the case is resolved. I just gave the dB name in front of the ML table name... (I usually jus code the ML table name)

.LOGTABLE TEST_DB.ML_TARGET_TABLE;

thanks for your time.. :-)

regards
varun r