千家信息网

MYSQL——自定义函数

发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,自定义函数用户自定义函数是一种对MYSQL扩展的途径,其用法与内置函数相同1 函数可以返回任意类型的值,同样可以接收这些类型的参数2 函数体由合法的SQL语句构成3 函数体可以是简单的SELECT或I
千家信息网最后更新 2025年02月04日MYSQL——自定义函数

自定义函数

用户自定义函数是一种对MYSQL扩展的途径,其用法与内置函数相同

1 函数可以返回任意类型的值,同样可以接收这些类型的参数

2 函数体由合法的SQL语句构成

3 函数体可以是简单的SELECT或INSERT语句

4 函数体如果为复合结构则使用BEGIN...END语句

5 复合结构可以包含声明,循环,复制结构

6 创建不带参数的自定义函数

第一步 CREATE FUNCTION 函数名 () FETURNS 字符串长度如VARCHAR(30)

第二步 RETURN 类型(如DATE)_FORMAT (NOW(),函数内容如'%Y%m%d %H点:%i分:%s');

7 创建带有参数的自定义函数

第一步 CREATE FUNCTION 函数名如f1(参数类型和参数个数如num1 字符长度如SMALLINT 字符类型如UNSIGNED, 参数类型和参数个数如num2 字符长度如SMALLINT 字符类型如UNSIGNED)

第二步 RETUPNS 返回值类型如 FLOAT(10,2) UNSIGNED

第三步 RETUPNS 返回值如(num1+num2)/2;

8 调用函数

SELECT 函数名 (参数名如10,15);

修改当前MYSQL的默认定界符

DELIMITER 新的定界符

9 创建具有复合结构函数体的自定义函数(创建前要先修改MYSQL的默认定界符为//,创建好后要修改回;)

第一步 CREATE FUNCTION adduser(用户名如username 字符长度如VARCHAR(20)

第二步 RETURNS 数据类型如INT 字符类型如UNSIGNED

第三步 BEGIN

第四步 INSERT 表名(用户名)VALUES(用户名);

第五步 RETURNLAST_INSERT_ID();

第六步 END

第七步 //

0