【转】mysql 存储过程的示例
原文地址:https://blog.csdn.net/lishaojun0115/article/details/50183661
begin
#定义变量
declare local_sender varchar(20);
declare local_receiver varchar(20);
declare local_status int;
#创建游标
declare local_message cursor for select patientid,doctorid from
tb_purchaseservice_relation where state=1 and createtime<date_sub(now(),interval 2 day );
DECLARE CONTINUE HANDLER FOR NOT FOUND SET local_status=0;
set local_status=0;
#打开游标
open local_message;
set local_status=(select count(*) from tb_purchaseservice_relation where state=1 and createtime<date_sub(now(),interval 2 day ));
#while循环
while local_status>0 do
#给游标赋值
fetch local_message into local_sender,local_receiver;
if(local_status>0) then
insert into tb_messagecenter(typeid,sender,receiver,content,isLooked,title,isDeal,dealResult)
values(807,concat('s_',807),local_sender,concat('您购买',local_receiver,'的服务未处理,已失效'),0, '购买服务失效',0,3 );
insert into tb_pushmessage(MessageText,doctorId,patientId,channelId,pushType,messagetype,messageTitle)
values(concat('您购买',local_receiver,'的服务未处理,已失效'),concat('s_',807),local_sender,local_sender,1,807,'购买服务失效');
set local_status=(local_status-1);
end if;
end while;
insert into tb_purchaseservice_history(purchaseId,patientId,doctorId,state,consumePoint,transfertime)
select purchaseId,patientid,doctorid,5 as state,consumePoint,createtime from tb_purchaseservice_relation
where state=1 and createtime<date_sub(now(),interval 2 day );
delete from tb_purchaseservice_relation where state=1 and createtime <date_sub(now(),interval 2 day );
#结束游标
close local_message;
end
【转】mysql 存储过程的示例的更多相关文章
- mysql存储过程基础示例
转自:http://database.51cto.com/art/201608/516661.htm http://www.cnblogs.com/mark-chan/p/5384139.html D ...
- MySQL 存储过程参数
MySQL 存储过程参数 MySQL存储过程参数简介 在现实应用中,开发的存储过程几乎都需要参数.这些参数使存储过程更加灵活和有用. 在MySQL中,参数有三种模式:IN,OUT或INOUT. IN ...
- 创建MySQL存储过程示例
创建MySQL存储过程是学习MySQL数据库必须要掌握的知识,下文对创建MySQL存储过程作了详细的介绍,供您参考学习. AD:2013大数据全球技术峰会课程PPT下载 下文将教您如何创建MySQL存 ...
- MySQL 存储过程传参数实现where id in(1,2,3,...)示例
一个MySQL 存储过程传参数的问题想实现例如筛选条件为:where id in(1,2,3,...),下面有个不错的示例,感兴趣的朋友可以参考下 正常写法: ,,,,...); 当在写存储过程 ...
- MySQL存储过程示例
MySQL存储过程: /*自定义结束符*/ DELIMITER $$ /*如果存在同名的存储过程就删除*/ DROP PROCEDURE IF EXISTS prAddBlack$$ /*创建存储过程 ...
- mysql存储过程和存储函数
mysql存储过程和存储函数 存数函数代码示例: DROP PROCEDURE IF EXISTS calc_ci_day_suc_rate; delimiter // CREATE FUNCTION ...
- Mysql存储过程调用
mysql存储过程实例教程 发布时间:2014-04-09编辑:JB01 这篇文章主要介绍了mysql存储过程的使用方法,mysql存储过程实例教程,有需要的朋友参考下. 1.1create p ...
- Mysql存储过程查询结果赋值到变量的方法
Mysql存储过程查询结果赋值到变量的方法 把查询结果赋值到变量,大部分情况下使用游标来完成,但是如果明确知道查询结果只有一行(例如统计记录的数量,某个字段求和等),其实可以使用set或into的 ...
- mysql存储过程之异常处理篇
mysql存储过程也提供了对异常处理的功能:通过定义HANDLER来完成异常声明的实现 语法如下: DECLARE handler_type HANDLER FOR condition_value[, ...
随机推荐
- am335x system upgrade kernel f-ram fm25l16b(十六)
1 Scope of Document This document describes SPI F-RAM hardware design 2 Requiremen 2.1 ...
- while循环实现十进制转二进制
#include <stdio.h> int main(void){ int a,n; printf("pls input number:\n"); scanf(&qu ...
- C语言中一个字符对应一个ascii码;占一个1个字节8个二进制位;存到内存中也是用ascii的十进制的二进制表示
/** 只读变量和常量 const 只读 const int a; int const a;//同上面的代码行是等价的,都表示一个常整形数. int *const a;//const具有"左 ...
- AtCoder Grand Contest 021题解
传送门 \(A\) 咕咕 ll n,res;bool fl; int main(){ scanf("%lld",&n),fl=1; while(n>9)res+=9, ...
- AtCoder Grand Contest 039 题解
传送门 \(A\) 首先只有一串的情况下,遇到相同的肯定是改后面那一个最优,然后两串的话可能要分奇偶讨论一下 //quming #include<bits/stdc++.h> #defin ...
- linux 常用性能优化
linux 常用性能优化 1. 优化内核相关参数 配置文件/etc/sysctl.conf 配置方法直接将参数添加进文件每条一行. sysctl -a可以查看默认配置 sysctl -p 执行并检测是 ...
- python中的zip函数的使用
>>> x = [, , ] >>> y = [, , ] >>> z = [, , ] >>> xyz = list(zip( ...
- Prometheus配置文件
在prometheus监控系统,prometheus的职责是采集,查询和存储和推送报警到alertmanager.本文主要介绍下prometheus的配置文件. 全局配置文件简介 默认配置文件 按 C ...
- ICEM-模型导入失败的解决方法
原视频下载地址:https://yunpan.cn/cxITx5uXY6dAp 访问密码 ade8
- Qt--core模块概述
QtCore模块是所有其它Qt模块的基础,包含以下核心功能: Qt Data Types:数据类型Qt Object Model:对象模型(包括元对象模型.属性系统.信号与槽机制.对象树)Input/ ...