迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 数据库 > MySQL >

MySQL 函数

作者:迹忆客 最近更新:2024/03/25 浏览次数:

本文介绍如何在 MySQL 中使用和创建一个简单的函数。


MySQL 中的函数是什么

在 MySQL 编程语言中,函数是一组语句,它们执行一组行并返回一个值。

当功能块被外部调用时,这组代码执行业务逻辑,而转换恰好返回 void 或任何单独的值。

函数有助于在保存和检索数据之前处理数据。它有多种类型,如单值或多个参数函数。

我们可以从函数中获得的好处包括:

  1. 在不同的地方使用相同的功能进行一些操作。
  2. 一处改动,处处可见效果。
  3. 功能易于维护。
  4. 它允许代码共享和所有用途的一致性。
  5. 减少相同任务的返工和重复使用现有功能。

MySQL 中的函数原型或语法如下。

CREATE FUNCTION function_name [ (parameter datatype [, parameter datatype]) RETURNS return_datatype
BEGIN
Declaration_section
Executable_section
END;

让我们对上述语法有更多的见解和细节。

  1. 语法以 CREATE FUNCTION 语句开头;它在内部表示 MySQL,需要创建一个新方法。
  2. 在 function 关键字之后,function_name 是特定名称,表示行块是所提供语句的别名。当给定函数名时,用户尝试执行给定的集合以执行所需的函数。
  3. 在函数名旁边,可以有 n 个参数作为参数传递给函数。参数列表由变量名和变量数据类型两部分组成。
    3.1。变量名可用于函数操作逻辑。发生转换的语句集使用参数变量来处理接收到的数据。
    3.2 变量名后的数据类型声明限制使用传递定义的参数。数据类型作为主要验证来验证传递的参数。
  4. RETURNS 关键字指定下一个值是函数的单个返回值。
  5. Return_datatype 是函数返回值的数据类型。它还包括数据类型的大小,例如 VARCHAR(20)
  6. BEGIN 关键字在内部指定关键字旁边的行是执行下一组行的起点。它表明这是功能块的开始。
  7. Declaration_section 是声明所有变量的功能块的位置或顶部。
  8. Executable_section 是实际代码行用于操作的块。这些行是执行业务转换逻辑的确切行。
  9. END; 是指定块结束的终端关键字。该关键字与 BEGIN 语句结合使用。该语句说明了块的开始和结束。

在 MySQL 中使用 CREATE FUNCTION 创建函数

创建函数的先决条件是:

  1. 有一个正确的 MySQL 连接并保持服务器正常运行。
  2. 创建一个数据库并在需要创建函数的地方使用该数据库(例如:myFirstDb)。
  3. 预先创建一个可以调用函数的表(例如:stu_name)。
  4. 在函数起作用的表中输入一些条目并做出响应。
CREATE TABLE `stu` (
  `id` varchar(255) DEFAULT NULL,
  `name` varchar(255) DEFAULT NULL,
  `dob` date DEFAULT NULL
);
INSERT INTO `myFirstDb`.`stu`(`id`,`name`,`dob`) VALUES ('111','Test',DATE('1970-01-08'));
DELIMITER $$
CREATE DEFINER=`root`@`localhost` FUNCTION `get_stu_name`(stu_id VARCHAR(50)) RETURNS varchar(50) CHARSET utf8mb4
BEGIN
declare stu_name varchar(50) ;
select name into stu_name from myFirstDb.stu where id = stu_id;
RETURN stu_name;
END$$
DELIMITER ;

当我们使用带有 SELECT 关键字的函数名时,会发生以下函数调用。调用语句如下所示。

Select get_stu_name('111');

调用语句将参数 1 作为学生 ID 传递并执行该函数。要成功运行函数名称,必须存在一个学生表,其中 id 作为属性之一。

当记录存在时,该函数将与学生 ID 对应的学生姓名返回为 1。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

MySQL with 子句

发布时间:2024/03/25 浏览次数:79 分类:MySQL

本教程教你 MySQL with 子句。它还指导你在何处以及如何使用 MySQL With 子句

MySQL Tinytext

发布时间:2024/03/25 浏览次数:109 分类:MySQL

本文介绍了如何在 MySQL 中使用不同的数据类型。

使用 Mysqldump 备份 MySQL 中的数据

发布时间:2023/05/09 浏览次数:217 分类:MySQL

本篇文章将介绍如何使用 mysqldump 只备份数据。 在这里,我们将探讨 --no-create-info 、--compact 、--skip-triggers 和 --no-create-db 选项。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便