存储函数
创建存储函数,需要使用CREATE FUNCTION语句,基本语法如下:
CREATE FUNCTION func_name([func_parameter])RETURNSTYPE[characteristics…] routine_body
CREATE FUNCTION为用来创建存储函数的关键字;func_name表示存储函数的名称
func_parameter为存储函数的参数列表,参数列表如下
其中,IN表示输入参数,OUT表示输出参数,INOUT表示既可以输入也可以输出;
param_name表示参数名称;type表示参数类型,该类型可以是MYSQL数据库中的任意类型
RETURNS TYPE语句表示函数返回数据的类型;characteristics:指定存储函数的特性,取值与创建存储过程时相同
创建存储函数,名称为NameByT,该函数返回SELECT语句的查询结果,数值类型为字符串型
CREATE FUNCTIONSelectByT()RETURNS VARCHAR(255);RETURN (SELECT NAME FROM T3 WHERE ID=3);
注意:RETURNS CHAR(50)数据类型的时候,RETURNS 是有S的,而RETURN (SELECT NAME FROM t3 WHERE id=2)的时候RETURN是没有S的
所以有时候大家可能觉得MYSQL很烦,谁不知是自己写错了
这里有一个方法,就是利用SQLYOG的代码格式化功能,选中要格式化的代码,然后按F12,如果能格式化,证明你的代码没有问题,如果不能格式化
证明你写的代码有问题!!!
调用函数
变量的使用
变量可以在子程序中声明并使用,这些变量的作用范围是在BEGIN…END程序中
1、定义变量
在存储过程中定义变量
DECLARE var_name[,varname]…date_type[DEFAULT VALUE];
var_name为局部变量的名称。DEFAULT VALUE子句给变量提供一个默认值。值除了可以被声明为一个常数外,还可以被指定为一个表达式。
如果没有DEFAULT子句,初始值为NULL
DECLARE MYPARAM INT DEFAULT 100;
2、为变量赋值
定义变量之后,为变量赋值可以改变变量的默认值,MYSQL中使用SET语句为变量赋值
SET var_name=expr[,var_name=expr]…
在存储过程中的SET语句是一般SET语句的扩展版本。
被SET的变量可能是子程序内的变量,或者是全局服务器变量,如系统变量或者用户变量
他运行SET a=x,b=y,….
声明3个变量,分别为var1,var2和var3
DECLARE par1,par2,par3 INT;SET par1=10,par2=10;SET par3=par1+par2;
MYSQL中还可以通过SELECT…INTO为一个或多个变量赋值
DECLARE NAME CHAR(50);DECLARE ID DECIMAL(8,2);SELECT NAME, ID INTO NAME ,ID FROM T3;
今天的文章mysql java自定义函数_Mysql自定义函数总结分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/6189.html