1048 以及一直报错语句不对

 由于下一个项目 ,项目经理准备用mysql 作为数据传输语言,我们也不得不考虑用mysql 
 
但是本人确实没咋接触过mysql,所以就遇到一下的坑
 
通过 dbeaver 或者navicat 导入一下项目的时候,在创建函数是遇到 报错信息 1048 错误,我就很纳闷。
 
查了下才发现 是mysql 默认是不开启自定义函数的,这个需要我们把设置打开,是不
是很坑。
 
所以下边就是查看的流程
 
show variables like '%func%';
 
-- 查看目前数据库自定义函数是否开启
 
set global log_bin_trust_function_creators =1;
 
-- 1 就是开启
 
-- 0 就是关闭

 

 

好了 到目前为止 函数不能创建的问题解决了
 
 
接下来就是更坑的
 
我在写 oracle 的时候,只要在一个sql 窗口内 将 
function begin end; 就能完成一个自定义函数
 
但是在mysql 中 只要是遇到 分号 ;都会认为是结束的意思 
 
那么就是导致一个问题   1064报错 ,你写在窗口内的程序块不会被认为是一个完整的程序。
 
尤其是在执行sql 脚本文件的时候极其痛苦。

 

 

DELIMITER //
CREATE FUNCTION 
end //
 
posted @ 2022-11-18 15:43  马蹄烧饼  阅读(411)  评论(0编辑  收藏  举报