Mysql中自定义函数的创建和执行
假设students表中包含id和name两个字段,创建一个函数,函数的作用是根据id查找name
1、创建表,插入数据
create table students(id int,name varchar(100));
insert into students(id,name) values(1,'annie'),(2,'bell'),(3,'danny');
2、创建函数
DELIMITER //
create function find_student(id int) returns varchar(100)
READS SQL DATA
begindeclare sname varchar(100) default '';select students.name into sname from students where students.id=id;return sname;
end //
DELIMITER ;
需要注意的事项
1)使用DELIMITER//修改分隔符
mysql的默认语句结束符号是分号,当mysql遇到分号时就自动执行当前语句。因为函数定义时包含多条sql语句,所以使用DELIMITER //先将分隔符设置为//,等函数创建语句完成后,再将分隔符改回分号即可。
2)READS SQL DATA
之前我没写这句话,但是创建时mysql报错,提示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_bin_trust_function_creators variable)
上网查了一下,意思是没有声明mysql函数的类型:
mysql开启了bin-log, 我们就必须指定我们的函数是否是哪种类型:
1 DETERMINISTIC 不确定的
2 NO SQL 没有SQl语句,当然也不会修改数据
3 READS SQL DATA 只是读取数据,当然也不会修改数据
4 MODIFIES SQL DATA 要修改数据
5 CONTAINS SQL 包含了SQL语句
所以我加上了READS SQL DATA
3)使用局部变量
变量定义:我这里使用declare sname varchar(100) default ‘’;定义了局部变量sname,
变量使用:
可以使用select students.name into sname from students where students.id=id;为变量赋值
也可以直接使用set语句来赋值,如set sname=‘test’
3、执行函数:select 函数名(参数值);
select find_student(3);
Mysql中自定义函数的创建和执行相关推荐
- mysql中常用函数与存储过程的创建
mysql中常用函数与存储过程的创建 常用函数汇总 数学函数 字符串函数 日期和时间函数 条件判断函数 系统函数 加密函数 其他函数 自定义函数 自定义变量的声明和赋值 基本语法 实例 存储过程 事务 ...
- MySQL如何自定义函数
在使用 MySQL 的过程中,MySQL 自带的函数可能完成不了我们的业务需求,这时候就需要自定义函数. 自定义函数是一种与存储过程十分相似的过程式数据库对象.它与存储过程一样,都是由 SQL 语句和 ...
- python使用del保留字定义一个函数-python中自定义函数的保留字是
基本使用(推荐学习:Python视频教程)def function_name(parameters): expressions Python使用def开始函数定义,紧接着是函数名,括号内部为函数的参数 ...
- Python自定义函数的创建、调用和函数的参数详解
这篇文章主要介绍了Python自定义函数的创建.调用和函数的参数.变量作用域等常见问题,需要的朋友可以参考下 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性 ...
- 自定义函数(创建函数)
自定义函数(创建函数) 首先,简单介绍一下什么是函数 函数是完成特定任务的独立程序代码单元.语法规则定义了函数的结构和使用方式. 使用函数可以省去编写重复代码的苦差.函数让程序更加模块化,从而提高程序 ...
- 自定义函数的创建及调用
自定义函数的创建及调用 函数是指编写好的,可以重复使用的代码段. Python中,函数有内置函数和自定义函数2种. 内置函数是指:像print.input.type 等安装Python后就能直接使用的 ...
- 7.1 python 自定义函数的创建及调用
第七章 函数 7.1 自定义函数的创建及调用 函数是指编写好的,可以重复使用的代码段. Python中,函数有内置函数和自定义函数2种. 内置函数是指:像print.input.type 等安装Pyt ...
- mysql数据库中count的作用_详解 MySQL中count函数的正确使用方法
1. 描述 在MySQL中,当我们需要获取某张表中的总行数时,一般会选择使用下面的语句 select count(*) from table; 其实count函数中除了*还可以放其他参数,比如常数.主 ...
- mysql中concat函数的使用相关总结
concat(str1,str2) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. mysql> select concat('11','22','33') ...
最新文章
- python3.8.5是python3吗_Python 升级到3.8.5
- 1.6 万字长文带你读懂 Java IO
- BROCADE使用小技巧
- php imap配置,php中的自定义IMAP命令
- VTK:可视化算法之StreamlinesWithLineWidget
- mysql 5.7安装完密码是多少_关于mysql5.7.18的安装并修改初始密码的图文教程
- python多版本控制操作方法
- [Bzoj]5343: [Ctsc2018]混合果汁
- 备库批量查询失败的原因分析
- 攻击者利用Python 勒索软件加密 VMware ESXi 服务器
- python 字符串替换_python字符串替换的2种方法
- 50.magento 订单状态
- 一步一步解决“不能上网”
- Python获取列表中字符串最长位置处的索引值
- stm32 LCD1602显示
- NitroShare —— 跨平台的局域网文件传输工具
- 安卓按键:紫猫老师的正则教程
- linux下轻松修改pdf文件
- 磨刀不误砍柴工——VS生成事件
- 手机时钟软件推荐,创意时钟APP介绍