MySQL存储函数分析
发布时间:2021-05-31 17:48:49 所属栏目:编程 来源:互联网
导读:在 MySQL 中,行使 CREATE FUNCTION 语句来建设存储函数,其语法情势如下: CREATE FUNCTION sp_name ([func_parameter[...]]) RETURNS type [characteristic ..
在 MySQL 中,行使 CREATE FUNCTION 语句来建设存储函数,其语法情势如下:
CREATE FUNCTION sp_name ([func_parameter[...]]) sp_name 参数:暗示存储函数的名称; func_parameter:暗示存储函数的参数列表; RETURNS type:指定返回值的范例; characteristic 参数:指定存储函数的特征,该参数的取值与存储进程是一样的; routine_body 参数:暗示 SQL 代码的内容,可以用 BEGIN...END 来标示 SQL 代码的开始和竣事。 留意:在详细建设函数时,函数名不能与已经存在的函数名重名。除了上述要求外,保举函数名定名(标识符)为 function_xxx 可能 func_xxx。 func_parameter 可以由多个参数构成,个中每个参数由参数名称和参数范例构成,其情势如下: [IN | OUT | INOUT] param_name type; 个中:IN 暗示输入参数,OUT 暗示输出参数,INOUT 暗示既可以输入也可以输出; param_name 参数是存储函数的参数名称; type 参数指定存储函数的参数范例,该范例可所以 MySQL 数据库的恣意数据范例。 例 1 行使 CREATE FUNCTION 建设查询 tb_student 表中某个门生姓名的函数,SQL 语句和执行进程如下: mysql> USE test; Database changed mysql> DELIMITER // mysql> CREATE FUNCTION func_student(id INT(11)) -> RETURNS VARCHAR(20) -> COMMENT '查询某个门生的姓名' -> BEGIN -> RETURN(SELECT name FROM tb_student WHERE tb_student.id = id); -> END // Query OK, 0 rows affected (0.10 sec) mysql> DELIMITER ; 上述代码中,建设了 func_student 函数,该函数拥有一个范例为 INT(11) 的参数 id,返回值为 VARCHAR(20) 范例。SELECT 语句从 tb_student 表中查询 id 字段值便是所传入参数 id 值的记录,同时返回该笔记录的 name 字段值。建设函数与建设存储进程一样,必要通过呼吁 DELIMITER // 将 SQL 语句的竣事符由“;”修改为“//”,最后通过呼吁 DELIMITER ; 将竣事标记修改成 SQL 语句中默认的竣事标记。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |