mysql_结构
代码执行结构:顺序结构、分支机构、循环结构
分支结构:实现准备多个代码块,按照条件选择执行某段代码
在mysql中只有if分支
基本语法
if 条件判断 then
-- 满足条件要执行的代码;
else
-- 不满足条件要执行的代码
end if;
触发器结合if分支:判断商品库存是否足够,不够不能生成订单
-- 触发器:订单生成之前要判断库存是否满足
delimiter %%
create trigger before_order before insert on my_order for each row
begin
-- 判断商品库存是否足够
-- 获取商品库存:商品库存在表中
select inv from my_goods where id = new.g_id into @inv;
-- 比较库存
if @inv < new.g_number then
-- 库存不够:触发器没有提供一个能够阻止时间发生的能力(只能暴力报错)
insert into XXX values(XXX);
end if;
end
%%
delimiter ;
-- 插入订单
insert into my_order values(null,1,1000);
循环结构:某段代码在指定条件下重复执行
while循环(没有for循环)
while 条件判断 do
-- 满足条件要执行的循环代码
-- 变更循环条件
end while;
循环控制:在循环内部进行处理,进行循环的判断和控制
mysql中没有对应的continue和break,但是有
iterate:迭代,类似continue,后面的代码不执行,循环重新来过
leave:离开,类似break,循环结束
使用方式 :tterate/leave 循环名字;
-- 定义循环名字
循环名字:while 条件 do
-- 循环体
-- 循环控制
leave/iterate 循环名字
end while;
mysql_结构的更多相关文章
- [mysql] Navicat for mysql_导入导出表结构
应用场景: 当 ① 由于权限控制,远程数据库在外网不能访问 ② 远程数据库连接和查询比较慢,影响工作效率 这时,可以将远程数据库的表结构和已有数据COPY到本地的mysql服务器来进行开发. 只需要将 ...
- MySQL_(Java)【事物操作】使用JDBC模拟银行转账向数据库发起修改请求
MySQL_(Java)使用JDBC向数据库发起查询请求 传送门 MySQL_(Java)使用JDBC向数据库中插入(insert)数据 传送门 MySQL_(Java)使用JDBC向数据库中删除(d ...
- ProxySQL结构
Qurey Processor 用于匹配查询规则并根据规则决定是否缓存查询或者将查询加入黑名单或者重新路由.重写查询或者镜像查询到其他hostgroup. User Auth 为底层后端数据库认证提供 ...
- 【.net 深呼吸】细说CodeDom(1):结构大观
CodeDom 是啥东东?Html Dom听过吧,XML Dom听过吧.DOM一般可翻译为 文档对象模型,那 Code + DOM呢,自然是指代码文档模型了.如果你从来没接触过 CodeDom,你大概 ...
- 读书笔记:《HTML5开发手册》--HTML5新的结构元素
读书笔记:<HTML5开发手册> (HTML5 Developer's CookBook) 虽然从事前端开发已有很长一段时间,对HTML5标签也有使用,但在语义化上面理解还不够清晰.之前在 ...
- Python学习--04条件控制与循环结构
Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...
- HTML5 语义元素(一)页面结构
本篇主要介绍HTML5增加的语义元素中关于页面结构方面的,包含: <article>.<aside>.<figure>.<figcaption>.< ...
- React在开发中的常用结构以及功能详解
一.React什么算法,什么虚拟DOM,什么核心内容网上一大堆,请自行google. 但是能把算法说清楚,虚拟DOM说清楚的聊聊无几.对开发又没卵用,还不如来点干货看看咋用. 二.结构如下: impo ...
- ElasticSearch 5学习(10)——结构化查询(包括新特性)
之前我们所有的查询都属于命令行查询,但是不利于复杂的查询,而且一般在项目开发中不使用命令行查询方式,只有在调试测试时使用简单命令行查询,但是,如果想要善用搜索,我们必须使用请求体查询(request ...
随机推荐
- Linux移植之移植步骤
在这里总结一下我在移植Linux2.6.22.6内核过程时的步骤.移植成功后最终能挂接做好的根文件系统,并且启动第一个init程序.移植的步骤如下: 1.将网上下载的内核源码文件linux-2.6.2 ...
- C# iframe session 丢失
在页面A中使用iframe引用另一站点页面B,但页面B上面的session总是丢失,百度了一下,不用改程序,直接在iis里面操作,解决方法如下 1.打开IIS管理器 inetmgr 2.选择被嵌入if ...
- BZOJ1059或洛谷1129 [ZJOI2007]矩阵游戏
BZOJ原题链接 洛谷原题链接 通过手算几组例子后,很容易发现,同一列的\(1\)永远在这一列,且这些\(1\)有且仅有一个能产生贡献,行同理. 所以我们可以只考虑交换列,使得每一行都能匹配一个\(1 ...
- 洛谷1993 小K的农场
原题链接 裸的差分约束. \(X_a-X_b\geqslant C\) \(X_a-X_b\leqslant C\Rightarrow X_b-X_a\geqslant -C\) \(X_a-X_b\ ...
- Python的程序入口 __name__属性
python中每个模块都有一个 '__name__' 属性,当其值为 '__main__' 时,表名该模块自身在运行,否则是被引入的. 当一个模块被当做一个整体调用的时候,模块名.__name__ 的 ...
- Java中的四种内部类
Java中有四种内部类: 成员内部类:定义在另一个类(外部类)的内部,而且与成员属性和方法平级,故称成员内部类.类比于外部类的非静态方法,如果用static修饰就变成了静态内部类 静态内部类:使用st ...
- Vue 不同环境配置相应的 API 地址
我使用的是 Vue + ElementUI 进行构建的项目,在开发过程中,使用的是前后端分离的模式,所以经常会出现多环境配置信息,尤其是 Api 接口地址的配置,如果在代码中使用判断的方式,感觉不友好 ...
- Spring ApplicationContext(十)finishRefresh
ApplicationContext(十)finishRefresh Spring 系列目录(https://www.cnblogs.com/binarylei/p/10198698.html) 经过 ...
- spring学习 十五 spring的自动注入
一 :在 Spring 配置文件中对象名和 ref=”id” ,id 名相同使用自动注入,可以不配置<property/>,对应的注解@Autowired的作用 二: 两种配置办法 (1 ...
- MySQL Server参数优化 - innodb_file_per_table(独立表空间)
1 简介 Innodb存储引擎可将所有数据存放于ibdata*的共享表空间,也可将每张表存放于独立的.ibd文件的独立表空间. 共享表空间以及独立表空间都是针对数据的存储方式而言的. ...