То время цикла определяет разницу между количеством продукта запрашиваемой и соответствующего количества на складе (таблицы Products). Это различие находится в соответствующей ячейке во временном порядке table.The informUser informUser имеет в качестве входных параметров, иnumberOfRowsshort. Вы уже знаете, использованиеnumberOfRows. short было упомянуто выше. Это может иметь значение нуль или 1. Когда это имеет нулевое, то это означает, что в то время мы предполагаем, что каждый из количества продуктов клиент запросил, имеется.
Эта процедура будет проверять, если это так для каждого из запрашиваемых количествах. Если это не так для любого требуемого количества, то значениеshort будет изменено на 1 (в этом порядке). Соединение заявление процедуры, имеет две секции: секцию декларации и раздел петлю,. Код для процедуры: #procedure сообщить пользователю любого дефицита разделитель //CREATE PROCEDURE informUser (ПО numberOfRows INTEGER, из короткое целое) начинают # счетчик цикла переменной DECLARE я Integer умолчанию 1; #variable по количеству, что останется DECLARE INTEGER QtyRemainVar; Хотя я ВЫБОР ИЗ QtyRemain SaleDetailsTemp WHERE ID = я што QtyRemainVar; ЕСЛИ QtyRemainVar SELECT, ProductName, "короткий по" КАК инцидента, (QtyRemain * -1), как QuantityRemaining ОТ SaleDetailsTemp WHERE ID = я; SET коротким = 1; ЕЩЕ SET короткие = 0; END IF; КОМПЛЕКТ я = я + 1; КОНЕЦ ВРЕМЯ; КОНЕЦ; //Вычитание количества продукта в наличии от количества запрашиваемой уже было сделано (в ранее описанном порядке), а результаты помещены в соответствующие клетки в временную таблицу.
То время цикла здесь проверяет, если любое из этих значений в таблице продукта меньше нуля (отрицательная). Если это так, он устанавливает значениеshort до 1 (через, короткие, локально объявлен в составной оператор). Если есть какие-либо недостатка, то время цикла информирует пользователя с помощью SEL