1. 程式人生 > >tp5 migrate數據庫遷移工具

tp5 migrate數據庫遷移工具

項目目錄 tor nds info user 有一個 情況 www 成功

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數據庫遷移工具