美文网首页
Laravel5.4框架中数据库迁移

Laravel5.4框架中数据库迁移

作者: 铁匠简记 | 来源:发表于2018-04-27 16:24 被阅读3次

    记录数据库状态的改变,可把数据库的状态回退回去。

    场景:需要显示出管理员更新资料的时间,在admin表中添加一个updated_at字段记录这个时间。顺手created_at字段记录管理员的注册时间。
    编写数据库迁移的前进的方法

    命令行下输入命令行

    -> php artisan make:migrationalter_admin_table_add_created_at_updated_at_field
    

    在databases/ migrations/…alter_admin_table_add_created_at_updated_at_field文件中编写前进迁移:

    public function up()
       {
           // 在这里写数据库前进的状态, 操作admin表添加created_at, updated_at字段
           Schema::table('admin', function(Blueprint $table) {
                // 在这里对admin表进行操作
                // $table->timestamps();
               $table->timestamp('created_at')->nullable();
               $table->timestamp('updated_at')->nullable();
           });
    }
    

    命令行执行数据库迁移前进

    -> php artisan migrate
    

    查看数据表新增的字段,表示执行成功

    说明:mysql的时间戳的数据类型:timestamp,表示时间戳,这种格式的时间戳:2017-06-28 09:48:14

    created_at timestampnull,
    updated_at timestampnull,
    

    后退

    在databases/ migrations/…alter_admin_table_add_created_at_updated_at_field文件中编写后退迁移:

    publicfunction down()
        {
            // 把admin表的created_at, updated_at删除
            Schema::table('admin',function(Blueprint $table) {
               $table->dropColumn('created_at');
               $table->dropColumn('updated_at');
            });
        }
    

    命令行执行数据库迁移前进

    -> php artisan rollback
    

    执行后的效果如果created_at, updated_at字段被删除了表示成功
    数据库迁移的其他命令

    migrate              //执行所有迁移文件的up方法
    migrate:reset        //执行所有迁移文件的down方法
    migrate:rollback     //执行最后一次迁移文件的down方法
    migrate:status       //查看数据库迁移文件的执行情况
    migrate:install      //创建记录数据库迁移文件的执行情况的表
    migrate:refresh      //先把执行所有的迁移文件的down方法,再执行所有的迁移文件的up方法 结果就是内容清空
    migrate:status       //查看数据库迁移文件的执行情况
    

    相关文章

      网友评论

          本文标题:Laravel5.4框架中数据库迁移

          本文链接:https://www.haomeiwen.com/subject/jnfilftx.html