thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

灰度空间 2017-07-12

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

migration:一种数据库的版本控制,让团队在修改数据库结构的同时,保持彼此的进度一致。帮你更简单的管理数据库。基于原生 thinkPHP 5.0 命令行工具,融入了 Phinx 的数据库迁移;查看 Phinx文档获取更多帮助...

首先通过 composer 安装

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

composer 安装

在命令行下运行查看帮助,可以看到新增的命令

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

新增的命令

常用命令

查看可用命令

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

查看可用命令

创建数据库迁移文件

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

创建数据库迁移文件

执行数据库迁移文件

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

数据库迁移文件

返回到最近一次的migrate操作

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

migrate操作

thinkphp5数据迁移

创建数据库迁移文件【创建迁移类,首字母必须为大写】

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

第一次执行的时候会确认是否创建迁移目录;

确认之后;

这时会在项目根目录下执行的该命令;

那么在项目跟目录下会看到database/migrations/20170711153001_create_user_table.php;

默认有一个change方法

如果你的迁移脚本只会有一下操作

createTable(创建表)

renameTable(重命名表)

addColumn(添加字段)

renameColumn(重命名字段)

addIndex(添加索引)

addForeignKey(添加外键)

那么你只需要change方法就可以了,回滚的时候可以自动根据change里的操作来逆向操作,否则需要定义up和down两个方法,来标识迁移和回滚两个具体操作

定义了up和down方法后就不要再定义change方法了;

在change方法里操作数据表的时候,只能用create()或者是update()来完成;

而不能用save();

创建数据表

创建数据表使用create方法,并调用addColumn方法进行数据字段定义

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

创建数据表

生成的数据表结构如下:

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

生成的数据表结构

默认会自动添加一个id自增主键

如果需要自定义设置主键自增,可如下修改:

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

自定义设置主键自增

如果不需要主键自增,可以如下:

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

不需要主键自增

或者使用up和down

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

使用up和down

执行迁移

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

执行迁移

执行回滚

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

执行回滚

重命名和删除数据表

thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)

重命名和删除数据表

【本文来自 武斌博客 http://www.wubin.pro,为超人原创文章,想获取更好的页面浏览效果或者有任何问题请进入博客,同时也可在博主评论区进行留言,让博主为大家答疑解惑~加技术交流群:190338003,欢迎讨论~】

相关推荐