Bạn phải ghi đè ;
của mình dấu phân cách với một cái gì đó như $$
để tránh loại lỗi này.
Sau khi định nghĩa hàm, bạn có thể đặt dấu phân cách trở lại ;
.
Điều này sẽ hoạt động:
DELIMITER $$
CREATE FUNCTION F_Dist3D (x1 decimal, y1 decimal)
RETURNS decimal
DETERMINISTIC
BEGIN
DECLARE dist decimal;
SET dist = SQRT(x1 - y1);
RETURN dist;
END$$
DELIMITER ;