Skocz do zawartości

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

nyac55

MYSQL [Procedura] Pętla w pętli - problem?

Polecane posty

Witam. Jak w temacie, mam problem z poprawnym utworzeniem pętli LOOP w innej pętli LOOP w języku MYSQL w procedurze. Problem poleca na tym, że pętla wewnętrza, która była tworzona jako 1 wykonuje się normalnie, a gdy dodałem pętlę zewnętrzną, dalej się wykonuje, lecz nie powtarza się daną ilość razy (pętla zewnętrzna po prostu nie działa). Poniżej umieszczam kod procedury:


BEGIN
# LOOP - Obiegi początek
SET @obieg=1;
obieg_loop: LOOP
SELECT 'obieg: '+@obieg;
IF @obieg=1 THEN
SET @zxc=5;
ELSEIF @obieg=2 THEN
SET @zxc=4;
ELSEIF @obieg=3 THEN
SET @zxc=7;
ELSE
SELECT 'błąd';
END IF;
SELECT @zxc;

# da się zrobić 1 ciągu
Set @sign= 'ABCDEFGHIJKLMNOUPRSTVWQXYZ1234567890';
Set @sign1= 'ABCDEFGHIJKLMNOUPRSTVWQXYZ';
Set @sign2= '1234567890';
Set @a = 1;
Set @z = 36;
Set @a1 = 1;
Set @z1 = 26;
Set @a2 = 1;
Set @z2 = 10;
Set @c1 = 1;
Set @c2 = 3;
Set @znak ='';
set @text = '';
# LOOP - POCZĄTEK
SET @b=0;
SELECT 'początek'+@b;
vin_loop: LOOP
# @zxc do maksymalna wartość znaków w zmiennej text
SET @b=@b+1;
IF @b<=@zxc THEN
SELECT @b;

# KOD
Set @c = (SELECT FLOOR(@c1 + (RAND() * (@c2 - @c1 + 1))));
SELECT @c;
Set @x1 = (SELECT FLOOR(@a1 + (RAND() * (@z1 - @a1 + 1))));
Set @x2 = (SELECT FLOOR(@a2 + (RAND() * (@z2 - @a2 + 1))));
Set @x = (SELECT FLOOR(@a + (RAND() * (@z - @a + 1))));
#SELECT @x1;
#SELECT @x2;
#SELECT @x;
# --------------------------------
# IF wybór alfabetu
IF @c=1 THEN
Set @znak=SUBSTRING(@sign1,@x1,1);
#SELECT @znak;
ELSEIF @c=2 THEN
Set @znak=SUBSTRING(@sign2,@x2,1);
#SELECT @znak;
ELSEIF @c=3 THEN
Set @znak=SUBSTRING(@sign,@x,1);
#SELECT @znak;
ELSE
SELECT 'blad';
END IF;

