play1.2提供了更变数据库的统一模板,一般的情况下,如果我们要改变关系型数据库的表结构,最直接的办法是去数据库更新,但是以下情况,你可能希望用一个更强大的插件来完成这项任务:
- 当你的工作在一个开发团队,每个人都需要了解任何架构更改。
- 当你在生产服务器上部署,你需要有一个强大的方式来升级你的数据库架构。
- 如果你工作在几台机器,你需要保持同步所有的数据库架构。
1.在根目录下创建db/evolutions目录。
2.把需要更变的sql写在上述目录下,文件名用1.sql,2.sql...n.sql命名
# this is a test
# --- !Ups
CREATE TABLE qic_db.User5(
id bigint(20) NOT NULL AUTO_INCREMENT,
email varchar(255) NOT NULL,
password varchar(255) NOT NULL,
fullname varchar(255) NOT NULL,
isAdmin boolean NOT NULL,
PRIMARY KEY (id)
);
# --- !Downs
DROP TABLE qic_db.User5;
3.确保该工程的application.config 配置了数据库连接,如:
db_qsm.url=jdbc:mysql://localhost/qsm?useUnicode=yes&characterEncoding=UTF-8&connectionCollation=utf8_general_ci&zeroDateTimeBehavior=convertToNull&statementInterceptors=com.tom.mysql.ShowSqlStatementInterceptor
db_qsm.driver=com.mysql.jdbc.Driver
db_qsm.user=xx
db_qsm.pass=xxxx
代码共享以后,无论谁启动play的时候都会自动提示更新sql ,只要点击“Apply Evolutions”按钮,指定的sql脚本就会被更新在application.config指定的服务器的数据库中。