sql 函数-mysql创建函数一直提示语句错误

问题描述

mysql创建函数一直提示语句错误

我在数据库的部门表里存的树形结构,在已知子部门时向上查找所有父级部门,写的函数如下

CREATE FUNCTION queryAllDept(@currdeptid varchar(50))
returns varchar(200)
BEGIN
    declare @allname varchar(200) DEFAULT '';
    declare @tempname varchar(200) DEFAULT '';
    declare @tempparid varchar(200) DEFAULT '';

    select @allname=`name`,@tempparid=parid from ym_dept where id=@currdeptid;
    while(@tempparid <> '0') do
        select @tempname=`name`,@tempparid=parid from ym_dept where id=@tempparid;
        set @allname=CONCAT(@tempname,',',@allname);
    end while;
    RETURN @allname;
END

错误提示:
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@currdeptid varchar(50))
returns varchar(200)
BEGIN
declare @allname varchar' at line 1

请问大神哪里有问题了

解决方案

delimiter $$

你的function.....

END $$

时间: 2024-08-18 04:37:31

sql 函数-mysql创建函数一直提示语句错误的相关文章

MYSQL 创建函数出错的解决方案

本文转自IT摆渡网欢迎转载,请标明出处 更多mysq文章请阅读 mysql问题错误修改 在使用MySQL数据库时,有时会遇到MySQL函数不能创建的情况.下面就教您一个解决MySQL函数不能创建问题的方法,供您借鉴参考. 案例一: 目前在项目中,执行创建mysql的函数出错, mysql 创建函数出错信息如下: Error Code: 1227. Access denied; you need (at least one of) the SUPER privilege(s) for this o

MYSQL 创建函数出错的解决方案_Mysql

在使用MySQL数据库时,有时会遇到MySQL函数不能创建的情况.下面就教您一个解决MySQL函数不能创建问题的方法,供您借鉴参考. 案例一: 目前在项目中,执行创建mysql的函数出错, mysql 创建函数出错信息如下: Error Code: 1227. Access denied; you need (at least one of) the SUPER privilege(s) for this operation 首先检查创建函数的功能是否开启,检查是否开启创建功能的SQL如下: -

微软-VS2013用MVC4无法创建控制器,提示APPDomain错误

问题描述 VS2013用MVC4无法创建控制器,提示APPDomain错误 没法上图,就是C:Program Files(x86)Microsoft Visual Studio 12.0Common7IDEItem TemplatesCSharpWebMVC4CodeTemplatesAddControllerController.tt(-1,-1):error:获取AppDomain以便从主机运行转换时出现问题.该过程无法继续 这个问题,试过重启VS,重启电脑,修复VS,卸载MVC4重装,重装

mysql创建函数出现1418错误的解决办法

本篇文章是对在Mysql中创建函数报"ERROR 1418"的解决方法进行了详细的分析介绍,需要的朋友参考下   复制代码 代码如下: Error Code : 1418 This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_

MySQL创建函数报“ERROR 1418 ”错误,不能创建函数

错误 ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable) ERROR 1418 (HY000): This funct

MySQL创建函数出现1418错误解决办法总结

代码如下: 错误码: 1418 This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable) 这个是创建函数功能未开. (you *might* want to use

SQL 中自己创建函数,分割字符串

创建|函数|字符串  ---------------------------------------------------------------- /**  *   版权:  石太祥 [ E.Alpha ]   所有 ;  *  *   email:     ealpha(AT)msn(DOT)com  ;  *   msn: ealpha(AT)msn(DOT)com  ;  *   QQ  : 9690501  *  *  所有转载请注明本信息!  */ ----------------

mysql创建数据库命令与语句

mysql教程创建数据库教程命令与语句 创建数据库 create database 语句用于在 mysql 中创建数据库. 语法 create database database_name为了让 php教程 执行上面的语句,我们必须使用 mysql_query() 函数.此函数用于向 mysql 连接发送查询或命令. 方法一,利用cmd形式创建数据库 c:program filesphps教程tudymysqlbin>mysql -u root -p enter password: **** /

mysql重装后连接数据库提示1045错误

之前因为没有正常关机 mysql 服务无法正常启动.后来重新安装了之后还是不能进入root账户提示1045错误. 解决方法: 1.停止服务 2.修改my.ini,找到[mysqld],在其下加上一行 skip-grant-tables 3.启动mysql服务. 这样就可以进入了.进入之后修改 mysql库下面的user 表里面的root 密码改为空. 然后去掉 skip-grant-tables 重启mysql. 把之前的库都拷贝到新的数据库路径.网站即可正常访问. 如果还是不行可参考下面方法尝