#konwersja wylosowanego znaku (cyfry, litery) na ASCII
IF @znak='0' AND @b=1 THEN
Set @gog1=48;
ELSEIF @znak='0' AND @b=2 THEN
Set @gog2=48;
ELSEIF @znak='0' AND @b=3 THEN
Set @gog3=48;
ELSEIF @znak='0' AND @b=4 THEN
Set @gog4=48;
ELSEIF @znak='0' AND @b=5 THEN
Set @gog5=48;
ELSEIF @znak='0' AND @b=6 THEN
Set @gog6=48;
ELSEIF @znak='0' AND @b=7 THEN
Set @gog7=48;
ELSEIF @znak='1' AND @b=1 THEN
Set @gog1=49;
ELSEIF @znak='1' AND @b=2 THEN
Set @gog2=49;
ELSEIF @znak='1' AND @b=3 THEN
Set @gog3=49;
ELSEIF @znak='1' AND @b=4 THEN
Set @gog4=49;
ELSEIF @znak='1' AND @b=5 THEN
Set @gog5=49;
ELSEIF @znak='1' AND @b=6 THEN
Set @gog6=49;
ELSEIF @znak='1' AND @b=7 THEN
Set @gog7=49;
ELSEIF @znak='2' AND @b=1 THEN
Set @gog1=50;
ELSEIF @znak='2' AND @b=2 THEN
Set @gog2=50;
ELSEIF @znak='2' AND @b=3 THEN
Set @gog3=50;
ELSEIF @znak='2' AND @b=4 THEN
Set @gog4=50;
ELSEIF @znak='2' AND @b=5 THEN
Set @gog5=50;
ELSEIF @znak='2' AND @b=6 THEN
Set @gog6=50;
ELSEIF @znak='2' AND @b=7 THEN
Set @gog7=50;
ELSEIF @znak='3' AND @b=1 THEN
Set @gog1=51;
ELSEIF @znak='3' AND @b=2 THEN
Set @gog2=51;
ELSEIF @znak='3' AND @b=3 THEN
Set @gog3=51;
ELSEIF @znak='3' AND @b=4 THEN
Set @gog4=51;
ELSEIF @znak='3' AND @b=5 THEN
Set @gog5=51;
ELSEIF @znak='3' AND @b=6 THEN
Set @gog6=51;
ELSEIF @znak='3' AND @b=7 THEN
Set @gog7=51;
ELSEIF @znak='4' AND @b=1 THEN
Set @gog1=52;
ELSEIF @znak='4' AND @b=2 THEN
Set @gog2=52;
ELSEIF @znak='4' AND @b=3 THEN
Set @gog3=52;
ELSEIF @znak='4' AND @b=4 THEN
Set @gog4=52;
ELSEIF @znak='4' AND @b=5 THEN
Set @gog5=52;
ELSEIF @znak='4' AND @b=6 THEN
Set @gog6=52;
ELSEIF @znak='4' AND @b=7 THEN
Set @gog7=52;
ELSEIF @znak='5' AND @b=1 THEN
Set @gog1=53;
ELSEIF @znak='5' AND @b=2 THEN
Set @gog2=53;
ELSEIF @znak='5' AND @b=3 THEN
Set @gog3=53;
ELSEIF @znak='5' AND @b=4 THEN
Set @gog4=53;
ELSEIF @znak='5' AND @b=5 THEN
Set @gog5=53;
ELSEIF @znak='5' AND @b=6 THEN
Set @gog6=53;
ELSEIF @znak='5' AND @b=7 THEN
Set @gog7=53;
ELSEIF @znak='6' AND @b=1 THEN
Set @gog1=54;
ELSEIF @znak='6' AND @b=2 THEN
Set @gog2=54;
ELSEIF @znak='6' AND @b=3 THEN
Set @gog3=54;
ELSEIF @znak='6' AND @b=4 THEN
Set @gog4=54;
ELSEIF @znak='6' AND @b=5 THEN
Set @gog5=54;
ELSEIF @znak='6' AND @b=6 THEN
Set @gog6=54;
ELSEIF @znak='6' AND @b=7 THEN
Set @gog7=54;
ELSEIF @znak='7' AND @b=1 THEN
Set @gog1=55;
ELSEIF @znak='7' AND @b=2 THEN
Set @gog2=55;
ELSEIF @znak='7' AND @b=3 THEN
Set @gog3=55;
ELSEIF @znak='7' AND @b=4 THEN
Set @gog4=55;
ELSEIF @znak='7' AND @b=5 THEN
Set @gog5=55;
ELSEIF @znak='7' AND @b=6 THEN
Set @gog6=55;
ELSEIF @znak='7' AND @b=7 THEN
Set @gog7=55;
ELSEIF @znak='8' AND @b=1 THEN
Set @gog1=56;
ELSEIF @znak='8' AND @b=2 THEN
Set @gog2=56;
ELSEIF @znak='8' AND @b=3 THEN
Set @gog3=56;
ELSEIF @znak='8' AND @b=4 THEN
Set @gog4=56;
ELSEIF @znak='8' AND @b=5 THEN
Set @gog5=56;
ELSEIF @znak='8' AND @b=6 THEN
Set @gog6=56;
ELSEIF @znak='8' AND @b=7 THEN
Set @gog7=56;
ELSEIF @znak='9' AND @b=1 THEN
Set @gog1=57;
ELSEIF @znak='9' AND @b=2 THEN
Set @gog2=57;
ELSEIF @znak='9' AND @b=3 THEN
Set @gog3=57;
ELSEIF @znak='9' AND @b=4 THEN
Set @gog4=57;
ELSEIF @znak='9' AND @b=5 THEN
Set @gog5=57;
ELSEIF @znak='9' AND @b=6 THEN
Set @gog6=57;
ELSEIF @znak='9' AND @b=7 THEN
Set @gog7=57;
ELSEIF @znak='A' AND @b=1 THEN
Set @gog1=65;
ELSEIF @znak='A' AND @b=2 THEN
Set @gog2=65;
ELSEIF @znak='A' AND @b=3 THEN
Set @gog3=65;
ELSEIF @znak='A' AND @b=4 THEN
Set @gog4=65;
ELSEIF @znak='A' AND @b=5 THEN
Set @gog5=65;
ELSEIF @znak='A' AND @b=6 THEN
Set @gog6=65;
ELSEIF @znak='A' AND @b=7 THEN
Set @gog7=65;
ELSEIF @znak='B' AND @b=1 THEN
Set @gog1=66;
ELSEIF @znak='B' AND @b=2 THEN
Set @gog2=66;
ELSEIF @znak='B' AND @b=3 THEN
Set @gog3=66;
ELSEIF @znak='B' AND @b=4 THEN
Set @gog4=66;
ELSEIF @znak='B' AND @b=5 THEN
Set @gog5=66;
ELSEIF @znak='B' AND @b=6 THEN
Set @gog6=66;
ELSEIF @znak='B' AND @b=7 THEN
Set @gog7=66;
ELSEIF @znak='C' AND @b=1 THEN
Set @gog1=67;
ELSEIF @znak='C' AND @b=2 THEN
Set @gog2=67;
ELSEIF @znak='C' AND @b=3 THEN
Set @gog3=67;
ELSEIF @znak='C' AND @b=4 THEN
Set @gog4=67;
ELSEIF @znak='C' AND @b=5 THEN
Set @gog5=67;
ELSEIF @znak='C' AND @b=6 THEN
Set @gog6=67;
ELSEIF @znak='C' AND @b=7 THEN
Set @gog7=67;
ELSEIF @znak='D' AND @b=1 THEN
Set @gog1=68;
ELSEIF @znak='D' AND @b=2 THEN
Set @gog2=68;
ELSEIF @znak='D' AND @b=3 THEN
Set @gog3=68;
ELSEIF @znak='D' AND @b=4 THEN
Set @gog4=68;
ELSEIF @znak='D' AND @b=5 THEN
Set @gog5=68;
ELSEIF @znak='D' AND @b=6 THEN
Set @gog6=68;
ELSEIF @znak='D' AND @b=7 THEN
Set @gog7=68;
ELSEIF @znak='E' AND @b=1 THEN
Set @gog1=69;
ELSEIF @znak='E' AND @b=2 THEN
Set @gog2=69;
ELSEIF @znak='E' AND @b=3 THEN
Set @gog3=69;
ELSEIF @znak='E' AND @b=4 THEN
Set @gog4=69;
ELSEIF @znak='E' AND @b=5 THEN
Set @gog5=69;
ELSEIF @znak='E' AND @b=6 THEN
Set @gog6=69;
ELSEIF @znak='E' AND @b=7 THEN
Set @gog7=69;
ELSEIF @znak='F' AND @b=1 THEN
Set @gog1=70;
ELSEIF @znak='F' AND @b=2 THEN
Set @gog2=70;
ELSEIF @znak='F' AND @b=3 THEN
Set @gog3=70;
ELSEIF @znak='F' AND @b=4 THEN
Set @gog4=70;
ELSEIF @znak='F' AND @b=5 THEN
Set @gog5=70;
ELSEIF @znak='F' AND @b=6 THEN
Set @gog6=70;
ELSEIF @znak='F' AND @b=7 THEN
Set @gog7=70;
ELSEIF @znak='G' AND @b=1 THEN
Set @gog1=71;
ELSEIF @znak='G' AND @b=2 THEN
Set @gog2=71;
ELSEIF @znak='G' AND @b=3 THEN
Set @gog3=71;
ELSEIF @znak='G' AND @b=4 THEN
Set @gog4=71;
ELSEIF @znak='G' AND @b=5 THEN
Set @gog5=71;
ELSEIF @znak='G' AND @b=6 THEN
Set @gog6=71;
ELSEIF @znak='G' AND @b=7 THEN
Set @gog7=71;
ELSEIF @znak='H' AND @b=1 THEN
Set @gog1=72;
ELSEIF @znak='H' AND @b=2 THEN
Set @gog2=72;
ELSEIF @znak='H' AND @b=3 THEN
Set @gog3=72;
ELSEIF @znak='H' AND @b=4 THEN
Set @gog4=72;
ELSEIF @znak='H' AND @b=5 THEN
Set @gog5=72;
ELSEIF @znak='H' AND @b=6 THEN
Set @gog6=72;
ELSEIF @znak='H' AND @b=7 THEN
Set @gog7=72;
ELSEIF @znak='I' AND @b=1 THEN
Set @gog1=73;
ELSEIF @znak='I' AND @b=2 THEN
Set @gog2=73;
ELSEIF @znak='I' AND @b=3 THEN
Set @gog3=73;
ELSEIF @znak='I' AND @b=4 THEN
Set @gog4=73;
ELSEIF @znak='I' AND @b=5 THEN
Set @gog5=73;
ELSEIF @znak='I' AND @b=6 THEN
Set @gog6=73;
ELSEIF @znak='I' AND @b=7 THEN
Set @gog7=73;
ELSEIF @znak='J' AND @b=1 THEN
Set @gog1=74;
ELSEIF @znak='J' AND @b=2 THEN
Set @gog2=74;
ELSEIF @znak='J' AND @b=3 THEN
Set @gog3=74;
ELSEIF @znak='J' AND @b=4 THEN
Set @gog4=74;
ELSEIF @znak='J' AND @b=5 THEN
Set @gog5=74;
ELSEIF @znak='J' AND @b=6 THEN
Set @gog6=74;
ELSEIF @znak='J' AND @b=7 THEN
Set @gog7=74;
ELSEIF @znak='K' AND @b=1 THEN
Set @gog1=75;
ELSEIF @znak='K' AND @b=2 THEN
Set @gog2=75;
ELSEIF @znak='K' AND @b=3 THEN
Set @gog3=75;
ELSEIF @znak='K' AND @b=4 THEN
Set @gog4=75;
ELSEIF @znak='K' AND @b=5 THEN
Set @gog5=75;
ELSEIF @znak='K' AND @b=6 THEN
Set @gog6=75;
ELSEIF @znak='K' AND @b=7 THEN
Set @gog7=75;
ELSEIF @znak='L' AND @b=1 THEN
Set @gog1=76;
ELSEIF @znak='L' AND @b=2 THEN
Set @gog2=76;
ELSEIF @znak='L' AND @b=3 THEN
Set @gog3=76;
ELSEIF @znak='L' AND @b=4 THEN
Set @gog4=76;
ELSEIF @znak='L' AND @b=5 THEN
Set @gog5=76;
ELSEIF @znak='L' AND @b=6 THEN
Set @gog6=76;
ELSEIF @znak='L' AND @b=7 THEN
Set @gog7=76;
ELSEIF @znak='M' AND @b=1 THEN
Set @gog1=77;
ELSEIF @znak='M' AND @b=2 THEN
Set @gog2=77;
ELSEIF @znak='M' AND @b=3 THEN
Set @gog3=77;
ELSEIF @znak='M' AND @b=4 THEN
Set @gog4=77;
ELSEIF @znak='M' AND @b=5 THEN
Set @gog5=77;
ELSEIF @znak='M' AND @b=6 THEN
Set @gog6=77;
ELSEIF @znak='M' AND @b=7 THEN
Set @gog7=77;
ELSEIF @znak='N' AND @b=1 THEN
Set @gog1=78;
ELSEIF @znak='N' AND @b=2 THEN
Set @gog2=78;
ELSEIF @znak='N' AND @b=3 THEN
Set @gog3=78;
ELSEIF @znak='N' AND @b=4 THEN
Set @gog4=78;
ELSEIF @znak='N' AND @b=5 THEN
Set @gog5=78;
ELSEIF @znak='N' AND @b=6 THEN
Set @gog6=78;
ELSEIF @znak='N' AND @b=7 THEN
Set @gog7=78;
ELSEIF @znak='O' AND @b=1 THEN
Set @gog1=79;
ELSEIF @znak='O' AND @b=2 THEN
Set @gog2=79;
ELSEIF @znak='O' AND @b=3 THEN
Set @gog3=79;
ELSEIF @znak='O' AND @b=4 THEN
Set @gog4=79;
ELSEIF @znak='O' AND @b=5 THEN
Set @gog5=79;
ELSEIF @znak='O' AND @b=6 THEN
Set @gog6=79;
ELSEIF @znak='O' AND @b=7 THEN
Set @gog7=79;
ELSEIF @znak='U' AND @b=1 THEN
Set @gog1=80;
ELSEIF @znak='U' AND @b=2 THEN
Set @gog2=80;
ELSEIF @znak='U' AND @b=3 THEN
Set @gog3=80;
ELSEIF @znak='U' AND @b=4 THEN
Set @gog4=80;
ELSEIF @znak='U' AND @b=5 THEN
Set @gog5=80;
ELSEIF @znak='U' AND @b=6 THEN
Set @gog6=80;
ELSEIF @znak='U' AND @b=7 THEN
Set @gog7=80;
ELSEIF @znak='P' AND @b=1 THEN
Set @gog1=81;
ELSEIF @znak='P' AND @b=2 THEN
Set @gog2=81;
ELSEIF @znak='P' AND @b=3 THEN
Set @gog3=81;
ELSEIF @znak='P' AND @b=4 THEN
Set @gog4=81;
ELSEIF @znak='P' AND @b=5 THEN
Set @gog5=81;
ELSEIF @znak='P' AND @b=6 THEN
Set @gog6=81;
ELSEIF @znak='P' AND @b=7 THEN
Set @gog7=81;
ELSEIF @znak='R' AND @b=1 THEN
Set @gog1=82;
ELSEIF @znak='R' AND @b=2 THEN
Set @gog2=82;
ELSEIF @znak='R' AND @b=3 THEN
Set @gog3=82;
ELSEIF @znak='R' AND @b=4 THEN
Set @gog4=82;
ELSEIF @znak='R' AND @b=5 THEN
Set @gog5=82;
ELSEIF @znak='R' AND @b=6 THEN
Set @gog6=82;
ELSEIF @znak='R' AND @b=7 THEN
Set @gog7=82;
ELSEIF @znak='S' AND @b=1 THEN
Set @gog1=83;
ELSEIF @znak='S' AND @b=2 THEN
Set @gog2=83;
ELSEIF @znak='S' AND @b=3 THEN
Set @gog3=83;
ELSEIF @znak='S' AND @b=4 THEN
Set @gog4=83;
ELSEIF @znak='S' AND @b=5 THEN
Set @gog5=83;
ELSEIF @znak='S' AND @b=6 THEN
Set @gog6=83;
ELSEIF @znak='S' AND @b=7 THEN
Set @gog7=83;
ELSEIF @znak='T' AND @b=1 THEN
Set @gog1=84;
ELSEIF @znak='T' AND @b=2 THEN
Set @gog2=84;
ELSEIF @znak='T' AND @b=3 THEN
Set @gog3=84;
ELSEIF @znak='T' AND @b=4 THEN
Set @gog4=84;
ELSEIF @znak='T' AND @b=5 THEN
Set @gog5=84;
ELSEIF @znak='T' AND @b=6 THEN
Set @gog6=84;
ELSEIF @znak='T' AND @b=7 THEN
Set @gog7=84;
ELSEIF @znak='U' AND @b=1 THEN
Set @gog1=85;
ELSEIF @znak='U' AND @b=2 THEN
Set @gog2=85;
ELSEIF @znak='U' AND @b=3 THEN
Set @gog3=85;
ELSEIF @znak='U' AND @b=4 THEN
Set @gog4=85;
ELSEIF @znak='U' AND @b=5 THEN
Set @gog5=85;
ELSEIF @znak='U' AND @b=6 THEN
Set @gog6=85;
ELSEIF @znak='U' AND @b=7 THEN
Set @gog7=85;
ELSEIF @znak='V' AND @b=1 THEN
Set @gog1=86;
ELSEIF @znak='V' AND @b=2 THEN
Set @gog2=86;
ELSEIF @znak='V' AND @b=3 THEN
Set @gog3=86;
ELSEIF @znak='V' AND @b=4 THEN
Set @gog4=86;
ELSEIF @znak='V' AND @b=5 THEN
Set @gog5=86;
ELSEIF @znak='V' AND @b=6 THEN
Set @gog6=86;
ELSEIF @znak='V' AND @b=7 THEN
Set @gog7=86;
ELSEIF @znak='W' AND @b=1 THEN
Set @gog1=87;
ELSEIF @znak='W' AND @b=2 THEN
Set @gog2=87;
ELSEIF @znak='W' AND @b=3 THEN
Set @gog3=87;
ELSEIF @znak='W' AND @b=4 THEN
Set @gog4=87;
ELSEIF @znak='W' AND @b=5 THEN
Set @gog5=87;
ELSEIF @znak='W' AND @b=6 THEN
Set @gog6=87;
ELSEIF @znak='W' AND @b=7 THEN
Set @gog7=87;
ELSEIF @znak='X' AND @b=1 THEN
Set @gog1=88;
ELSEIF @znak='X' AND @b=2 THEN
Set @gog2=88;
ELSEIF @znak='X' AND @b=3 THEN
Set @gog3=88;
ELSEIF @znak='X' AND @b=4 THEN
Set @gog4=88;
ELSEIF @znak='X' AND @b=5 THEN
Set @gog5=88;
ELSEIF @znak='X' AND @b=6 THEN
Set @gog6=88;
ELSEIF @znak='X' AND @b=7 THEN
Set @gog7=88;
ELSEIF @znak='Y' AND @b=1 THEN
Set @gog1=89;
ELSEIF @znak='Y' AND @b=2 THEN
Set @gog2=89;
ELSEIF @znak='Y' AND @b=3 THEN
Set @gog3=89;
ELSEIF @znak='Y' AND @b=4 THEN
Set @gog4=89;
ELSEIF @znak='Y' AND @b=5 THEN
Set @gog5=89;
ELSEIF @znak='Y' AND @b=6 THEN
Set @gog6=89;
ELSEIF @znak='Y' AND @b=7 THEN
Set @gog7=89;
ELSEIF @znak='Z' AND @b=1 THEN
Set @gog1=90;
ELSEIF @znak='Z' AND @b=2 THEN
Set @gog2=90;
ELSEIF @znak='Z' AND @b=3 THEN
Set @gog3=90;
ELSEIF @znak='Z' AND @b=4 THEN
Set @gog4=90;
ELSEIF @znak='Z' AND @b=5 THEN
Set @gog5=90;
ELSEIF @znak='Z' AND @b=6 THEN
Set @gog6=90;
ELSEIF @znak='Z' AND @b=7 THEN
Set @gog7=90;
ELSE
SET @gog='error';
END IF;

