概述

抽空总结一下mysql的一些概念性内容,涉及存储过程、函数、视图、触发器等。


一、查看存储过程、函数、视图、触发器、表

1、存储过程

select * from mysql.proc where type='PROCEDURE';show procedure status; show create procedure proc_name; //存储过程定义

2、函数

select * from mysql.proc where type='FUNCTION';show function status;show create function func_name; //函数定义

3、视图

SELECT * from information_schema.VIEWS SHOW CREATE VIEW 视图名

4、表

SELECT * from information_schema.TABLES show create table table_name;

5、触发器

SELECT * FROM information_schema.triggers;show create trigger trigger_name;

二、函数

mysql自定义函数就是实现程序员需要sql逻辑处理,参数是IN参数,含有RETURNS字句用来指定函数的返回类型,而且函数体必须包含一个RETURN value语句。

1、语法:

创建: CREATE FUNCTION 函数名称(参数列表)  RETURNS 返回值类型  函数体修改:  ALTER FUNCTION 函数名称 [characteristic ...]删除: DROP FUNCTION [IF EXISTS] 函数名称调用: SELECT 函数名称(参数列表)

2、实例

CREATE DEFINER=`root`@`%` FUNCTION `getUnitChildList`(employeeCode VARCHAR(30)) RETURNS text CHARSET utf8BEGIN #最终返回的组织code字符串 DECLARE codeResult TEXT DEFAULT "-1"; #最终返回的组织id字符串 DECLARE result TEXT DEFAULT "-1"; #组织id的中间字符串 DECLARE sTempChd VARCHAR(10000); #最上层组织的字符串 DECLARE currentCode VARCHAR(10000) DEFAULT '-1'; #游标是否结束标识 DECLARE endFlag INT DEFAULT 0; #定义游标-unitCur,查询出当前员工拥有的所有岗位的组织code DECLARE unitCur CURSOR FOR SELECT DISTINCT pos.unit_code FROM hr_org_position_b pos LEFT JOIN hr_employee_assign ass ON pos.POSITION_CODE = ass.POSITION_CODE LEFT JOIN hr_employee HE ON he.EMPLOYEE_CODE = ass.EMPLOYEE_CODE WHERE he.EMPLOYEE_CODE = employeeCode AND ass.ENABLED_FLAG = 'Y' AND pos.ENABLED_FLAG = 'Y'; #结束set为1 DECLARE CONTINUE HANDLER FOR NOT FOUND SET endFlag = 1;#开始遍历游标 OPEN unitCur; REPEAT FETCH unitCur INTO currentCode; SET sTempChd = currentCode; #当前组织也加上 SET result=CONCAT(result,

