This paper presents a method and device to support cross version database upgrade, which involves program update technology. Among them, the updating method of public support across versions of the database include: the establishment of structured query language SQL folder in the specified location, the SQL folder for sequential storage application database upgrade under different versions of the corresponding SQL file, create an upgrade record in the application database, used to record the SQL file has been executed successfully; when the application upgrade, this additional application upgrade database upgrade to the corresponding SQL file in the SQL folder; when the application starts after the upgrade, all SQL files traversing the SQL folder in the SQL file has been successfully executed all from the database update record table, contrast have not been the implementation of the SQL file; the SQL file has not been executed in accordance with the order of read and execute the operation.
【技术实现步骤摘要】
一种支持跨版本的数据库升级方法及装置
本专利技术涉及程序升级技术,具体涉及一种支持跨版本的数据库升级方案。
技术介绍
程序升级是所有开发人员必须面对的问题,其中又包含文件升级和数据库升级等。对于数据库升级,处理起来比较麻烦,它不像文件升级那样,可以直接删除旧文件,添加新文件,因为旧的数据库中已存在的数据需要保留下来。目前市面上有一些较成熟的开发框架,提供了非常完善的数据库升级方案,开发人员只要按照规则开发,就可以轻松解决数据库升级的问题,但是这些框架一般较大,并不适合小型应用程序。亟待找到一种轻量级应用程序的数据库升级方案,既在升级的同时保留旧数据,又能支持跨版本升级。
技术实现思路
本专利技术所要解决的技术问题是,提供一种支持跨版本的数据库升级方法及装置,可以实现轻量级应用程序的数据库升级的问题。为了解决上述技术问题,本专利技术公开了一种支持跨版本的数据库升级方法,包括:在指定位置建立结构化查询语言SQL文件夹,所述SQL文件夹用于顺序存储应用程序不同版本下数据库升级对应的SQL文件,在应用程序的数据库中创建升级记录表,用于记录已执行成功的SQL文件;当应用程序升级时,在所述SQL文件夹中追加本次应用程序升级时数据库升级对应的SQL文件;当应用程序升级后启动,遍历所述SQL文件夹中的所有SQL文件,从数据库中的升级记录表中查询出已执行成功的所有SQL文件,对比得到尚未执行的SQL文件;对尚未执行的SQL文件按照排序依次进行读取并执行操作。可选地,上述方法中,所述顺序存储应用程序不同版本下数据库升级对应的SQL文件指:SQL文件夹中存储的用于数据库升级的SQL ...
【技术保护点】
一种支持跨版本的数据库升级方法,其特征在于,包括:在指定位置建立结构化查询语言SQL文件夹,所述SQL文件夹用于顺序存储应用程序不同版本下数据库升级对应的SQL文件,在应用程序的数据库中创建升级记录表,用于记录已执行成功的SQL文件;当应用程序升级时,在所述SQL文件夹中追加本次应用程序升级时数据库升级对应的SQL文件;当应用程序升级后启动,遍历所述SQL文件夹中的所有SQL文件,从数据库中的升级记录表中查询出已执行成功的所有SQL文件,对比得到尚未执行的SQL文件;对尚未执行的SQL文件按照排序依次进行读取并执行操作。
【技术特征摘要】
1.一种支持跨版本的数据库升级方法,其特征在于,包括:在指定位置建立结构化查询语言SQL文件夹,所述SQL文件夹用于顺序存储应用程序不同版本下数据库升级对应的SQL文件,在应用程序的数据库中创建升级记录表,用于记录已执行成功的SQL文件;当应用程序升级时,在所述SQL文件夹中追加本次应用程序升级时数据库升级对应的SQL文件;当应用程序升级后启动,遍历所述SQL文件夹中的所有SQL文件,从数据库中的升级记录表中查询出已执行成功的所有SQL文件,对比得到尚未执行的SQL文件;对尚未执行的SQL文件按照排序依次进行读取并执行操作。2.如权利要求1所述的方法,其特征在于,所述顺序存储应用程序不同版本下数据库升级对应的SQL文件指:SQL文件夹中存储的用于数据库升级的SQL文件的名称顺序与应用程序版本的顺序一致。3.如权利要求2所述的方法,其特征在于,所述用于数据库升级的SQL文件包括应用程序不同版本下数据库升级时需要执行的SQL脚本。4.如权利要求1至3任一项所述的方法,其特征在于,该方法还包括:对尚未执行的SQL文件按照排序依次进行读取并执行操作时,将每个SQL文件放在一个事务中,若执行失败,则中断升级。5.如权利要求4所述的方法,其特征在于,所述升级记录表,完整记录所有已执行成功的SQL文件,且对所述升级记录表中所记录的所有SQL文件不允许任何修改。6.一种支持跨版本的数...
【专利技术属性】
技术研发人员:张德波,
申请(专利权)人:郑州云海信息技术有限公司,
类型:发明
国别省市:河南,41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。