# IF - tworzenie zmiennej text
IF @b=1 THEN
SET @text=(SELECT CHAR(@gog1));
ELSEIF @b=2 THEN
SET @text=(SELECT CHAR(@gog1,@gog2));

ELSEIF @b=3 THEN
SET @text=(SELECT CHAR(@gog1,@gog2,@gog3));

ELSEIF @b=4 THEN
SET @text=(SELECT CHAR(@gog1,@gog2,@gog3,@gog4));
ELSEIF @b=5 THEN
SET @text=(SELECT CHAR(@gog1,@gog2,@gog3,@gog4,@gog5));
ELSEIF @b=6 THEN
SET @text=(SELECT CHAR(@gog1,@gog2,@gog3,@gog4,@gog5,@gog6));
ELSEIF @b=7 THEN
SET @text=(SELECT CHAR(@gog1,@gog2,@gog3,@gog4,@gog5,@gog6,@gog7));
ELSE
SELECT 'error';
END IF;

SELECT @text;
# PĘTLA - KONIEC
ELSE
SELECT "Przekroczono zakres: "+@b;
##############################
# przypisanie ciagu z obiegu do text
IF @obieg=1 THEN
Set @text1=@text;
ELSEIF @obieg=2 THEN
Set @text2=@text;
ELSEIF @obieg=3 THEN
Set @text3=@text;
ELSE
Select 'Koniec obiegów';
END IF;
SET @obieg=@obieg+1;
SELECT @obieg;
###########################
LEAVE vin_loop;
END IF;
END LOOP vin_loop;
#2
ITERATE obieg_loop; # TUTAJ BRAKOWAŁO TEJ LINIJKI
LEAVE obieg_loop;
#END IF;
END LOOP obieg_loop;
SELECT @text1;
SELECT @text2;
SELECT @text3;
Set @text=(SELECT CHAR(@text1,45,@text2,45,@text3));
SELECT @text;
END

