Maison >cadre php >Laravel >Comment migrer la base de données dans Laravel (migrer)

Comment migrer la base de données dans Laravel (migrer)

PHPz
PHPzoriginal
2023-04-03 19:20:421237parcourir

Laravel est un framework d'application Web PHP gratuit et open source qui adopte le modèle de conception Model-View-Controller (MVC) et fournit de nombreuses fonctionnalités intégrées pour faciliter le développement d'applications Web. Parmi eux, Laravel Migrate est un outil de migration de bases de données. Il fournit un moyen simple de gérer la structure des tables de base de données via la ligne de commande.

Dans le développement réel, nous devrons peut-être modifier la structure de la base de données, comme l'ajout de nouvelles tables, la modification des types de champs, l'ajout d'index, etc. L'utilisation de Laravel Migrate peut faciliter ce processus.

Alors, comment utiliser Migrate dans Laravel ? Tout d'abord, nous devons créer un fichier de migration à l'aide de la commande "php artisan make:migration" sur la ligne de commande. Par exemple, pour créer un fichier de migration nommé "create_users_table", vous pouvez utiliser la commande suivante :

php artisan make:migration create_users_table

Après avoir exécuté cette commande, Laravel créera un nouveau fichier de migration dans le répertoire "database/migrations" (trié strictement par horodatage). Ouvrez ce fichier et nous pourrons écrire les opérations que nous devons effectuer sur la base de données, comme créer des tables, ajouter des champs, etc. Par exemple, dans le fichier de migration "create_users_table", nous pouvons utiliser le code suivant pour créer une table nommée "users" :

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateUsersTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('users', function (Blueprint $table) {
            $table->increments('id');
            $table->string('name');
            $table->string('email')->unique();
            $table->timestamp('email_verified_at')->nullable();
            $table->string('password');
            $table->rememberToken();
            $table->timestamps();
        });
    }
    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('users');
    }
}

Dans le code ci-dessus, nous avons d'abord introduit les deux classes Schema et Blueprint pour faciliter l'écriture du Structure de table de base de données. Ensuite, dans la méthode up(), nous utilisons la méthode Schema::create() pour créer une table nommée « users », qui contient cinq champs : id, name, email, email_verified_at, password, ainsi que create_at, update_at. Deux champs d'horodatage. Enfin, dans la méthode down(), nous définissons comment faire descendre la table.

Après avoir fini d'écrire le code, nous pouvons utiliser la commande "php artisan migrate" dans la ligne de commande pour effectuer la migration. Cette commande recherchera les migrations non exécutées, exécutera la méthode up() dans la base de données et mettra à jour la structure de la table. Si vous devez annuler la migration, vous pouvez utiliser la commande "php artisan migrate:rollback".

En plus des opérations de base telles que la création de tables et la modification de champs, Laravel Migrate prend également en charge de nombreuses autres opérations avancées, telles que l'ajout d'index, la création de clés étrangères, etc. En utilisation réelle, on peut se référer à la documentation officielle de Laravel pour en savoir plus sur ces opérations et les modifier si nécessaire.

En bref, Laravel Migrate est un outil très important dans le framework Laravel, qui nous permet de gérer plus facilement la structure de la base de données. Lors du développement d'applications Web, nous devons faire un usage raisonnable de Migrate et le combiner avec diverses fonctions intégrées de Laravel pour améliorer l'efficacité du développement.

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