cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Using ADMIN_TABLE_MOVE or DB6CONV to move VBDATA

Former Member
0 Likes
2,834

When trying to correct DB2 DB Deadlocks on VBDATA using saptools procedure (SAP Note1430621) we received the following error from the db2 command prompt

db2 => call saptools.online_table_move('SAPWAD','VBDATA','WAD#VBDATAD','WAD#VBDATAI','','','','','"VBKEY" VARCHAR(96) NOT NULL WITH DEFAULT '' '' ,"VBMODCNT" INTEGER NOT NULL WITH DEFAULT 0 ,"VBBLKNO" INTEGER NOT NULL WITH DEFAULT 0 ,"VBLEN" SMALLINT NOT NULL WITH DEFAULT 0 ,"VBDATA" VARCHAR(30000) FOR BIT DATA ','MOVE');

SQL0440N No authorized routine named "SAPTOOLS.ONLINE_TABLE_MOVE" of type

"PROCEDURE" having compatible arguments was found. SQLSTATE=42884

and when using the same syntax within a .sql script receive the error:

jq03a010:db2wad 58> ./onlinemove.sql

./onlinemove.sql: Syntax error at line 1: `(' not expected.

Instead of having to use the ADMIN_TABLE_MOVE procedure, can we use DB6CONV to move special flag "VBDATA" VARCHAR(30000) FOR BIT DATA ', as shown in the script below:

call saptools.online_table_move(

'SAPWAD',

'VBDATA',

'WAD#VBDATAD',

'WAD#VBDATAI',

'',

'',

'',

'',

'"VBKEY" VARCHAR(96) NOT NULL WITH DEFAULT '' '' ,

"VBMODCNT" INTEGER NOT NULL WITH DEFAULT 0 ,

"VBBLKNO" INTEGER NOT NULL WITH DEFAULT 0 ,

"VBLEN" SMALLINT NOT NULL WITH DEFAULT 0 ,

"VBDATA" VARCHAR(30000) FOR BIT DATA ',

'MOVE')

;

View Entire Topic
0 Likes

Hi Natasha,

the syntax of your calls is wrong (for the admin_move_table as well as for the online_table_move). Why do you not use the DB6CONV to move the tables? This would be the easiest and savest way.

Best Regards

Carola

Former Member
0 Likes

Hi Carola,

Do you know the correct syntax? I have been testing different scripts and nothing works, this is what an SAP Note states but it isn't correct. Can we use DB6CONV to move special flag "VBDATA" VARCHAR(30000) FOR BIT DATA '? I have been told this was not guaranteed, do you understand otherwise?