PDA

View Full Version : Declare Cursor bei create procedure meldet SQL0104, Status 42601



msost
25-09-20, 08:53
Moin,

ich möchte einen create procedure ausführen (per ACS SQL-Editor).
Dabei stoppt es beim Declare Cursor und der Name des Cursors wird angemeckert (Token ungültig).

Scheint als wenn irgendwo ein Syntaxfehler drin ist. Ich sehe ihn aber nicht...
Oder gibt's noch weitere mögliche Gründe?

Grüße

Matthias

-------------------------------------------
create or replace procedure EIBOBJ/CHK_IBAN (
in inIBAN char(34) default ' ',
out outStatus varchar(10) ,
out outMessage varchar(256) ,
out outIBAN1 char(34) ,
out outIBAN2 char(42)
)
language sql
reads sql data
program type sub
concurrent access resolution default
dynamic result sets 1
old savepoint level
commit on return no

set option extind = *yes

begin

declare SQLCode integer default 0;
declare Alphabet CHAR(30) DEFAULT 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
declare inLand CHAR(2);
declare wrkIBAN CHAR(34);
declare wrkIBAN2 CHAR(120);
declare wrkCounter INTEGER;
declare wrkLoopCnt INTEGER;
declare wrk97 DECIMAL(2, 0);
declare wrkdecIBAN decimal(63, 0);
declare wrkRemaind decimal(5, 2);

declare exit handler for SQLException, SQLWarning begin

end;


declare LandCod insensitive cursor for
select
ILand,
ILang,
ISepa,
ILandBez
from EIBDTA999/IBANCTRY
where ILand = inLand;

B.Hauser
25-09-20, 08:57
Cursors müssen nach den Variablen und vor den Handlern deklariert werden

Birgitta

msost
25-09-20, 09:00
Merci!

Viele Grüße

Matthias