このチュートリアルは、データベーススキーマの変更を管理するために、フレームワークに依存しないデータベース移行ツールであるPhinxを使用したことを示しています。 チームのコラボレーションとバージョン制御のためのSQLダンプよりも移動の利点を強調しています。
phinx.yml
単一のphinx.yml
コマンドは、構造化されたテーブルの作成と変更を容易にし、可逆性を容易にします。
インストール:コンポーザーを使用してPhinxをインストール:
初期化:composer require robmorgan/phinx --dev
構成ファイルを生成:
構成(php vendor/bin/phinx init
データベースの資格情報をmy-phinx.yml
ファイルに入力します。 例:
my-phinx.yml
my-phinx.yml
移行の作成:
paths: migrations: db/migrations environments: default_migration_table: phinxlog default_database: development development: adapter: mysql host: localhost name: homestead user: homestead pass: 'secret' port: 3306 charset: utf8
)に入力します。 例:
php vendor/bin/phinx create [MigrationName] -c my-phinx.yml
php vendor/bin/phinx create Tag
移動の実行::20241027100000_Tag.php
を使用して移行を適用します
<?php use Phinx\Migration\AbstractMigration; class Tag extends AbstractMigration { public function change() { $table = $this->table('tag'); $table->addColumn('name', 'string', ['limit' => 45, 'null' => false]) // ... other columns ... ->create(); } }
php vendor/bin/phinx migrate -c my-phinx.yml
高度なテクニック:
phinx.yml
よくある質問:
既存のデータベースがある場合はどうなりますか?
現在の状態を表す移行を作成してから、それに基づいて構築します。以上がフィンクス - あなたが必要としていなかった移行図書館の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。