CREATE PROCEDURE - error 1064 - MySQL

Узнай цену своей работы

Формулировка задачи:

ВСЕМ ПРИВЕТ, ПОДСКАЖИТЕ ПОЖАЛУЙСТА ПОЧЕМУ НЕ РАБОТАЕТ ?7 Я УЖЕ ПОВСЯКОМУ ПЕРЕПРОБЫВАЛ
Листинг программы
  1. CREATE PROCEDURE dowhile(maxi INT)
  2. BEGIN
  3. SET @i = 0
  4. WHILE @i<maxi DO
  5. SELECT F_STUDENT, F_FACULTET FROM Main
  6. WHERE F_FACULTET = (1 OR 2 OR 3) AND F_STUDENT = @i;
  7. SET @i = @i+1;
  8. END WHILE;
  9. END
  10. CALL dowhile(5);
то же самое
Листинг программы
  1. CREATE PROCEDURE dowhile()
  2. BEGIN
  3. DECLARE i INT DEFAULT 0;
  4. WHILE i<4 DO
  5. SELECT F_STUDENT, F_FACULTET FROM Main;
  6. WHERE F_FACULTET = (1 OR 2 OR 3) AND F_STUDENT = i;
  7. SET i = i+1;
  8. END WHILE;
  9. END
  10. CALL dowhile(5);
выдает #1064 - У вас ошибка в запросе. Изучите документацию по используемой версии MySQL на предмет корректного синтаксиса около '' на строке 3 пишу запрос в разделе SQL В PHPMYADMIN
вообщем я хочу добиться выполнения этого куска когда через цикл
Листинг программы
  1. SELECT F_STUDENT, F_FACULTET FROM Main
  2. WHERE F_FACULTET = (1 OR 2 OR 3) AND F_STUDENT = i;

Решение задачи: «CREATE PROCEDURE - error 1064»

textual
Листинг программы
  1. DELIMITER $$
  2.  
  3. CREATE PROCEDURE dowhile(maxi INT)
  4. BEGIN
  5.     SET @i = 0;
  6.    
  7.     WHILE @i < maxi DO
  8.         SELECT F_STUDENT, F_FACULTET FROM Main WHERE F_FACULTET = (1 OR 2 OR 3) AND F_STUDENT = @i;
  9.         SET @i = @i+1;
  10.     END WHILE;
  11. END$$
  12.  
  13. DELIMITER ;

Объяснение кода листинга программы

  1. Создание процедуры с именем dowhile
  2. Установка переменной @i равной 0
  3. В цикле WHILE с условием @i меньше maxi выполняются следующие действия:
  4. Выполняется запрос SELECT к таблице Main с условием, что значение столбца F_FACULTET равно 1, 2 или 3 и значение столбца F_STUDENT равно текущему значению переменной @i
  5. Значение переменной @i увеличивается на 1
  6. Цикл повторяется до тех пор, пока условие не станет ложным
  7. Завершение процедуры

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.625 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут