DELIMITER
Командата е вграден клиент на обвивката на MySQL и се разпознава само от тази програма (и MySQL Query Browser). Не е необходимо да използвате DELIMITER
ако изпълнявате SQL изрази директно през API.
Целта на DELIMITER
е да ви помогне да избегнете неясноти относно прекратяването на CREATE FUNCTION
израз, когато самият израз може да съдържа знаци за точка и запетая. Това е важно в shell клиента, където по подразбиране точка и запетая прекратява SQL израз. Трябва да зададете терминатора на израза на някакъв друг знак, за да подадете тялото на функция (или задействане или процедура).
CREATE FUNCTION trivial_func (radius float)
RETURNS FLOAT
BEGIN
IF radius > 1 THEN
RETURN 0.0; <-- does this semicolon terminate RETURN or CREATE FUNCTION?
ELSE
RETURN 1.0;
END IF;
END
Тъй като API обикновено ви позволява да подавате един SQL израз наведнъж, няма неяснота - интерфейсът знае, че всички точки и запетая в тялото на дефиницията на вашата функция не прекратяват цялата CREATE FUNCTION
изявление. Така че няма нужда да променяте терминатора на израза с DELIMITER
.