thinkphp5のデータベース移行ツールの詳細説明

小云云
リリース: 2018-05-21 11:23:08
オリジナル
5109 人が閲覧しました

tp5 は tp3.2 とは大きく異なります

mitigate はその 1 つであり、プログラマは mitigration を通じて、データベース変更のロールバックやその他の操作を PHP コードで作成できます。

まず、移行拡張機能をダウンロードし、現在のプロジェクト ディレクトリでコマンド ラインを実行します

composer require topthink/think-migration
ログイン後にコピー

php think コマンドを使用して、移行が正常にダウンロードされたかどうかを確認できます

移行を使用: create 移行ファイル名 (最初の文字はキャメルケースです)、データベースの下に移行ファイルを生成します

作成が失敗し、方法がないことを示すプロンプトが表示される可能性があります。一般に、composer によって取得された tp バージョンが低すぎるため、移行ファイルを変更することを検討してください。 combos.json ファイルを 1.* または ^1.0

に再度 Composer を更新します。

アプリケーションの下の database.php でデータベースを設定できます

以下は、移行ファイルの 1 つの内容です (デフォルトメソッドの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'); } }
ログイン後にコピー

上記のメソッドのいくつかは、オンラインで読んだものはXiao Tengによって説明されていました

を使用すると、すべてのメソッドが実行されます。移行アップメソッドを使用します。

最後に実行された移行ファイルは、merge:rollback を使用してロールバックできます (-t 0 パラメーターを使用すると、すべてをロールバックします)。

実行を実行した後、現在の移行実行ステータスを確認できます。メソッドを実行すると、ユーザー テーブルが正常に作成されました

とても便利です

関連する推奨事項:

Microsoft が MySQL から SQL Server データベースへの移行ツールを開始

以上がthinkphp5のデータベース移行ツールの詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!