thinkphp5中migrate的資料庫遷移

不言
發布: 2023-03-30 14:14:02
原創
1568 人瀏覽過

這裡講述的是tp5 migrate資料庫遷移工具的相關介紹,非常的簡單實用,有需要的小夥伴可以來看下本文的實例

tp5相對與tp3.2有很大的不同

migrate是其中一點,透過migrate程式設計師可以在php程式碼中建立資料庫修改回滾等操作

先下載migrate擴展,命令列到目前專案目錄下執行

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(),刪除它)

 use think\migration\Migrator;
 use think\migration\db\Column;
 
 class CreateUserTable extends Migrator
 {
   
   /**
   * 建立用户表
   */
   public function up(){
     $table = $this->table('user');
     $table->addColumn('username' , 'string' , ['limit' => 30])
        ->addColumn('passwork' , 'string' , ['limit' => 32])
        ->addColumn('email' , 'string' , ['limit' => 25])
        ->addColumn('lastlogin_ip' , 'string' , ['limit' => 15])
        ->addTimestamps('create_time' , 'lastlogin_time')
        ->addColumn('status' , 'integer' , ['limit' => 1 , 'default' => 1])
        ->setId('user_id')
        ->save();
   }
   
   /**
   * 提供回滚的删除用户表方法
   */
   public function down(){
     $this->dropTable('user');
   }
 }
登入後複製

以上的一些方法,官方給予的文檔我沒看到在哪,網上我看的是小騰講解的

使用migrate :run會執行所有的migrate的up方法

透過migrate:rollback可以回滾上一條執行的migrate檔(帶-t  0 參數回滾全部)

#透過migrate:status可以在查看目前migrate執行的情況

執行run方法後,user表建立成功

非常的方便

以上就是本文的全部內容,希望對大家的學習有幫助,更多相關內容請關注PHP中文網!

相關推薦:

thinkPHP資料庫的增刪改查操作

以上是thinkphp5中migrate的資料庫遷移的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!