Использован INT вместо DECIMAL
Симптом: Дробные значения обрезаются или результат становится грубым.
Исправление: Для параметров и результата используйте DECIMAL.
Практикум 11 закрепляет пользовательские функции MySQL на трёх расчётных задачах.
Нужно создать cm_to_inches, sphere_volume и degrees_to_radians.
Все три функции принимают числовой аргумент, возвращают DECIMAL и используют DETERMINISTIC.
Минимальный пример: SELECT cm_to_inches(10); должен вернуть значение в дюймах по формуле cm * 0.393701.
Топ-3 ошибки: потерять точность из-за INT, забыть POW(radius, 3), написать DELIMITER; без пробела и разделителя.
Симптом: Дробные значения обрезаются или результат становится грубым.
Исправление: Для параметров и результата используйте DECIMAL.
Симптом: Объём шара получается слишком маленьким.
Исправление: Используйте POW(radius, 3), а не radius * 3.
Симптом: 180 градусов не даёт значение около π.
Исправление: Пишите degrees * (PI() / 180).
Симптом: Функция создана, но ошибка формулы остаётся незамеченной.
Исправление: После каждой функции выполните хотя бы один вызов SELECT.