Mysql 存储过程及while循环

创建存储过程,我用的是Navicat,用PHPMyadmin老是报莫名其妙的错误,郁闷。
创建方法:打开目标数据库,在”函数”上点右键,New Function,类型选“进程”,设置参数,我这两个IN模式,bigint类型的参数,一个startUnix,一个endUnix.传入两个unix时间戳.
这个范例的目标是,根据传入的两个时间之间的时间段,输出这个时间段内的日期,传入时间都是某天的零点。
创建一个临时表,把计算出来的日期添加进这个表中。
定义代码:


BEGIN
declare tempdate date;
declare startdate date;
declare enddate date;
set enddate=DATE_FORMAT(FROM_UNIXTIME(endUnix),'%Y-%m-%d');
set startdate=DATE_FORMAT(FROM_UNIXTIME(startUnix),'%Y-%m-%d');
set tempdate=date_add(startdate,interval 1 day);
create temporary table temp select startdate as Date;
while tempdate

不需要写create PROCEDURE,因为navicat会帮我们干。
保存后会提示输入存储过程的名字,我这填createDateTable.
运行:call createDateTable(1335628800,1339257600)
运行结果,显示2012-04-29到2012-06-09.

© 2012, 冰冻鱼. 请尊重作者劳动成果,复制转载保留本站链接! 应用开发笔记