• TP5 数据库迁移工具 migrate 教程


    第一步: 安装compose,不赘述,安装详情可百度或查看https://pkg.phpcomposer.com/#how-to-install-composer 

    第二步: 通过 composer  安装ThinkPHP 5.*

    composer create-project topthink/think=5.0.* tp5 --prefer-dist

    第三步: 给TP5 安装 migration,在项目根目录shift+右键,在当前目录打开cmd窗口,在cmd窗口输入

    composer require topthink/think-migration=1.*

    备注:不要安装2.0版本的扩展 5.0只支持1.*的扩展,大家可以在项目的根目录composer.json里面       找到 think-migration 后面改成 1.*

    第四步: 在cmd窗口输入

    php think 

    若出现表示安装成功

    第五步: 创建迁移类,前提:appplication 下面的 database.php 文件必须要配置好数据库

    php think migrate:create CreateUserTable

    备注:CreateUserTable为表名,首字母必须大写,会在database/migrations 下面生成一个文件

    第六步:

    在migrate中有三个方法

           up:在migrate:run时执行(前提是文件中不存在change方法)

          down:在migrate:rollback时执行(前提是文件中不存在change方法)

          change:migrate:run 和migrate:rollback时执行 (如果存在该方法 则不会去执行up 与down)

          在创建完文件类过后删除里面的change方法

    下面就是一个一份migrate文件:

    table('user');
            $table->addColumn('username', 'string',array('limit' => 32,'default'=>'','comment'=>'用户名'))
                ->addColumn('nickname', 'string',array('limit' => 32,'default'=>'','comment'=>'昵称'))
                ->addColumn('password', 'string',array('limit' => 100,'default'=>'','comment'=>'用户密码'))
                ->addColumn('salt', 'string',array('limit' => 50,'default'=>'','comment'=>'盐'))
                ->addColumn('login_status', 'integer',array('limit' => 11,'default'=>0,'comment'=>'登陆状态'))
                ->addColumn('login_code', 'string',array('limit' => 32,'default'=>0,'comment'=>'排他性登陆标识'))
                ->addColumn('last_login_ip', 'string',array('limit' => 30,'default'=>0,'comment'=>'最后登录IP'))
                ->addColumn('last_login_time', 'timestamp',array('comment'=>'最后登录时间'))
                ->addTimestamps()   //默认生成create_time和update_time两个字段
                ->addIndex(array('username'), array('unique' => true))
                ->create();
        }
     
        /**
         * 提供回滚的删除用户表方法
         */
        public function down(){
            $this->dropTable('user');
        }
     

    createTable(创建表)
    renameTable(重命名表)
    addColumn(添加字段)
    renameColumn(重命名字段)
    addIndex(添加索引)
    addForeignKey(添加外键)

    第七步:完成数据迁移工作 migrate:run

      php think migrate:run

    备注:如果迁移错误可以通过 migrate:rollback  -t 回滚到制定的版本

    第八步: 创建数据库的填充文件 send:create 

    php think send:create UserSeeder

    第九步: 开始进行数据库填充 send:run

    php think seed:run

    备注:此博客参考https://blog.csdn.net/LTY__NI/article/details/84313539

  • 相关阅读:
    20162329张旭升 2017-2018-2 《程序设计与数据结构》第一周学习总结
    20162329 张旭升2016-2017《程序设计与数据结构》课程总结
    实验报告五
    20162329 张旭升 阶段四则运算(挑战出题)
    实验四:Android 开发基础
    四则运算的整体总结(第二周)
    结对编程四则运算(阶段总结)
    团队项目-选题报告
    第二次结对编程作业
    第一次结对编程作业
  • 原文地址:https://www.cnblogs.com/huanghanyi/p/10749326.html
Copyright © 2020-2023  润新知