mysql 的存储过程 循环 变更某个表里的字段
/*
Navicat MySQL Data Transfer
Source Server : localhost_3306
Source Server Version : 50505
Source Host : localhost:3306
Source Database : kamanage
Target Server Type : MYSQL
Target Server Version : 50505
File Encoding : 65001
Date: 2018-09-11 13:50:36
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for `students_tow`
-- ----------------------------
DROP TABLE IF EXISTS `students_tow`;
CREATE TABLE `students_tow` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) DEFAULT NULL,
`age` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=44 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of students_tow
-- ----------------------------
INSERT INTO `students_tow` VALUES ('16', 'songqiaoli', '1');
INSERT INTO `students_tow` VALUES ('17', 'zhangpeng', '8');
INSERT INTO `students_tow` VALUES ('18', 'zhangchenghao', '8');
INSERT INTO `students_tow` VALUES ('19', 'songqiaoli', '2');
INSERT INTO `students_tow` VALUES ('20', 'zhangpeng', '8');
INSERT INTO `students_tow` VALUES ('21', 'zhangchenghao', '8');
INSERT INTO `students_tow` VALUES ('22', 'songqiaoli', '3');
INSERT INTO `students_tow` VALUES ('23', 'zhangpeng', '8');
INSERT INTO `students_tow` VALUES ('24', 'zhangchenghao', '8');
INSERT INTO `students_tow` VALUES ('25', 'songqiaoli', '4');
INSERT INTO `students_tow` VALUES ('26', 'zhangpeng', '8');
INSERT INTO `students_tow` VALUES ('27', 'zhangchenghao', '8');
INSERT INTO `students_tow` VALUES ('29', 'songqiaoli', '5');
INSERT INTO `students_tow` VALUES ('30', 'zhangpeng', '8');
INSERT INTO `students_tow` VALUES ('31', 'zhangchenghao', '8');
INSERT INTO `students_tow` VALUES ('32', 'songqiaoli', '6');
INSERT INTO `students_tow` VALUES ('33', 'zhangpeng', '8');
INSERT INTO `students_tow` VALUES ('34', 'zhangchenghao', '8');
INSERT INTO `students_tow` VALUES ('35', 'songqiaoli', '7');
INSERT INTO `students_tow` VALUES ('36', 'zhangpeng', '8');
INSERT INTO `students_tow` VALUES ('37', 'zhangchenghao', '8');
INSERT INTO `students_tow` VALUES ('38', 'songqiaoli', '8');
INSERT INTO `students_tow` VALUES ('39', 'zhangpeng', '8');
INSERT INTO `students_tow` VALUES ('40', 'zhangchenghao', '8');
================================================================以上是数据==========================================
要求,把姓名叫zhangpeng 的人的age,从1开始 累数的+1
create PROCEDURE changeAge ()
begin
declare index_id varchar(20);
declare named varchar(20);
declare age int (11);
declare change_age int(1) default 1;
declare end_tag int default 0;
declare list CURSOR for SELECT id,name,age from students_tow where name='zhangpeng';
DECLARE CONTINUE HANDLER for not FOUND SET end_tag=1;
open list;
repeat
fetch list into index_id,named,age;
if not end_tag then
select change_age;
update students_tow set age=change_age where id=index_id;
end if;
set change_age=change_age+1 ;
until end_tag end repeat;
end;
call changeAge();
drop PROCEDURE changeAge
SELECT name,age from students_tow where name='zhangpeng'
mysql 的存储过程 循环 变更某个表里的字段的更多相关文章
- mysql -- 创建存储过程 往数据表中新增字段
需求: 往某数据库的某个表中新增一个字段(若该字段已存在,则不做操作:若该字段不存在,则新增) 百度了n久,没有符合要求的例子,只有参考加自己琢磨,最终终于给弄出来了,以下是几个版本的更迭 第一版: ...
- MySQL 存储过程循环
MySQL 存储过程循环 MySQL循环语句(包括WHILE,REPEAT和LOOP)来根据条件反复运行代码块. MySQL提供循环语句,允许您根据条件重复执行一个SQL代码块. MySQL中有三个 ...
- MySQL存储过程中的3种循环,存储过程的基本语法,ORACLE与MYSQL的存储过程/函数的使用区别,退出存储过程方法
在MySQL存储过程的语句中有三个标准的循环方式:WHILE循环,LOOP循环以及REPEAT循环.还有一种非标准的循环方式:GOTO,不过这种循环方式最好别用,很容易引起程序的混乱,在这里就不错具体 ...
- MYSQL:基础—存储过程
MYSQL:基础-存储过程 快速入门 理解: 迄今为止,我们学过的大多数SQL语句都是针对一个或多个表的单条语句.但是并不是所有的操作都是可以用一条语句来完成的,经常有一些操作是需要多条语句配合才能完 ...
- mysql 的存储过程_多字段
mysql 的存储过程 一.准备工作 新建一个表 /*Navicat MySQL Data Transfer Source Server : localhost_3306Source Server V ...
- MySQL的存储过程1
来源:http://blog.sina.com.cn/s/blog_52d20fbf0100ofd5.html MySQL的存储过程 2. 关于MySQL的存储过程存储过程是数据库存储的一个重要的功能 ...
- Mysql的存储过程(以Mysql为例进行讲解)
我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储 在数据库中,用户通过指定存 ...
- mysql之——存储过程 + 游标 + 事务
下面是自己曾经编写过的mysql数据库存储过程,留作存档,以后用到的时候拿来参考. 其中,涉及到了存储过程.游标(双层循环).事务. [说明]:代码中的注释只针对当时业务而言,无须理会. 代码如下: ...
- MySQL笔记 存储过程 游标 触发器
第二十三章 使用存储过程 MySQL5 中添加了存储过程的支持. 大多数SQL语句都是针对一个或多个表的单条语句.并非所有的操作都怎么简单.经常会有一个完整的操作需要多条才能完成 存储过程简单来说,就 ...
随机推荐
- python __getattra__()
官网解释: object.__getattr__(self, name) Called when an attribute lookup has not found the attribute in ...
- angular学习第1步
#### 最专业,最全面的angular的学习文档 https://www.jianshu.com/p/f0f81a63cbcb ### https://www.cnblogs.com/xiaowei ...
- MATLAB 符号变量表达式 + 方程求解
源代码见文末 部分源代码: % 符号变量 两种表达方式 a=sym('a'); class(a); syms b; b; % 符号常量 c=sym('); c; % 符号表达式 三种表达方式 f1=' ...
- 什么是,session、cookies、token
在一片文章上看到关于cookies和session 的解释,大概意思是这样的. 说你去星巴克喝咖啡,你平均一星期去两次,你的操作是看菜单,点咖啡.结账 加入你三星期不去,店员也许不及得你了,你依旧需要 ...
- springboot缓存注解——@Cacheable和@CacheConfig
@Caching :制定多个缓存规则 @Cacheable 和 @CachePut 同时标注时 ,@CachePut导致还是会走方法跟数据库交互 //根据lastName查,并将结果缓存,并且可以用于 ...
- Pandas Series和DataFrame的基本概念
1,创建Series 1.1,通过iterable创建Series Series接收参数是Iterable,不能是Iterator pd.Series(Iterable) 可以多加一个index参数, ...
- archlinux 装完系统连接 wifi 网络
查看 IP 地址 ip a 注:没有看到 IP 地址,确认没有网络.或者也可以使用命令 ping www.baidu.com 测试是否有网络. 执行该指令: sudo systemctl start ...
- Windows server2008服务器设置多用户登录
添加用户 右击我的电脑-->管理-->本地用户和组-->新用户 启用远程服务并添加远程用户 启用 右键我的电脑--->属性--->远程设置--->勾上允许远程连接到 ...
- Genymotion模拟器无法直接安装APP
使用Genymotion模拟器安装APP的过程中,将我们的apk拖进去模拟器报以下错误: Genymotion官网常见问题解决办法汇集地址:https://www.genymotion.com/#!/ ...
- 弹筐里同一个按钮判断是从哪里点击过来的form
点击弹框按钮 <form action="javascript:;" method="post"> <button type= ...