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

news2024/11/25 12:55:58

四、视图和存储过程

视图

存储过程

基本语法

创建

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1852572.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AI-智能体

什么是 AI 智能体? 「AI 智能体」这个术语并没有真正被定义,对智能体究竟是什么也存在很多的争议。 AI 智能体可以定义为「一个被赋予行动能力的 LLM(通常在 RAG 环境中进行函数调用),以便在环境中对如何执行任务做出…

第一次接触Swing

学习java版的HslCommunication发现使用的是Swing,所以了解了一下~ 了解: Swing是Java的标准库(Java Foundation Classes, JFC)的一部分,用于构建桌面应用程序的图形用户界面(GUI)。它是Java AWT…

华为某员工爆料:三年前985本科起薪30万,现在硕士起薪还是30w,感慨互联网行情变化

“曾经的30万年薪,是985本科学历的‘标配’,如今硕士也只值这个价?” 一位华为员工的爆料,揭开了互联网行业薪资变化的冰山一角,也引发了不少人的焦虑:互联网人才“通货膨胀”的时代,真的结束了…

Java-异常:不恰当的异常转换、不充分的日志记录、过度或不当的异常捕获

Java-异常:不恰当的异常转换、不充分的日志记录、过度或不当的异常捕获 Java-异常:不恰当的异常转换、不充分的日志记录、过度或不当的异常捕获一、前期准备二、案例分析1、不恰当的异常转换2、不充分日志记录3、过度或不当的异常捕获 三、正确处理方式1…

2024年6月计算机视觉论文推荐:扩散模型、视觉语言模型、视频生成等

6月还有一周就要结束了,我们今天来总结2024年6月上半月发表的最重要的论文,重点介绍了计算机视觉领域的最新研究和进展。 Diffusion Models 1、Autoregressive Model Beats Diffusion: Llama for Scalable Image Generation LlamaGen,是一个…

C++20中的Feature Test Mocros

C20定义了一组预处理器宏,用于测试各种语言和库的feature。 Feature Test Mocros(特性测试宏)是C20中引入的一种强大机制,用于应对兼容性问题。Feature Test Mocros作为预处理器指令(preprocessor directives)出现,它使你能够在编译过程中仔细…

Edge 浏览器退出后,后台占用问题

Edge 浏览器退出后,后台占用问题 环境 windows 11 Microsoft Edge版本 126.0.2592.68 (正式版本) (64 位)详情 在关闭Edge软件后,查看后台,还占用很多系统资源。实在不明白,关了浏览器还不能全关了,微软也学流氓了。…

计算机网络期末

1、IP 地址为:192.168.0.254,它的子网掩码应该为( ) A.255.255.255.0 B.255.255.254.0 C.255.255.252.0 D.255.255.0.0 2、最容易产生网络可靠性瓶颈问题的拓扑构型是( )。 A 总线型 B 星型 C 环型 D 网状型 3、HTTP 就是电子邮件阅读协议&#xff0…

Android开发实用必备的几款插件,提高你的开发速度

1.GsonFormat 使用方法:快捷键AltS也可以使用AltInsert选择GsonFormat,作用:速将json字符串转换成一个Java Bean,免去我们根据json字符串手写对应Java Bean的过程。 2.ButterKnife Zelezny 又叫黄油刀 使用方法:CtrlS…

Java程序之动物声音“模拟器”

题目: 设计一个“动物模拟器”,希望模拟器可以模拟许多动物的叫声和行为,要求如下: 编写接口Animal,该接口有两个抽象方法cry()和getAnimalName(),即要求实现该接口的各种具体的动物类给出自己的叫声和种类…

PostgreSQL如何定义缓冲区管理器?

目录 一、PostgreSQL是什么二、缓冲区管理器介绍三、缓冲区管理器的应用场景四、如何定义缓冲区管理器 一、PostgreSQL是什么 PostgreSQL是一种高级的开源关系型数据库管理系统(RDBMS),它以其稳定性、可靠性和高度可扩展性而闻名。它最初由加…

史上最强面试题,拿大厂京东,阿里offer全靠它。程序员必看。

答:对于short s1 1; s1 s1 1;由于1是int类型,因此s11运算结果也是int 型,需要强制转换类型才能赋值给short型。而short s1 1; s1 1;可以正确编译,因为s1 1;相当于s1 (short)(s1 1);其中有隐含的强制类型转换。 #6、Java 有…

Trimesh介绍及基本使用

Trimesh介绍及基本使用 Trimesh是一个纯Python 工具库(支持3.7版本以上),用于加载和使用三角形Mesh网格,支持多种常见的三维数据格式,如二进制/文本格式的STL、Wavefront OBJ、二进制/文本格式的PLY、GLTF/GLB 2.0、3…

食谱API

在当今追求健康与美味完美结合的时代,获取准确而丰富的食品和营养信息变得至关重要。无论是热衷于探索世界各地美食的烹饪爱好者,还是对自身饮食营养严格把控的健康追求者,都离不开可靠的资源。幸运的是,现在有诸如 TheMealDB 和 …

测试辅助工具(抓包工具)的使用2 之 抓包工具的基本用法

1.过滤设置: Filters- --- 勾选use Filters- --- 下拉选择show only the following hosts ---- 输入域名或者ip地址(多个地址用;隔开) --- 点击action(Run filterset now) 2.删除数据 方式一:点击Remove all 方式二: 黑窗口输入cls,回车 删除一条数据:选中数据---右键选择Rem…

LabVIEW电路板故障诊断系统

基于LabVIEW软件开发的电路板故障诊断系统,涵盖功能测试、性能测试和通讯测试等多个方面。系统集成了多种硬件设备,包括NI PXI-1033机箱、NI PXI-4071数字万用表、NI PXI-4130电源模块、NI PXI-8512 CAN模块等,通过模块化设计实现了对电路板的…

Tortoise 删除文件

1、右击需要删除的文件,选择Delete 2、提交

0基础学习线段树

前言: 线段树:用树来表示一个一个的线段区间。 1、为什么要使用线段树? 题目:给定一个数组nums,我们有两种下面两种操作 1、查询nums数组下标i到下标j的和; 2、将nums数组指定下标的值改为指定的一个新…

screenshot-to-code之安装、测试

准备 GPT收费账号 screenshot-to-code Supported AI models: GPT-4O - Best model!GPT-4 Turbo (Apr 2024)GPT-4 Vision (Nov 2023)Claude 3 SonnetDALL-E 3 for image generation git或者手动 下载源代码 https://github.com/abi/screenshot-to-code pip install poetry (…

【图像识别系统】昆虫识别Python+卷积神经网络算法+人工智能+深度学习+机器学习+TensorFlow+ResNet50

一、介绍 昆虫识别系统,使用Python作为主要开发语言。通过TensorFlow搭建ResNet50卷积神经网络算法(CNN)模型。通过对10种常见的昆虫图片数据集(‘蜜蜂’, ‘甲虫’, ‘蝴蝶’, ‘蝉’, ‘蜻蜓’, ‘蚱蜢’, ‘蛾’, ‘蝎子’, ‘…