Maison > interface Web > js tutoriel > Explication détaillée de l'outil de migration de base de données migrate dans thinkphp5

Explication détaillée de l'outil de migration de base de données migrate dans thinkphp5

小云云
Libérer: 2018-05-21 11:23:08
original
5339 Les gens l'ont consulté

tp5 est très différent de tp3.2

Migrate en fait partie. Grâce à la migration, les programmeurs peuvent créer une restauration de modification de base de données et d'autres opérations dans le code PHP.

Téléchargez d'abord l'extension migrate et exécutez la ligne de commande dans le répertoire du projet actuel

composer require topthink/think-migration
Copier après la connexion

Vous pouvez vérifier si migrate est téléchargé avec succès en utilisant la commande php think

Utilisez migrate:create migrate file name (méthode majuscule en chameau) pour générer le fichier migrate sous la base de données

Il est possible que la création échoue et indique qu'il n'y a pas de méthode . Généralement, la version tp obtenue par composer est trop basse. Pensez à modifier la version migrate dans le fichier composer.json en 1.* ou ^1.0

Re-composer update

.

dans la base de données sous application. Configurez la base de données en php

Ce qui suit est le contenu de l'un des fichiers de migration (il y a une méthode par défaut change() après la création, supprimez-la)

 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');
   }
 }
Copier après la connexion

Certaines des méthodes ci-dessus, officielles, je n'ai pas vu le document fourni. Ce que j'ai lu en ligne est ce que Xiao Teng a expliqué

Utiliser migrate: run exécutera toutes les méthodes up. de migrate.

Vous pouvez revenir en arrière via migrate : rollback. Le dernier fichier de migration exécuté (avec le paramètre -t 0 pour tout restaurer)

Vous pouvez vérifier l'état actuel de l'exécution de la migration via migrate : status

Après l'exécution de la méthode run, la table utilisateur est créée avec succès

Très pratique

Recommandations associées :

Microsoft lance l'outil de migration de bases de données MySQL vers SQL Server

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal