mysql 游标的使用方法

BEGIN
/*计算用户提成总金额*/
declare amountPrice,pays,rates,goodsPrice DECIMAL(10,2) DEFAULT 0;
DECLARE  flag int,getUserId;
#if(userlevel=1) then

SELECT  member_id into getUserId  from 33hao_member where openid=open_id

declare cur cursor for  select commission1_rate rates,commission1_pay pays,goods_price from 33hao_goods_common;
 DECLARE CONTINUE HANDLER FOR NOT FOUND SET flag=1;
    SET flag=0;
OPEN cur;
REPEAT
FETCH cur into rates,pays,goodsPrice;

if(rates=null) then
  set amountPrice=amountPrice+pays;
ELSE
   set  amountPrice=amountPrice+goodsPrice*rates;
end if;

UNTIL flag end REPEAT;

CLOSE cur;
RETURN  amountPrice;
end
时间: 2024-08-10 23:28:02

mysql 游标的使用方法的相关文章

MySQL 游标管理

在理解了Oracle上的游标之后,再去翻MySQL中关于游标的说明,发现这块讲得比较简单,用一个例子来说明就能理解MySQL游标的使用方法. 游标的使用分为4步:分别是打开游标(open).游标循环(loop,leave).提取数据(fetch).关闭游标(close). 这里使用了Mysql官方文档(5.5)中的例子: CREATE PROCEDURE curdemo() BEGIN DECLARE done INT DEFAULT FALSE; DECLARE a CHAR(16); DEC

SqlServer和MySQL游标学习

一 sqlserver游标使用 /*** 游标的使用  讲了这个多游标的优点,现在我们就亲自来揭开游标的神秘的面纱.  使用游标的顺序: 声名游标.打开游标.读取数据.关闭游标.删除游标. 1.3.1声明游标 最简单游标声明:DECLARE <游标名>CURSOR FOR<SELECT语句>: 其中select语句可以是简单查询,也可以是复杂的接连查询和嵌套查询 例子: [已表2 AddSalary为例子] Declare mycursor cursor for select *

MYSQL 更改datadir的方法

环境:ubuntu 12.04  apt-get安装的mysql 原因:考虑到以后数据库会日益变大,需要把数据的datadir改到空间比较大的数据磁盘上. 环境需要把datadir存储到/mnt/mysql_data/mysql下 /mnt已经挂载了大的磁盘分区 首先停掉mysql,挂载好磁盘. 1:修改/etc/mysql/my.cnf 修改datadir=/mnt/mysql_data/mysql 2:给予文件夹权限,copy 需要把/var/lib/mysql 复制到/mnt/mysql_

将SQL Server 2000数据导入到MySQL 5.5的方法

一.安装MySQL 5.5(可以与SQL Server不在同一台服务器上),并新建一个空的数据库(一般用utf-8编码),用于接收导入的数据. 二.在SQL Server的服务器上安装mysql-connector-odbc-5.3.2-win32. 三.在SQL Server的服务器上运行"管理工具"->"数据源(ODBC)",切换到"系统DSN"面板,添加"MySQL ODBC 5.3 Unicode Driver"

18 MySQL数据导入导出方法与工具介绍之二

批处理是一种非交互式运行mysql程序的方法,如同您在mysql中使用的命令一样,你仍然将使用这些命令. 为了实现批处理,您重定向一个文件到mysql程序中,首先我们需要一个文本文件,这个文本文件包含有 与我们在mysql中输入的命令相同的文本.比如我们要插入一些数据,使用包含下面文本的文件(文件名为New_Data.sql,当然我们也可以取名为 New_Data.txt及任何其他的合法名字,并不一定要以后缀sql结尾):USE Meet_A_Geek;INSERT INTO Customers

Spring、Ibatis结合MySQL数据库的使用方法

Ibatis是MyBatis的前身,它是一个开源的持久层框架.它的核心是SqlMap--将实体Bean跟关系数据库进行映射,将业务代码和SQL语句的书写进行分开.Ibatis是"半自动化"的ORM持久层框架.这里的"半自动化"是相对Hibernate等提供了全面的数据库封装机制的"全自动化"ORM实现而言的,"全自动"ORM实现了POJO与数据库表字段之间的映射并且实现了SQL的自动生成和执行.而Ibatis的着力点,则在于P

mysql 安装错误 解决方法

错误及警告信息:TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option 解决方法:需要在my.cnf里面加入下面的参数:explicit_defaults_for_timestamp=true 错误及警告信息:Can't find messagefile '/usr/share/mysql/errmsg.sys 解决方法:需要在m

修改mysql默认字符集的方法

mysql默认字符集能否进行修改呢?答案是肯定的,下面就将教您两种修改mysql默认字符集的方法,希望对您学习mysql默认字符集方面能有所启迪. (1) 最简单的修改方法,就是修改mysql的my.ini文件中的字符集键值, 如 default-character-set = utf8  character_set_server = utf8 修改完后,重启mysql的服务,service mysql restart 使用 mysql> SHOW VARIABLES LIKE 'charact

mysql主从同步配置方法和原理

mysql主从复制试验环境:    1.CentOS5.8 x86_64位 采用最小化安装,系统经过了基本优化篇    2.mysql版本: 5.1.73-log ,同台服务器多实例,安装方法参考:mysql多实例安装方法 3.源码包存放位置:/home/oldboy/tools    4.源码包编译安装位置:/application/一.修改master配置    1.修改my.cnf配置         vi /data/3306/my.cnf         egrep "log-bin|