thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)
thinkphp5系列之数据库迁移工具(轻松的修改跟共享数据库结构)
migration:一种数据库的版本控制,让团队在修改数据库结构的同时,保持彼此的进度一致。帮你更简单的管理数据库。基于原生 thinkPHP 5.0 命令行工具,融入了 Phinx 的数据库迁移;查看 Phinx文档获取更多帮助...
首先通过 composer 安装
在命令行下运行查看帮助,可以看到新增的命令
常用命令
查看可用命令
创建数据库迁移文件
执行数据库迁移文件
返回到最近一次的migrate操作
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方法进行数据字段定义
生成的数据表结构如下:
默认会自动添加一个id自增主键
如果需要自定义设置主键自增,可如下修改:
如果不需要主键自增,可以如下:
或者使用up和down
执行迁移
执行回滚
重命名和删除数据表
【本文来自 武斌博客 http://www.wubin.pro,为超人原创文章,想获取更好的页面浏览效果或者有任何问题请进入博客,同时也可在博主评论区进行留言,让博主为大家答疑解惑~加技术交流群:190338003,欢迎讨论~】