Proszę o pomoc w tym temacie.

Link do komentarza
Udostępnij na innych stronach

Już sobie poradziłem wink_prosty.gif Wcześniej analizowałem kod kilka razy, zmieniałem coś i sprawdzałem efekt, lecz nie przynosiło to skutku, dlatego też napisałem ten temat. Następnie zacząłem sprawdzać popdpowiedzi w internecie i postanowiłem stworzyć inną małą procedurę, aby sprawdzić jak to działa na mniejszym przykładzie, po czym okazało się, że w moim przykładzie brakuje 1 linijki, a konkretnie:


ITERATE obieg_loop;

Kod powyżej także poprawiłem.

Co więcej moja pętla wewnętrzna nie miała tej instrukcji i działała poprawnie, a wstawienie jej powodowało wcześniej zawieszanie bazy. Natomiast w pętli zewnętrznej była wymagana i działa poprawnie ;p

_+_+_+_

W takim razie proszę o zamknięcie tematu :)

Link do komentarza
Udostępnij na innych stronach

Tak swoją d drogą, to ten kod wygląda koszmarnie - z tego, co widzę, to każde 7 ifów można by zastąpić jednym (if znak ... AND b>=1 AND b<=7), a i pewnie da się wykonać operację (znak - 'A'), co pozwoli jeszcze konkretniej ograniczyć ilość linijek.

Link do komentarza
Udostępnij na innych stronach



  • Kto przegląda   0 użytkowników

    • Brak zalogowanych użytkowników przeglądających tę stronę.
×
×
  • Utwórz nowe...