15.存储过程生产环境应用综合示例详解
来源:互联网 发布:java 返回前台值换行 编辑:程序博客网 时间:2024/05/21 17:07
来源:网易云课堂《精通MySQL存储过程、函数和触发器》课程
讲师:huangxifeng607(黄锡峰)
笔记
(1)存储过程需求分析
生产场景描述:
1.在游戏中,每个账号(accountid)可以最多5个角色(characterid)。角色表:t_game_character
2.5个角色放到一定的槽位(slot)中,槽位值必须是0-4,不能有相同的槽位,否则在游戏中就无法正常看到所有角色。
3.两个游戏分区合服,合服之后每个账号按规则删除只剩下5个角色,但槽位值可能有重复的。
实现需求:同一个账号有多个角色有重复槽位值,需要重置槽位值,使其值在0-4且不重复。
实现难点:有多个账号accountid,多个账号下又有多个角色。
多个账号使用一个循环,每个账号下多个角色又使用循环,即使用嵌套循环。
多个账号使用游标来实现,每个账号下多个角色又使用嵌套游标来实现。
create procedure procharslot()begindeclare AID int;declare stopflag int default 0;declare curacc cursor for select accountid from reset_slot_accountid;declare continue handler for not found set stopflag=1;open curacc;repeatfetch curacc into aid;begindeclare Cid int;declare CSlot int;declare done int default 0;declare CurChar cursor from select characterid from t_game_character where accountid=AID;declare continue handler for not found set done=1;set CSlot=0;open CurChar;fetch CurChar into Cid;while(done=0) dobeginupdate t_game_character set CharSlot=CSlot where characterid=Cid;set CSlot=CSlot+1;fetch CurChar into Cid;end;end while;close CurChar;end;until stopflag=1 end repeat;close curacc;end;
阅读全文
0 0
- 15.存储过程生产环境应用综合示例详解
- 第三十讲 : 综合应用&存储过程
- mysql-测试环境对比生产环境-表、存储过程
- 第三十讲 : 综合应用&存储过程 返回值参数实例
- 泛型、存储过程、事务、视图——综合应用
- ASP开发中存储过程应用详解|
- ASP开发中存储过程应用详解
- ASP开发中存储过程应用详解
- [MySQL生产环境] Innodb存储引擎内存报警问题处理过程
- [MySQL生产环境] Innodb存储引擎内存报警问题处理过程
- LVS 生产环境架构详解
- 一个示例存储过程
- 存储过程示例
- 数据库存储过程示例
- 存储过程嵌套示例
- oracle 存储过程示例
- 调用存储过程示例
- 存储过程示例
- python实现二叉树以及二叉树的遍历--1(函数实现)
- 函数声明和函数表达式
- 一张图看学霸,杭州云栖大会前13位顶尖科学家聚会
- des加密加密 base64 utf8
- Guitar Pro 7中显示吉他面板的几种方式
- 15.存储过程生产环境应用综合示例详解
- CentOS下安装Mysql步骤
- ssm框架搭建(三)-controller层-springMVC
- android studio签名文件,以及查看MD5和SHA1信息
- h5和原生java交互
- SQL 查询计算中位数
- 使用css实现页面头部固定,下面随着内容的增多滚动,但是头部不动的效果
- Tomcat基础知识
- ubuntu16.04 虚拟机 安装win7/win10