最近接到任务,将使用的数据库纳入版本管理中。在老大的指点下,找到了Ibatis Migration.一点点心得,向大家分享下。也方便后来人吧。初次发帖,看官轻拍。
由于没有网上相册。我做成了附图的word文档,以附件上传。
1. 下载ibatis工具包。解压。配置环境变量,将Ibatis加入path下面。
2. 创建Ibatis Migration工作目录。如:D://MigrationWork.
3. 在工作目录打开Cmd.执行migrate命令
4. 常用的参数有:init,用于初始化工作目录,
bootstrap,用于初始化执行bootstrap.sql中的数据库创建脚本(后文祥述)
new,用于创建新的日志文件记录对表结构的变更操作。
up,用于执行所有的已创建日志文件中的SQL语句。
Down,用于撤销最近一次的数据库表结构变更操作。
Status,列出所有的数据库表结构变更记录。
Version,用于撤销到指定记录号的历史变更点。
Pending,用于执行历史日志中标记为pending的操作。和up不同的是,此语句不是顺序执行的。
5. 第一次运行时,执行migrate init命令,会在工作目录下生成drivers,enviroments,scripts,三个文件夹。
Drivers,用于存放jdbc驱动文件。
Environments目录下有一个development.properties资源文件。
各配置项按照对应数据库来设置即可。后五项保持为默认值无变化。注意由于驱动版本的不同,driver对应的包结构也可能不同,driver的值必须与上层drivers目录下的驱动版本一致。
6.
执行migrate init:
其中create changelog.sql为用于在数据库中创建操作变更日志SQL。
First_migration.sql无实际意义。
并且将驱动文件放入drivers目录中,配置environment目录下的配置文件。
接下来。若是在已存在的数据库脚本基础上添加版本管理。可将脚本写入到scripts下的bootstrap.sql中,并执行migrate bootstrap来执行创建数据库脚本。
若数据库已纳入版本管理,或是新建的数据库可执行如下命令:
Migrate new “XXXXXX”:此命令会在scripts目录下创建名为“当前日期+XXXXXX.sql”文件。
文件结构:
在前面的空白处写入你的创建数据库表的脚本。在后面@UNDO标签后面,写入删除数据库表的脚本。然后在命令行执行 migrate status命令
可以看到当前scripts目录下所有的脚本文件。
Pending表示尚未执行的状态。通过运行 migrate up,可以执行所有状态为pending脚本
而在数据库中也会创建相应的表,
Changelog为记录日志。
当我们再执行migrate status,会看到如下效果:
之前标记为pending的现在全都是时间戳。
执行migrate down,会回退前一步的操作。执行migrate version <id>会执行标记ID的操作。
若在scripts目录下按照格式创建.sql文件,执行migrate status命令,也会将其纳入
历史控制之中。
这也使通过svn等版本控制工具,来实现数据库表结构的版本管理成为可能。
与ibatis migration类似的数据库版本管理工具还有dbdeploy。有兴趣的同学可以google下进行研究。
分享到:
相关推荐
要开始使用 Ibatis,首先需要从官方网站下载最新版本的 ibatis jar 包,以及 log4j 日志框架的 jar 包。然后,在Java项目中添加这些库,配置log4j.properties以开启SQL日志输出。接着,新建主配置文件sqlMapConfig....
这个压缩包包含了iBATIS的相关使用文档和安装包,是学习和使用iBATIS的重要参考资料。 《iBATIS-SqlMaps-2.pdf》可能是关于iBATIS SQL映射器的详细指南,它会介绍如何编写SQL Map配置文件,这些文件定义了数据库...
以下是对iBATIS简易使用的详细解释: 1. **环境准备**: - **jar文件**:iBATIS框架运行需要依赖一些库文件,包括`log4j`用于日志记录,`ibatis`核心库,以及`jdbc`驱动,这些都需要添加到项目的类路径中。 - **...
iBatis 中使用安全的拼接语句、动态查询、大于、小于、等于 iBatis 是一个流行的持久层框架,提供了许多强大的功能来帮助开发者构建高效、安全的数据库交互应用程序。本文将详细介绍 iBatis 中使用安全的拼接语句、...
《iBatis 使用手册》是一份详尽的开发资源,涵盖了iBatis框架的各个方面,包括iBatis的开发指南、SQL Maps的使用以及入门教程。iBatis是一款优秀的持久层框架,它允许Java开发者将SQL语句与Java代码分离,实现数据...
以上就是IBatis的基本使用方法和核心概念,通过它可以有效地提升数据库操作的便捷性和灵活性,降低开发成本。在实际项目中,可以根据需求进行扩展和定制,如结合Spring框架实现更高级的整合应用。
iBatis详细使用手册(.net版) iBatis是一个基于.NET框架的持久层框架,提供了一种灵活、可控的方式来实现类ORM(Object-Relational Mapping)的解决方案。下面是对iBatis的详细使用手册的知识点总结: 1. iBatis...
本文将围绕“IBATIS开发使用实例”这一主题,深入解析复杂SQL查询的应用,尤其是如何利用SQL进行多表关联、条件筛选以及聚合函数的使用。 ### IBATIS简介 IBATIS,现被称为MyBatis,是一种优秀的持久层框架,它...
**Ibatis简介** Ibatis,又称为SQL Map,是一个优秀的持久层框架,它允许开发者将SQL语句直接写在配置文件中,与Java代码进行分离,使得...了解并熟练掌握Ibatis的使用,对于提升Java开发效率和代码质量具有重要意义。
【Ibatis 使用手册】 Ibatis 是一款优秀的对象关系映射(ORM)框架,它使得开发者能够在不脱离 SQL 的强大功能的同时,享受面向对象编程的便利。Ibatis.Net 是其针对 .NET 平台的移植版本,它简化了数据访问层(DAL...
ibatis简单使用的想法 ibatis 是一个成熟的框架,现在已经是改名字叫mybatis了,框架的配置比较烦,如xml,dao的书写,还有每个表还要对应于javabean,没有的话,map 也成,这里希望对其进行简单的简化。
Ibatis 是一款轻量级的Java持久层框架,它允许开发者将SQL语句与Java代码分离,从而使得数据库访问更加灵活、易于维护。本篇文章将深入探讨Ibatis的核心概念、最佳实践以及与其他框架如Struts和Spring的整合。 1. ...
### iBatis.Net详细使用手册知识点汇总 #### 1. iBatis.Net概述 - **定义**: iBatis.Net是一种轻量级的框架,用于.NET应用程序中的数据访问层。它并非传统的ORM(对象关系映射)工具,而是介于纯ADO.NET与全功能ORM...
使用Ibatis对数据库的访问,实现增删改查的操作 ;
介绍了ibatis3.0的配置技巧,包括比较复杂的sql语句的写法。
另外,还有一个PDF文件 `ibatis 开发指南.pdf`,这很可能是IBATIS的官方或非官方开发指南,包含有关如何使用IBATIS进行数据库操作的详细信息,包括配置、映射文件的编写、事务管理等内容。这份指南对于理解和使用...
根据提供的文件信息,我们可以从中提炼出与ibatis及其Example特性相关的知识点。以下是对这些知识点的详细阐述: ### 1. **ibatis简介** ...希望本文能对你理解和使用ibatis及其Example特性提供一定的帮助。
例如,使用`@Param`注解可以指定参数名,或者在XML中使用`#{paramName}`来引用参数。 6. **结果映射**:结果映射允许我们将查询结果自动映射到Java对象。Ibatis提供了多种方式来实现映射,如自动类型匹配、自定义...
Ibatis 是一个轻量级的Java持久层框架,它提供了SQL映射框架,使得开发者能够将SQL语句直接写在配置文件中,从而避免了Java代码与SQL的紧密耦合,提高了开发效率和代码可读性。Ibatis 的核心概念包括...