通过传递节假日信息基础表主键、节日开始时间,添加或修改日期信息表中所属节日、所属节日第几天信息,达到配置节假日信息功能。
在mysql存储过程《2》中使用了loop完成此配置节假日的功能,现在使用另外两种循环方式完成此功能。
一:使用while。
DROP PROCEDURE IF EXISTS holiday; CREATE PROCEDURE holiday ( IN holiday INT, IN startTime VARCHAR (12) ) BEGIN DECLARE C INT DEFAULT 0; DECLARE dateOne VARCHAR (12); DECLARE offsetValue INT DEFAULT 1; DECLARE done INT DEFAULT FALSE; DECLARE cu CURSOR FOR SELECT date FROM util_date WHERE date >= startTime LIMIT C; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; SELECT days INTO C FROM util_holiday WHERE id = holiday; UPDATE util_date SET holidayid = '0', dayoffset = '0' WHERE YEAR = SUBSTRING(startTime, 1, 4) AND holidayid = holiday; OPEN cu; FETCH cu INTO dateOne; WHILE done = FALSE DO UPDATE util_date SET holidayid = holiday, dayoffset = offsetValue WHERE date = dateOne; SET offsetValue = offsetValue + 1; FETCH cu INTO dateOne; END WHILE; CLOSE cu; END
二:使用repeat。
DROP PROCEDURE IF EXISTS holiday; CREATE PROCEDURE holiday ( IN holiday INT, IN startTime VARCHAR (12) ) BEGIN DECLARE C INT DEFAULT 0; DECLARE dateOne VARCHAR (12); DECLARE offsetValue INT DEFAULT 1; DECLARE done INT DEFAULT FALSE; DECLARE cu CURSOR FOR SELECT date FROM util_date WHERE date >= startTime LIMIT C; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; SELECT days INTO C FROM util_holiday WHERE id = holiday; UPDATE util_date SET holidayid = '0', dayoffset = '0' WHERE YEAR = SUBSTRING(startTime, 1, 4) AND holidayid = holiday; OPEN cu; REPEAT FETCH cu INTO dateOne; IF done = FALSE THEN UPDATE util_date SET holidayid = holiday, dayoffset = offsetValue WHERE date = dateOne; SET offsetValue = offsetValue + 1; END IF; UNTIL done END REPEAT ; CLOSE cu; END
mysql中的while和repeat就像是java中的while和do……while。
相关推荐
这个名为“Jsp_Uploading_MySQL.rar_mysql image”的压缩包内容很可能涉及到使用JSP实现文件上传功能,特别是图片(image),并将这些文件存储到MySQL数据库中的过程。这一主题涵盖了许多关键知识点,下面我们将详细...
断点续传是HttpUploader的一个核心特性,这意味着如果上传过程中因网络问题中断,用户无需重新开始,可以从上次中断的地方继续上传,极大地提高了上传效率和用户体验。这一功能通过保存上传进度信息来实现,当网络...
在这个系统中,用户可以选择本地的文件进行上传,服务器接收到文件后将其存储到特定的服务器目录,例如"upload",并可能通过数据库(如MySQL)来管理这些文件的信息。用户可以通过同样的Web界面请求下载已上传的文件...
2. 实现断点续传的关键步骤 - **状态保存**:客户端在开始上传前,需要检查本地是否有已保存的上传进度信息。如果存在,就使用这些信息来确定起始上传位置。 - **定制HTTP请求**:由于标准的HTTP协议不直接支持...
酒店管理系统 mysql设计应用实战 1.酒店入住流程 客户可有三种需求分别为入住请求,续住请求及退房请求 2.酒店系统信息 整体系统功能概况 3.总体ER图 概念:ER模型,全称为实体关系模型,也称为E-R图。E-R模型由实体...
这个组件可能包含了实现断点续传和进度条展示的功能,支持UTF-8编码,并且可能已经集成了MySQL数据库的支持,用于存储文件上传状态信息。 对于`HttpUploader5Utf8MySQL`,我们可以推测这可能是一个基于HTTP的上传...
熟悉MySQL需要理解SQL语言,包括数据查询、增删改查操作,以及索引、视图、存储过程等高级特性。 三、数据库设计 在设计房屋租赁管理系统数据库时,需要明确实体(如房屋、租户、房东等)及其关系,通过ER图进行...
在Java环境中,可以利用Spring MVC或者Servlet来接收和处理上传请求,使用如MySQL、MongoDB等数据库来存储分块信息,或者使用分布式文件系统如HDFS来存储和合并大文件。同时,还需要考虑安全性,比如防止重复上传、...
本项目"大文件上传支持断点续传springboot版"便是一个很好的示例,它整合了MyBatis作为持久层框架,并使用MySQL作为数据库存储。下面将详细解释这个项目的核心知识点。 **1. 断点续传技术** 断点续传是一种允许用户...
【Mysql5.5】是MySQL数据库的一个版本,它提供了关系型数据库管理系统的核心功能,包括SQL语法支持、事务处理、存储过程等。MySQL5.5在性能、可扩展性和安全性方面都有显著提升,特别是InnoDB存储引擎的改进,使得它...
这个系统利用了MySQL数据库进行数据存储和管理,使得文件分享过程更加高效和稳定。在深入探讨这个系统之前,我们首先需要了解PHP和MySQL的基础知识。 PHP(Hypertext Preprocessor)是一种广泛使用的开源服务器端...
MySQL作为关系型数据库管理系统,存储了网站的各类数据,如用户信息、歌曲详情、播放列表等。它的高性能和稳定性为在线音乐服务提供了坚实的数据支持。在设计数据库时,需要考虑表的结构、字段类型、索引优化等方面...
本项目“JSP + Servlet + MySQL”网盘系统,结合了前端展示、后端处理以及数据库存储的核心技术,旨在为用户提供一个安全、便捷的在线文件存储解决方案。 1. **JSP(JavaServer Pages)**: JSP是Java平台上的动态...
4. **MySQL数据库**:MySQL是一个流行的开源关系型数据库管理系统,用于存储和管理汽车租赁系统的数据,如用户资料、车辆信息、租赁记录等。其性能高效、稳定,适合中小型企业级应用。 5. **README.md**:这个文件...
MySQL作为关系型数据库,将用于存储文件元数据,如文件名、文件类型、上传时间以及文件的存储位置等。创建一个`uploads`表,包括这些字段,并为每个上传的文件分配一个唯一的ID,以便后续操作。 在后端实现大文件分...
2. **进度存储模块**:使用数据库存储每个线程的下载进度,可能包括文件ID、线程ID、下载的字节数等信息。 3. **断点检查器**:在启动下载前,检查数据库中是否存在已下载的文件记录,如果存在,则从相应的位置开始...
2. **MySQL数据库设计** MySQL是关系型数据库管理系统,以其高性能、高可靠性和易于使用的特点,成为了Web开发的首选数据库。在汽车租赁系统中,数据库可能包含车辆信息表、订单表、用户信息表等,用于存储和检索...
3. **断点续传**:断点续传允许在上传过程中因网络问题中断后,从上次中断的位置继续上传,避免了重新上传整个文件。Java中实现断点续传需要记录每个分片的上传状态,通常存储在数据库或临时文件中,当再次上传时...