Wie thinkPHP migrate verwendet, um die Datenbankmigration zu implementieren

藏色散人
Freigeben: 2020-07-29 13:41:45
nach vorne
4075 Leute haben es durchsucht

In der folgenden Tutorial-Kolumne des thinkphp-Frameworks erfahren Sie, wie thinkPHP migrate zur Implementierung der Datenbankmigration verwendet. Ich hoffe, dass es für Freunde in Not hilfreich sein wird!

Wie thinkPHP migrate verwendet, um die Datenbankmigration zu implementieren

thinkPHP verwendet migrate, um die Datenbankmigration zu implementieren

das Datenbankmigrationstool von thinkPHP: topthink/think-migration

1: topthink/think-migration installieren

Beachten Sie hier, dass Sie bei der Installation von topthink/think-migration auf Ihre thinkPHP-Version achten müssen. Meine thinkPHP-Version hier ist 5.1, Sie können also Version 2.0 von topthink/ installieren. think-migration. , Version 3.0 kann nicht installiert werden, wählen Sie die für Sie geeignete Version zur Installation aus

composer require topthink/think-migration=2.0.*
Nach dem Login kopieren

Nach Abschluss der Installation führen Sie Folgendes in der Befehlszeile aus:

php think
Nach dem Login kopieren

Das Folgende zeigt an, dass die Migrationsinstallation ist erfolgreich

Wie thinkPHP migrate verwendet, um die Datenbankmigration zu implementieren

Zwei: Verwenden Sie topthink/think-migration, um die Datenbankmigration zu implementieren

1: Erstellen Sie eine Migrationsklasse

Ausführen in der Befehlszeile

php think migrate:create CreateUser
Nach dem Login kopieren

Nachdem die Ausführung abgeschlossen ist, erstellen wir eine Migrate-Migrationsdatei im Verzeichnis ./database/migrateions

Wie thinkPHP migrate verwendet, um die Datenbankmigration zu implementieren

2: Implementieren Datenbankmigration

Dokumentation zur Methodenverwendung migrieren: http://docs.org/en/latest/migrations.html

[1]: Codebeschreibung migrieren:

Es gibt drei Methoden in migrate

up: when migrate:run Execute (vorausgesetzt, die Änderungsmethode ist nicht in der Datei vorhanden)

down: Execute when migrate:rollback (vorausgesetzt, die Änderung Methode ist in der Datei nicht vorhanden)

change:migrate:run und migrate:rollback (Wenn diese Methode vorhanden ist, wird up und down nicht ausgeführt)

Im Allgemeinen lösche ich die Änderungsmethode In der Migrationsdatei werden mit der Up-Methode speziell die Vorgänge zum Hinzufügen und Aktualisieren von Tabellen und mit der Down-Methode Vorgänge zum Löschen von Tabellen und Feldern platziert.

(1) Tabelle hinzufügen:

// create the table
$table = $this->table('user', ['id' => 'user_id', 'comment' => '用户表', 'engine' => 'MyISAM', '']);
$table->addColumn('user_name', 'string', ['limit' => 15, 'default' => '', 'comment' => '用户名'])
    ->addColumn('password', 'string', ['limit' => 15, 'default' => '', 'comment' => '密码',])
    ->addColumn('status', 'boolean', ['limit' => 1, 'default' => 0, 'comment' => '状态'])
    ->addIndex(['user_name'], ['unique' => true])//为user_name创建索引并设置唯一(唯一索引)
    ->addTimestamps()//默认生成create_time和update_time两个字段
    ->create();
Nach dem Login kopieren

(2 ) Tabelle aktualisieren:

$this->table('user')
    ->addColumn('test', 'string', ['limit' => 15, 'default' => '', 'comment' => '测试'])//在user表中增加一个test字段
    ->update();
Nach dem Login kopieren

(3) Tabelle löschen:

$this->table('user')->drop();
Nach dem Login kopieren

(4) Feld löschen

$this->table('user')
    ->removeColumn('test')//删除user表中的test字段
    ->save();
Nach dem Login kopieren

[2]:Migrate-Befehl:

Es gibt drei häufig verwendete Befehle für die Migration, nämlich:

php think migrate:create CreateUser  #创建一个迁移类
php think migrate:run  #执行迁移
php think migrate:rollback #迁移回滚
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie thinkPHP migrate verwendet, um die Datenbankmigration zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:segmentfault.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!