Ошибка синтаксиса SQL при создании хранимой процедуры в MySQL

Первоначально скрываем div и прикрепляем событие onload к изображениям.

Создайте атрибут данных, который увеличивается для каждого загруженного изображения, затем отобразите div, когда он равен общему количеству изображений:

$('#graphic img').on('load', function() {
  let loaded = ($('#graphic').data('loaded') + 1) || 1;
  $('#graphic').data('loaded', loaded);
  if (loaded == $('#graphic img').length) {
    $('#graphic').show();
  }
});

$('#graphic img').on('load', function() {
  let loaded = ($('#graphic').data('loaded') + 1) || 1;
  $('#graphic').data('loaded', loaded);
  if (loaded == $('#graphic img').length) {
    $('#graphic').show();
  }
});
#graphic {
  display: none;
}
[113 ]

7
задан Philipp Maurer 5 October 2018 в 09:40
поделиться

3 ответа

Поскольку строка 3 содержит первое ; возможно, у Вас есть проблема с Вашими разделителями.

См. http://dev.mysql.com/doc/refman/5.0/en/stored-programs-defining.html

DELIMITER //
CREATE PROCEDURE dorepeat(p1 INT)
BEGIN
    SET @x = 0;
    REPEAT SET @x = @x + 1; UNTIL @x > p1 END REPEAT;
END//
DELIMITER ;
25
ответ дан 6 December 2019 в 06:38
поделиться

Спасибо, рядом '' в строке 3 была моя проблема, и оператор разделителя зафиксировал ее! Я всегда хочу вещи иметь смысл, и это делает. Как '' указывает, что это в конце процедуры, но никакой оператор END не был найден таким образом синтаксическую ошибку. И я задался вопросом, почему я продолжал видеть много людей, использующих оператор разделителя. Я вижу свет!

1
ответ дан 6 December 2019 в 06:38
поделиться

Вы никогда не объявляете свою @child_left переменную.

1
ответ дан 6 December 2019 в 06:38
поделиться
Другие вопросы по тегам:

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