ОБЪЕДИНЕННЫЙ РАБОЧИЙ СОЮЗ WHILE DO В MYSQL

Поскольку я должен использовать WHILE DO в MySQL

у меня выходит ошибка в SET I = (I+1);//это это использовало для sumatoria и продвижения WHILE

WHILE I<CotId AND Aux=0 do
SET Nom_CatPer = (SELECT Nombre_CatPer FROM  tbl_categoria_permisos WHERE Id_CategoriaPermisos = I);
SET Sig_CatPermisos = (SELECT Siglas_CatPermisos FROM  tbl_categoria_permisos WHERE Id_CategoriaPermisos = I);

If Nom_CatPer = _Nombre_CatPer then
    SELECT ("#101") INTO _Sw;  -- #101 ERROR NOMBRE DE CATEGORIA PERMISO REPETIDA
    SET Aux=1;
ELSE
    If Sig_CatPermisos = _Siglas_CatPermisos then
        SELECT ("#102") INTO _Sw; -- #102 ERROR SIGLAS DE CATEGORIA PERMISO REPETIDA
        SET Aux=1;
    END IF
END IF
SET I=(I+1); -- aqui me señala error en SINTAXIS
END WHILE
0
задан 20.03.2019, 23:30
1 ответ

Пробуй asГ-:

SET @I = 0;
    SET @Aux = TUVALOR;
    WHILE @I < CotId AND @Aux = 0 do
        SET @Nom_CatPer = (SELECT Nombre_CatPer FROM  tbl_categoria_permisos WHERE Id_CategoriaPermisos = @I);
        SET @Sig_CatPermisos = (SELECT Siglas_CatPermisos FROM  tbl_categoria_permisos WHERE Id_CategoriaPermisos = @I);

        If @Nom_CatPer = _@Nombre_CatPer then
            SELECT ("#101") INTO _Sw;  -- #101 ERROR NOMBRE DE CATEGORIA PERMISO REPETIDA
            SET @Aux=1;
        ELSE IF @Sig_CatPermisos = @_Siglas_CatPermisos then
            SELECT ("#102") INTO _Sw; -- #102 ERROR SIGLAS DE CATEGORIA PERMISO REPETIDA
            SET @Aux=1;
        END IF
    END IF
    SET @I=(@I+1);
END WHILE;

Переменные под MySQL инициализируются с одним @, END WHILE в конце концов использует ;. Пробуй с этим.

0
ответ дан 02.12.2019, 05:21
  • 1
    уже я это сделал у меня выходит ошибка, в других переменная, как я это сделал, не выходит у меня одинокая ошибка у меня выходит этот I=I+1; я поместил его (;) в finalde WHILE DO (END WHIL;) меня продолжают вытекать ошибка –  Ing. JP 21.03.2019, 00:23
  • 2
    Если в ves использования SELECT (" #101") INTO _Sw, ты используешь simplements SELECT " #101"? –  Eliseo 21.03.2019, 00:30
  • 3
    С этим кодом SELECT (" #101") INTO _Sw я распределяю #101 в мою переменную _Sw, это это imcompleto SELECT " #101" –  Ing. JP 21.03.2019, 00:41
  • 4
    БОЛЬШОЕ СПАСИБО ОЦЕНЕННЫЙ –  Ing. JP 22.03.2019, 02:23

Теги

Похожие вопросы