Heim  >  Artikel  >  PHP-Framework  >  thinkPHP verwendet migrate, um die Datenbank zu migrieren

thinkPHP verwendet migrate, um die Datenbank zu migrieren

尚
nach vorne
2020-05-27 09:08:284076Durchsuche

thinkPHP verwendet migrate, um die Datenbank zu migrieren

thinkPHP-Datenbankmigrationstool: topthink/think-migration

1: Topthink/think-migration installieren

Beachten Sie hier, dass Sie topthink/You installieren Achten Sie bei think-migration auf Ihre thinkPHP-Version. Sie können also Version 2.0 von topthink/think-migration installieren. Wählen Sie die für Sie geeignete Version aus

composer require topthink/think-migration=2.0.*

Nachdem die Installation abgeschlossen ist, führen Sie Folgendes in der Befehlszeile aus:

php think

Das Folgende zeigt an, dass die Migration erfolgreich installiert wurde

thinkPHP verwendet migrate, um die Datenbank zu migrieren

Zweitens: Verwenden Sie topthink /think-migration zur Implementierung der Datenbankmigration

1: Erstellen Sie eine Migrationsklasse

Führen Sie

php think migrate:create CreateUser

in der Befehlszeile aus. Nachdem die Ausführung abgeschlossen ist, erstellen wir eine Migration Migrationsdatei

thinkPHP verwendet migrate, um die Datenbank zu migrieren2: Datenbankmigration implementieren

[1]: Codebeschreibung migrieren:

Es gibt drei Methoden in migrate

up: in migrate: Wird beim Ausführen ausgeführt (vorausgesetzt, die Änderungsmethode ist nicht in der Datei vorhanden)

down: Wird ausgeführt, wenn migrate:rollback (vorausgesetzt, dass Die Änderungsmethode ist in der Datei nicht vorhanden)

change:migrate:run and migrate :Wird beim Rollback ausgeführt (wenn diese Methode vorhanden ist, werden Auf- und Abwärtsbewegungen nicht ausgeführt)

Im Normalfall Unter bestimmten Umständen lösche ich normalerweise die Änderungsmethode in der Migrationsdatei, und die Up-Methode platziert speziell die Operationen zum Hinzufügen und Aktualisieren von Tabellen. Die Down-Methode platziert die Löschtabellen- und Feldlöschoperationen

(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();

(2) Tabelle aktualisieren:

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

(3) Tabelle löschen:

$this->table('user')->drop();

(4) Feld löschen

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

[2]: migrieren 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 #迁移回滚

Empfohlenes Tutorial: 《

TP5

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

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen