Quantcast
Channel: dBforums – Everything on Databases, Design, Developers and Administrators
Viewing all articles
Browse latest Browse all 13329

Stored procedure errors.

$
0
0
Hi, i'm new to DB2 and after lot of effort i wrote this stored procedure, but on execution i'm getting following errors

Expected tokens may include: "END-OF-STATEMENT".. SQLCODE=-104, SQLSTATE=42601, "BEGIN-OF-STATEMENT"

I have no clue on this...below is the code


create or replace procedure ODS_T.datapartition(IN schemaname CHAR(10), IN tablename CHAR(20), IN jobid INT)
SPECIFIC ODS_T.datapartition
MODIFIES SQL DATA
NOT DETERMINISTIC
NULL CALL
LANGUAGE SQL EXTERNAL ACTION
INHERIT SPECIAL REGISTERS
BEGIN
DECLARE V_SCHEMANAME VARCHAR(1024);
DECLARE V_TABLENAME VARCHAR(1024);
DECLARE V_JOBID INTEGER;
DECLARE V_PART_PER VARCHAR(1024);
DECLARE V_BUSINESS_DATE VARCHAR(10);
DECLARE V_SUFFIX VARCHAR(100);
DECLARE V_SQLSTATE VARCHAR(100);
DECLARE V_SQLCODE INTEGER;
DECLARE a varchar(1024);
DECLARE V_DYNSQL varchar(1024);

--select sqlstate into V_SQLSTATE from sysibm.sysdummy1;
--select sqlcode into V_SQLCODE from sysibm.sysdummy1;
set V_SCHEMANAME =schemaname;
set V_TABLENAME =tablename;
set V_JOBID =jobid;
select PART_PER into V_PART_PER from CTRL_T.CTRL_TARGET where upper(TARGET_TABLE) = upper(V_TABLENAME) and upper(TARGET_SCHEMA)=upper(V_SCHEMANAME);
select to_char(BUSINESS_DATE, 'YYYY-MM-DD') into V_BUSINESS_DATE from ctrl_t.ctrl_load where JOB_STATUS=0 and JOB_ID=jobid and upper(TARGET_TABLE) = upper(V_TABLENAME) and upper(TARGET_SCHEMA)=upper(V_SCHEMANAME);
set V_SUFFIX=VARCHAR_FORMAT(BUSINESS_DATE,'YYYY/MM/DD');
set a='PART_'||V_PART_PER||'_'||V_SUFFIX;

set V_DYNSQL='ALTER TABLE' || V_SCHEMANAME.V_TABLENAME || 'ADD PARTITION' || a || 'STARTING from' || V_BUSINESS_DATE || 'ENDING at' || V_BUSINESS_DATE || 'inclusive';
EXECUTE IMMEDIATE V_DYNSQL;
END

Viewing all articles
Browse latest Browse all 13329

Trending Articles