Я получаю сообщение об ошибке: 1305 при попытке вызвать функцию в MySQL - PullRequest
0 голосов
/ 27 сентября 2018

Я создаю функцию с именем triangleType, которая используется для определения типа треугольника;однако консоль выдает ошибку: SELECT triangle_type (A, B, C) FROM TRIANGLES LIMIT 0, 1000 Код ошибки: 1305. FUNCTION practice.triangle_type не существует 0,00055 сек.Я не уверен, как найти эту функцию.Я пытаюсь использовать PRACTICE.TRIANGLES, но это не работает.Спасибо.

I have a schema called

Код:

DELIMITER $$
USE `PRACTICE`$$

CREATE FUNCTION triangleType(A int, B int, C int)
RETURNS varchar(14)

DETERMINISTIC

BEGIN
    DECLARE triangle_type VARCHAR(14);
    IF A = B AND B = C AND ((A+B) >C OR (A+C) >B OR (B+C) > A) THEN
            SET triangle_type = "Equilateral";

    ELSE IF (A=B OR B=C OR A=C) AND ((A+B) >C OR (A+C) >B OR (B+C) > A)      THEN
            SET triangle_type = "Isosceles";

    ELSE IF (A<>B AND B<>C AND A<>C) AND ((A+B) >C OR (A+C) >B OR (B+C) > A)THEN
            SET triangle_type = "Scalene";

    ELSE
            SET triangle_type = "Not A Triangle";
    END IF;

    RETURN(triangle_type);

END
DELIMITER ;


USE `PRACTICE`;
SELECT triangle_type(A,B,C) FROM PRACTICE.TRIANGLES;
...