/*
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 的存储过程 循环 变更某个表里的字段的更多相关文章

  1. mysql -- 创建存储过程 往数据表中新增字段

    需求: 往某数据库的某个表中新增一个字段(若该字段已存在,则不做操作:若该字段不存在,则新增) 百度了n久,没有符合要求的例子,只有参考加自己琢磨,最终终于给弄出来了,以下是几个版本的更迭 第一版: ...

  2. MySQL 存储过程循环

    MySQL  存储过程循环 MySQL循环语句(包括WHILE,REPEAT和LOOP)来根据条件反复运行代码块. MySQL提供循环语句,允许您根据条件重复执行一个SQL代码块. MySQL中有三个 ...

  3. MySQL存储过程中的3种循环,存储过程的基本语法,ORACLE与MYSQL的存储过程/函数的使用区别,退出存储过程方法

    在MySQL存储过程的语句中有三个标准的循环方式:WHILE循环,LOOP循环以及REPEAT循环.还有一种非标准的循环方式:GOTO,不过这种循环方式最好别用,很容易引起程序的混乱,在这里就不错具体 ...

  4. MYSQL:基础—存储过程

    MYSQL:基础-存储过程 快速入门 理解: 迄今为止,我们学过的大多数SQL语句都是针对一个或多个表的单条语句.但是并不是所有的操作都是可以用一条语句来完成的,经常有一些操作是需要多条语句配合才能完 ...

  5. mysql 的存储过程_多字段

    mysql 的存储过程 一.准备工作 新建一个表 /*Navicat MySQL Data Transfer Source Server : localhost_3306Source Server V ...

  6. MySQL的存储过程1

    来源:http://blog.sina.com.cn/s/blog_52d20fbf0100ofd5.html MySQL的存储过程 2. 关于MySQL的存储过程存储过程是数据库存储的一个重要的功能 ...

  7. Mysql的存储过程(以Mysql为例进行讲解)

       我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储 在数据库中,用户通过指定存 ...

  8. mysql之——存储过程 + 游标 + 事务

    下面是自己曾经编写过的mysql数据库存储过程,留作存档,以后用到的时候拿来参考. 其中,涉及到了存储过程.游标(双层循环).事务. [说明]:代码中的注释只针对当时业务而言,无须理会. 代码如下: ...

  9. MySQL笔记 存储过程 游标 触发器

    第二十三章 使用存储过程 MySQL5 中添加了存储过程的支持. 大多数SQL语句都是针对一个或多个表的单条语句.并非所有的操作都怎么简单.经常会有一个完整的操作需要多条才能完成 存储过程简单来说,就 ...

随机推荐

  1. 《R语言入门与实践》第四章:R 的记号体系

    这一章节将如何对 R 对象中的值进行选取,R 的符号规则有两种方式进行查询: 第一种记号体系:索引查询索引语法:deck[ , ](使用中括号)其中[ , ] 为索引,其中含有两个索引参数,用 &qu ...

  2. locust启动命令

    locust运行测试脚本 locust -f .\load_test.py --host=https://www.baidu.com -f 指定性能测试脚本文件. --host 指定被测试应用的URL ...

  3. 记一次linux上的ftp搭建过程

    最近公司测试环境需要搭建ftp,正好自己稍微有点空且这方面确实不会,就自告奋勇说让我先试试,玩炸了你们再帮忙重装系统重新搭吧(手动滑稽),虽然最终是完成了,但是中间磕磕碰碰遇到一些小问题,到处查百度, ...

  4. Matlab内嵌图像

    在数值分析中我们通常需要将数据可视化成图像的形式作为我们分析结果的有效性的途径,常用的画图函数有:$\tt plot$,$\tt surf$,$\tt mesh$...当然,我们有时需要多窗口显示图像 ...

  5. C++函数指针与指针函数干货

    C++要是不常用,相信过四天你的指针函数与函数指针的概念就该忘个精光. 其实只要记住谁在后面谁就是哪个本质. 先了解下指针数组与数组指针吧 数组指针 就是指向数组的指针,它表示的是一个指针,它指向的是 ...

  6. 前台ajax请求php后台返回成功却进error方法解决

    最近几天一直都在解决error问题,周末都没能好好过,悲痛万分,想逃走

  7. uiautomatorviewer工具的安装与使用

    Android自动化测试应用<一><uiautomatorviewer工具的安装与使用> OldKe 关注 2018.01.25 18:00* 字数 488 阅读 2083评论 ...

  8. Go项目中beego的orm使用和gorm的使用

    按照beego官方文档练习ORM的使用,model创建完始终没找到办法创建表,于是使用gorm翻译文档和官方文档进行了练习,使用起来还是比较简单. 安装: 方法一:Terminal打开,go get ...

  9. 修改docker出现中文字符出现乱码的问题

    修改docker出现中文字符出现乱码的问题 在启动容器时 指定选项  -e LANG=en_US.UTF-8

  10. union、union all 、distinct的区别和用途

    1.从用途上讲 它们都具有去重的效果 2.从效率上讲 distinct通常不建议使用,效率较低;union all 和union 而言,union all效率更高;原因是:union 相当于多表查询出 ...