mysql存储过程输入参数拆分_一文看懂mysql数据库存储过程、函数、视图、触发器、表...相关推荐

  1. mysql xa 和普通事务_一文看懂MySQL中基于XA实现的分布式事务

    概述 前面已经介绍了2PC和3PC方面的内容,那么MySQL数据库在分布式事务这块又是怎么规划呢? XA事务简介 XA 事务的基础是两阶段提交协议.需要有一个事务协调者来保证所有的事务参与者都完成了准 ...

  2. mysql 默认事务隔离级别_一文读懂MySQL的事务隔离级别及MVCC机制

    回顾前文: <一文学会MySQL的explain工具> <一文读懂MySQL的索引结构及查询优化> (同时再次强调,这几篇关于MySQL的探究都是基于5.7版本,相关总结与结论 ...

  3. mysql删除分表键_一文看懂 MySQL 分区和分表,提高表增删改查效率

    原标题:一文看懂 MySQL 分区和分表,提高表增删改查效率 作者:冯帅,精通Oracle. MySQL. 擅长异构数据库数据同步及迁移.数据库的设计和调优,对高可用方案有深入研究. MySQL分区和 ...

  4. mysql 大量数据 更改索引_一文看懂ICP原理--MySQL用索引去表里取数据的一种优化...

    概述 今天主要介绍一下mysql的ICP特性,可能很多人都没听过,这里用一个实验来帮助大家加深一下理解. 一.Index_Condition_Pushdown Index Condition Push ...

  5. mysql 同步复制 半同步复制_一文看懂MySQL的异步复制、全同步复制与半同步复制...

    今天主要聊一下MySQL的异步复制.全同步复制与半同步复制,目前我们生产库实际上用的就是异步复制了,后面再转成半同步复制. 一.MYSQL复制架构衍生史 在2000年,MySQL 3.23.15版本引 ...

  6. mysql创建非聚集索引_一文看懂聚集索引和非聚集索引的区别

    一.深入浅出理解索引结构 实际上,可以把索引理解为一种特殊的目录.微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引.簇集索引)和非聚集索引(nonclu ...

  7. mysql 缓冲池监控_一文看懂mysql数据库监控指标--缓冲池使用情况

    如果你的数据库运行缓慢,或者出于某种原因无法响应查询,技术栈中每个依赖数据库的组件都会遭受性能问题.为了保证数据库的平稳运行,你可以主动监控以下这个与性能及资源利用率相关的指标:缓冲池使用情况. 缓冲 ...

  8. mysql中12e10等于多少_一篇文章看懂mysql中varchar能存多少汉字、数字,以及varchar(100)和varchar(10)的区别...

    看完这篇文章,你能搞清楚以下问题: 1.varchar(100)和varchar(10)的区别在哪里? 2.varchar能存多少汉字.数字? 3.varchar的最大长度是多少呢? 4.字符.字节. ...

  9. oracle组合索引失效_一文看懂Oracle数据库的三大索引类型

    概述 今天主要介绍Oracle数据库的三大索引类型,仅供参考. 一.B-Tree索引 三大特点:高度较低.存储列值.结构有序 1.1利用索引特性进行优化 外键上建立索引:不但可以提升查询效率,而且可以 ...

最新文章

  1. ASP.Net中的TreeView控件中对节点的上移和下移操作
  2. pip 代理设置,坑爹的代理继续
  3. labview实现字符串转16进制
  4. XML数据读取方式性能比较(一)
  5. 工业相机5A参数及其对图像采集的影响
  6. Effeckt.css – CSS3 Transitions Animations 精妙应用
  7. 【js】知乎chrome控制台字符画招聘信息实现
  8. Java并发编程:同步容器
  9. 彻底搞懂Scrapy的中间件(二)
  10. Struts(十二):异常处理:exception-mapping元素
  11. 与众不同 windows phone (18) - Device(设备)之加速度传感器, 数字罗盘传感器
  12. matlab朴素贝叶斯手写数字识别_「深度学习系列」PaddlePaddle之手写数字识别
  13. 价值过亿的架构师面试试题大全和答案、架构大全、代码大全
  14. 关于《趣谈网络协议》的读书笔记
  15. 机器学习(四)神经网络
  16. H3C交换机常用配置命令大全
  17. python风格迁移_Python简单实现图像风格迁移
  18. 怎么快速查找重复文件以及删除重复文件
  19. 用计算机音乐的歌词,电脑酷狗音乐怎么在屏幕上显示歌词
  20. 前端工程师面试题详解(二)

热门文章

  1. 4乘4方格走的路线_苏州周边4个冷门自驾游路线景点推荐
  2. python中fd是什么意思_python里fd是什么意思
  3. mysql 复杂的sql_mysql 一个复杂的sql
  4. python生成1到100的列表_python列表生成式与列表生成器的使用
  5. Python pytest框架之@pytest.fixture()和conftest详解
  6. Codeforces Round 546 (Div. 2)
  7. 第一个程序 快速编译链接的办法
  8. 如何查看Laravel版本号的三种方法
  9. 《软件调试》读书笔记:第13章 硬错误和蓝屏
  10. C#回顾 - 3.NET的IO:字节流