Maison  >  Article  >  développement back-end  >  Explication détaillée de la migration de base de données à l'aide de thinkphp5 migrate

Explication détaillée de la migration de base de données à l'aide de thinkphp5 migrate

php中世界最好的语言
php中世界最好的语言original
2018-05-18 14:39:412032parcourir

Cette fois, je vais vous apporter une explication détaillée de l'utilisation de la migration de base de données thinkphp5 migrate. Quelles sont les précautions lors de l'utilisation de la migration de base de données thinkphp5 migrate ?

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

migrate est l'un d'entre eux. Grâce à migrate, les programmeurs peuvent créer des bases de donnéescode php >Modifier la restauration. et d'autres opérations

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
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 camel case avec la première lettre en majuscule) 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, composer l'obtient. La version tp est trop basse, pensez à modifier la version migrate dans le fichier composer.json en 1.* ou ^1.0

Re-composer update<.>

Configurez la base de données dans database.php sous l'application

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 création, supprimez-le)

Pour certaines des méthodes ci-dessus, je n'ai pas vu les documents officiels. Ce que j'ai lu en ligne est ce que Xiao Teng a expliqué
 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');
   }
 }

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

Migre réussie : la restauration peut restaurer le dernier fichier de migration exécuté (avec le paramètre -t 0 pour tout restaurer)

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

Après avoir exécuté la méthode d'exécution, la table utilisateur a été créée avec succès

C'est très pratique

Je crois vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de PHP !

Lecture recommandée :

Laravel utilise Redis pour partager la session en détail


Laravel implémente la réinitialisation du mot de passe en détail

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!

Déclaration:
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