/*
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. Redis发布订阅方法

    进入redis中 docker run -it redis:latest redis-cli -h 192.168.28.56 (本机的ip地址) 以下实例演示了发布订阅是如何工作的.在我们实例中我们 ...

  2. CSS设计模式

    关于web设计的网站 https://www.smashingmagazine.com/

  3. JavaScript进阶系列1:performace和console.time性能测试

    测试性能的时候,三种方法: 1.使用new Date() 返回整数值ms var dtStart=new Date(); for(var i=0;i<15000;i++){ i=i; } var ...

  4. [leecode]---11.container with most water

    description: Input: [1,8,6,2,5,4,8,3,7]Output: 49 思路1: 从(1,a1)开始向后算面积,需要两层n循环,时间复杂度n2 思路2: 找出数组中最大的数 ...

  5. IOS-iphone默认的点击效果清除

    为需要被清除的元素添加此属性:-webkit-tap-highlight-color:rgba(255,255,255,0);

  6. 苹果手机的SB系列(1)听不懂人话的sir

    写在前面,因手买错了(至于怎么买错了不解释)手机才买了一个苹果,价格不扉,但实在让人很不爽.记下了SB的点点. Sir听不懂人话,我让他查非洲安哥拉的时间,却屡次返回美国安哥拉洲的时间,很自恋.

  7. 生成git,ssh的key

    git clone ssh 代码: 报错: Warning: Permanently added 'gitee.com,120.55.226.24' (ECDSA) to the list of kn ...

  8. Elixir东游记/上:intro/1

    1. 为啥前面还在搞haxe,现在又换到elixir了? erlang本来我就在用,用elixir不过是方便顺手给人科普而已. 2. so,接下来你打算用elixir干嘛? 很简单,写一个简单的解释器 ...

  9. Python,是什么让我遇见你

    有些不可思议,作为一个曾学了半年C语言还挂了的计算机学渣,我竟然选择了Python这门计算机语言课.事实上,我是有过犹豫的,毕竟知道自己不擅长这方面的学习还选这门课,这种行为确实看起来有点傻傻的.但最 ...

  10. 笨办法40模块, 类和对象class

    class a: def change(self, sign, call): self.first = sign self.second = call first = 'first' second = ...