- 0
- 0
- 约6.17千字
- 约 66页
- 2023-04-18 发布于浙江
- 举报
;学习目标;;管理存储过程;在MySQL中最常见的变量类型有局部变量和用户自定义变量两种。
1.局部变量
要定义局部变量必须使用DECLARE来声明,定义的同时可以使用default对局部变量初始化赋值。DECLARE语句格式如下:
DECLARE var_name[,…] type [DEFAULT value]
value是给变量提供一个默认值,包含在一个DEFAULT子句中,它的值可以被指定为一个表达式,如果没有DEFAULT子句,初始值为NULL。例如:
DECLARE num int DEFAULT 0;;2.用户自定义变量
用户自定义变量的声明以“@”开头,形如:@var_name。为了实现不同SQL语句中进行值的传递,可以把一些数值存储在自定义的用户变量中,不同的SQL语句都可以对它进行访问。用户变量在客户端和数据库的连接建立时被定义,当连接断开时,用户变量将会被释放。用户变量无需用DECLARE关键字进行定义,可以直接使用。例如:
SET @c1=1, @c2=2, @c3=4;;在编写存储过程和存储函数时,可以使用流程控制语句对SQL语句进行组织,使其成为符合业务逻辑的代码块。MySQL中常见的流程控制语句主要有:IF语句、CASE语句、LOOP语句、WHILE语句、ITERATE语句、REPEAT语句等。;1.IF语句
IF语句可以通过判断一个逻辑条件是TRUE还是FALSE,转去执行相应的语句,它的语法格式如下:
IF expr_condition THEN statement_list
[ELSEIF expr_condition THEN statement_list]
[ELSE statement_list]
END IF ;2.CASE语句
CASE也是一个条件判断语句,多用于多分支判断的程序结构,它的常用语法格式如下:
CASE case_expr
WHEN when_value THEN statement_list
[WHEN when_value THEN statement_list]……
[ELSE statement_list]
END CASE;3.LOOP语句
LOOP是一个循环语句,用来进行一个语句块的循环操作。LOOP语句并不进行条件判断,会一直执行循环体的语句,如果要退出语句的执行,需要使用LEAVE等语句退出循环。LOOP语句的语法格式如下:
[loop_label:] LOOP
Statement_list
END LOOt_listP [loop_label];4.LEAVE语句
在循环语句LOOP使用过程中,当循环条件不满足时,可以使用LEAVE语句跳出循环体。LEAVE语句用于跳出有循环标志的流程控制语句,基本语法结构如下:
LEAVE label;5.ITERATE语句
与LEAVE语句结束整个循环不同,ITERATE语句用于无条件转到语句段的开头处。ITERATE语句的格式如下:
ITERATE lable;6.REPEAT语句
REPEAT语句用于循环执行一个语句块,采用的方式是先无条件执行语句块后再进行条件表达式判断,如果表达式为真,则循环结束,否则重复执行语句块。REPEAT语句的格式如下:
[repeat_lable:] REPEAT
statement_list
UNTIL expr_condition
END REPEAT [repeat_lable];7.WHILE语句
WHILE语句也用于循环执行一个语句块,但是与REPEAT语句不同,WHILE语句执行时首先判断条件表达式是否为真,如果为真则继续执行循环体内语句,否则直接退出循环体。WHILE语句的格式如下:
[while_lable:] WHILE expr_condition DO
Statement_list
END WHILE [while_lable];使用SQL语句进行查询过程中,查询结果将返回很多记录,如果记录量很大时,需要使用光标来对查询结果集中的记录进行逐条读取,它可以对多行数据进行轻松的处理。;1.光标的声明
在使用光标对结果集中的数据进行处理时,需要首先声明光标,光标的声明必须在声明变量、条件之后,声明处理程序之前。光标的声明格式如下:
DECLARE cursor_name CURSOR FOR select_statement
其中cursor_name表示光标的名字,select_statement代表SELECT语句的内容,返回一个用于创建光标的结果集。下面声明一个名为cur_teacher的光标。代码如下:
DECLARE cur_xsxx CURSOR FOR SELECT xh,xm
FROM tb_xsxxb;;2.光标
您可能关注的文档
- 数据可视化分析——基于R语言(第2版)贾俊平-(02)第2章 R 语言绘图基础.pptx
- 数据可视化分析——基于R语言(第2版)贾俊平-(04)第4章 分布特征可视化.pptx
- 数据可视化分析——基于R语言(第2版)贾俊平-(05)第5章 变量间关系征可视化.pptx
- 数据可视化分析——基于R语言(第2版)贾俊平-(06)第6章 样本相似性可视化.pptx
- 数据可视化分析——基于R语言(第2版)贾俊平-(07)第7章 时间序列可视化.pptx
- 数据可视化分析——基于R语言(第2版)贾俊平-(09)第8章 概率分布可视化.pptx
- 数据可视化分析——基于R语言(第2版)贾俊平-(09)第9章 其他可视化图形.pptx
- 数据可视化分析——基于R语言(第2版)贾俊平-各章习题答案.pdf
- 数据库应用技术项目化教程-龙浩-1 预备知识 数据库基础知识.pptx
- 数据库应用技术项目化教程-龙浩-2 MySQL基础、安装和配置、创建数据库.pptx
- 能源开采行业市场前景及投资研究报告:国内用电结构,电力需求增长引擎.pdf
- 人工智能行业市场前景及投资研究报告:具身智能产业发展,软硬件迭代加速,人形机器人规模突破.pdf
- 三峡旅游-市场前景及投资研究报告-省际游轮业务,迎接成长新纪元.pdf
- 通信行业2026年投资策略分析报告:算力升维,星座织网.pdf
- 水泥行业市场前景及投资研究报告:优质现金流资产,反内卷趋势,盈利改善预期.pdf
- 兴福电子-市场前景及投资研究报告-湿电子化学品龙头,受益存储需求提升.pdf
- 医药生物行业市场前景及投资研究报告:设备招投标,设备拐点向上趋势,医疗科技蓬勃发展.pdf
- 长芯博创-市场前景及投资研究报告-光电互连综合提供商,谷歌算力扩容受益.pdf
- 中国汽研-市场前景及投资研究报告-中国汽车标准做大做强.pdf
- 智谱-市场前景及投资研究报告-深耕AI大模型领域,各场景落地,拓展业务边界.pdf
最近下载
- 江苏译林版小学英语单词汇总表-带音标可打印.docx VIP
- 2022退役风电叶片回收处理再利用.pptx VIP
- DB41T 2743-2024碳纤维复材平行绞线斜拉索设计及施工技术规程.docx VIP
- 退役风机叶片回收市场需求分析报告.docx
- “个人所得税”手机APP填报指引.doc VIP
- 放射性肠炎诊疗指南(2025年版).docx
- 新教材外研版高中英语必修第二册全册各单元2022新高考一轮复习学案(知识点考点汇总及配套习题).doc VIP
- 农技专员面试题及答案大全.doc VIP
- GB∕T25336-2024铁路大型养路机械检查与试验方法.pptx VIP
- 农业技术员岗位面试常见问题集.docx VIP
原创力文档

文档评论(0)