thinkphp5 migrate数据库迁移工具
程序员文章站
2023-12-09 21:56:03
tp5相对与tp3.2有很大的不同
migrate是其中一点,通过migrate程序员可以在php代码中创建数据库修改回滚等操作
首先下载migrate扩展,命令行到当...
tp5相对与tp3.2有很大的不同
migrate是其中一点,通过migrate程序员可以在php代码中创建数据库修改回滚等操作
首先下载migrate扩展,命令行到当前项目目录下执行
composer require topthink/think-migration
通过使用php think命令可以查看migrate是否成功下载
使用migrate:create migrate文件名(首字母大写的驼峰法),在database下生成migrate文件
有可能建立失败提示没有什么方法一般是composer获取的tp版本过低,考虑修改composer.json文件里的migrate的版本为1.*或^1.0
重新composer update即可
在application 下的 database.php 里配置好数据库
以下是其中一份migrate文件的内容(创建完后有一个默认方法change(),删除它)
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'); } }
以上的一些方法 ,官方给予的文档我没看到在哪,网上我看的是小腾讲解的
使用migrate:run会执行所有的migrate的up方法
通过migrate:rollback可以回滚上一条执行的migrate文件(带 -t 0 参数回滚全部)
通过migrate:status可以查看当前migrate执行的情况
执行run方法后,user表建立成功
非常的方便
推荐阅读
-
Python的Flask框架中使用Flask-Migrate扩展迁移数据库的教程
-
解决Laravel5.x的php artisan migrate数据库迁移创建操作报错SQLSTATE[42000]
-
Python的Flask框架中使用Flask-Migrate扩展迁移数据库的教程
-
thinkphp5 migrate数据库迁移工具
-
解决Laravel5.x的php artisan migrate数据库迁移创建操作报错SQLSTATE[42000]
-
使用kettle工具进行MySQL迁移Oracle数据库(教程)
-
Flask利用flask_migrate 数据库迁移的方法详解填坑
-
tp5 migrate数据库迁移工具
-
一个数据库连接Java工具类和数据迁移类
-
使用Navicat Premium工具将oracle数据库迁移到MySQL