это мой код, довольно простой, я всегда получаю ошибки, я не знаю, где я ошибся, пожалуйста, помогите:
create function fun1() возвращает int (1) begin
return 1;
конец;
# Time Action Message Duration / Fetch
0 1 11:20:30 end Код ошибки: 1064. У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования около "конца" в строке 1 0,000 с
Привет Можете ли вы попробовать под кодом с изменением разделителя:
delimiter $$
create function fun1() returns int(1)
begin
return 1;
end$$
delimiter ;
Надеюсь, это сработает для вас.
Использование MySql ;
в качестве разделителя по умолчанию, поэтому разделители, отличные от значения по умолчанию ;
обычно используются при определении функций, хранимых процедур и триггеров, в которых вы должны определить несколько операторов. Вы определяете другой разделитель, такой как $$
который используется для определения конца всей процедуры, но внутри него каждый оператор заканчивается ;
, Таким образом, когда код запускается в клиенте mysql, клиент может указать, где заканчивается вся процедура, и выполнять ее как единицу, а не выполнять отдельные заявления внутри.
и я получил ошибку: 12:42:56 create function fun1() возвращает int (1) begin return 1; end Код ошибки: 1418. Эта функция не имеет ни DETERMINISTIC, NO SQL, ни READS SQL DATA в своем объявлении, а бинарное ведение журнала разрешено (вы можете использовать менее безопасную переменную log_bin_trust_function_creators) 0,000 с