MySQL学习笔记-进阶篇-视图和存储过程

2024-06-23 07:44

本文主要是介绍MySQL学习笔记-进阶篇-视图和存储过程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

四、视图和存储过程

视图

存储过程

基本语法

创建

CREATE PROCEDURE ([参数列表])

BEGIN

--SQL

END;

调用

CALL 存储过程名([参数列表])

查看

--查看指定数据库的存储过程及状态信息

SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_SHCEMA='xxxx' ;

--查询某个存储过程的定义

SHOW CREATE PROCEDURE 存储过程名;

删除

DROP PROCEDURE [ IF EXISTS ] 存储过程名

注意:在命令行中,执行创建存储过程的sql时,需要通过关键字delimiter指定sql语句的结束符

变量

系统变量

系统变量是mysql服务器提供的,不是用户自定义的,属于服务器层面,分为全局变量(GLOBAL)、会话变量(SESSION)

查看系统变量

--查看全部系统变量

SHOW [GLOBAL|SESSION] VARIABLES;

--模糊匹配某个系统变量

SHOW [GLOBAL|SESSION] VARIABLES LIKE 'AUTO%'

--查看指定变量的值

SELECT @@[GLOBAL|SESSION].系统变量名

设置系统变量

SET [GLOBAL|SESSION] 系统变量名=值;

SET @@[GLOBAL|SESSION].系统变量名=值;

注意:

如果没有指定global|session,默认是session,会话变量。

mysql服务重新启动之后,所设置的全局变量会失效,要想不失效,可以在/etc/my.cnf中配置。

用户自定义变量

用户自定义变量是用户根据需求自己定义的变量,用户变量不用提前声明,在用的时候,直接使用@变量名使用就可以。其作用域为当前连接。

赋值

SET @var_name=exp[,@var_name=exp]……;

SET @var_name:=exp[,@var_name:=exp]……;

SELECT @var_name:=exp[,@var_name:=exp]……;

SELECT 字段名 INTO @var_name FROM 表名;

使用

SELECT @var_name;

注意:

用户自定义变量无需对其进行声明或初始化,只不过获取到的值为NULL。

局部变量

if

例子:

参数(IN OUT INOUT)

case

循环-while

循环-repeat

循环-loop

游标

执行会报错,但是数据能够正常插入目标表中。原因是使用while true死循环,导致游标到达最后一个记录后,再循环找不到记录。可以使用条件处理程序来解决这种报错。解决办法参照下一节条件处理程序

条件处理程序

存储函数

触发器

介绍

语法

insert

update

delete

这篇关于MySQL学习笔记-进阶篇-视图和存储过程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1086546

相关文章

51单片机学习记录———定时器

文章目录 前言一、定时器介绍二、STC89C52定时器资源三、定时器框图四、定时器模式五、定时器相关寄存器六、定时器练习 前言 一个学习嵌入式的小白~ 有问题评论区或私信指出~ 提示:以下是本篇文章正文内容,下面案例可供参考 一、定时器介绍 定时器介绍:51单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成。 定时器作用: 1.用于计数系统,可

问题:第一次世界大战的起止时间是 #其他#学习方法#微信

问题:第一次世界大战的起止时间是 A.1913 ~1918 年 B.1913 ~1918 年 C.1914 ~1918 年 D.1914 ~1919 年 参考答案如图所示

[word] word设置上标快捷键 #学习方法#其他#媒体

word设置上标快捷键 办公中,少不了使用word,这个是大家必备的软件,今天给大家分享word设置上标快捷键,希望在办公中能帮到您! 1、添加上标 在录入一些公式,或者是化学产品时,需要添加上标内容,按下快捷键Ctrl+shift++就能将需要的内容设置为上标符号。 word设置上标快捷键的方法就是以上内容了,需要的小伙伴都可以试一试呢!

Tolua使用笔记(上)

目录   1.准备工作 2.运行例子 01.HelloWorld:在C#中,创建和销毁Lua虚拟机 和 简单调用。 02.ScriptsFromFile:在C#中,对一个lua文件的执行调用 03.CallLuaFunction:在C#中,对lua函数的操作 04.AccessingLuaVariables:在C#中,对lua变量的操作 05.LuaCoroutine:在Lua中,

AssetBundle学习笔记

AssetBundle是unity自定义的资源格式,通过调用引擎的资源打包接口对资源进行打包成.assetbundle格式的资源包。本文介绍了AssetBundle的生成,使用,加载,卸载以及Unity资源更新的一个基本步骤。 目录 1.定义: 2.AssetBundle的生成: 1)设置AssetBundle包的属性——通过编辑器界面 补充:分组策略 2)调用引擎接口API

Javascript高级程序设计(第四版)--学习记录之变量、内存

原始值与引用值 原始值:简单的数据即基础数据类型,按值访问。 引用值:由多个值构成的对象即复杂数据类型,按引用访问。 动态属性 对于引用值而言,可以随时添加、修改和删除其属性和方法。 let person = new Object();person.name = 'Jason';person.age = 42;console.log(person.name,person.age);//'J

大学湖北中医药大学法医学试题及答案,分享几个实用搜题和学习工具 #微信#学习方法#职场发展

今天分享拥有拍照搜题、文字搜题、语音搜题、多重搜题等搜题模式,可以快速查找问题解析,加深对题目答案的理解。 1.快练题 这是一个网站 找题的网站海量题库,在线搜题,快速刷题~为您提供百万优质题库,直接搜索题库名称,支持多种刷题模式:顺序练习、语音听题、本地搜题、顺序阅读、模拟考试、组卷考试、赶快下载吧! 2.彩虹搜题 这是个老公众号了 支持手写输入,截图搜题,详细步骤,解题必备

C/C++的编译和链接过程

目录 从源文件生成可执行文件(书中第2章) 1.Preprocessing预处理——预处理器cpp 2.Compilation编译——编译器cll ps:vs中优化选项设置 3.Assembly汇编——汇编器as ps:vs中汇编输出文件设置 4.Linking链接——链接器ld 符号 模块,库 链接过程——链接器 链接过程 1.简单链接的例子 2.链接过程 3.地址和

mysql索引四(组合索引)

单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引;组合索引,即一个索引包含多个列。 因为有事,下面内容全部转自:https://www.cnblogs.com/farmer-cabbage/p/5793589.html 为了形象地对比单列索引和组合索引,为表添加多个字段:    CREATE TABLE mytable( ID INT NOT NULL, use

mysql索引三(全文索引)

前面分别介绍了mysql索引一(普通索引)、mysql索引二(唯一索引)。 本文学习mysql全文索引。 全文索引(也称全文检索)是目前搜索引擎使用的一种关键技术。它能够利用【分词技术】等多种算法智能分析出文本文字中关键词的频率和重要性,然后按照一定的算法规则智能地筛选出我们想要的搜索结果。 在MySql中,创建全文索引相对比较简单。例如:我们有一个文章表(article),其中有主键ID(