码迷,mamicode.com
首页 > 数据库 > 详细

tp5 migrate数据库迁移工具

时间:2018-02-10 15:52:38      阅读:2165      评论:0      收藏:0      [点我收藏+]

标签:log   分享图片   字母   cat   获取   mes   方便   span   nbsp   

tp5相对与tp3.2有很大的不同

migrate是其中一点,通过migrate程序员可以在php代码中创建数据库修改回滚等操作

首先下载migrate扩展,命令行到当前项目目录下执行

1 composer require topthink/think-migration

通过使用php think命令可以查看migrate是否成功下载

技术分享图片

使用migrate:create migrate文件名(首字母大写的驼峰法),在database下生成migrate文件

有可能建立失败提示没有什么方法一般是composer获取的tp版本过低,考虑修改composer.json文件里的migrate的版本为1.*或^1.0

重新composer update即可

技术分享图片

在application 下的 database.php 里配置好数据库

以下是其中一份migrate文件的内容(创建完后有一个默认方法change(),删除它)

 1 use think\migration\Migrator;
 2 use think\migration\db\Column;
 3 
 4 class CreateUserTable extends Migrator
 5 {
 6     
 7     /**
 8      * 建立用户表
 9      */
10     public function up(){
11         $table = $this->table(‘user‘);
12         $table->addColumn(‘username‘ , ‘string‘ , [‘limit‘ => 30])
13               ->addColumn(‘passwork‘ , ‘string‘ , [‘limit‘ => 32])
14               ->addColumn(‘email‘ , ‘string‘ , [‘limit‘ => 25])
15               ->addColumn(‘lastlogin_ip‘ , ‘string‘ , [‘limit‘ => 15])
16               ->addTimestamps(‘create_time‘ , ‘lastlogin_time‘)
17               ->addColumn(‘status‘ , ‘integer‘ , [‘limit‘ => 1 , ‘default‘ => 1])
18               ->setId(‘user_id‘)
19               ->save();
20     }
21     
22     /**
23      * 提供回滚的删除用户表方法
24      */
25     public function down(){
26         $this->dropTable(‘user‘);
27     }
28 }

以上的一些方法 ,官方给予的文档我没看到在哪,网上我看的是小腾讲解的

使用migrate:run会执行所有的migrate的up方法

通过migrate:rollback可以回滚上一条执行的migrate文件(带 -t  0 参数回滚全部)

通过migrate:status可以查看当前migrate执行的情况

执行run方法后,user表建立成功

技术分享图片

非常的方便

tp5 migrate数据库迁移工具

标签:log   分享图片   字母   cat   获取   mes   方便   span   nbsp   

原文地址:https://www.cnblogs.com/xueTP/p/8438721.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!