ThinkPhp5 数据迁移(think-migration)
ThinkPhp5 数据迁移(think-migration)
在thinkphp5中提供了数据迁移工具(think-migration),它是机遇phinx开发(文档地址:http://docs.phinx.org/en/latest/)
一:配置think-migration
在commond.php 中添加

<?php
return [
"think\\migration\\command\\migrate\\Create",
"think\\migration\\command\\migrate\\Run",
"think\\migration\\command\\migrate\\Rollback",
"think\\migration\\command\\migrate\\Status",
"think\\migration\\command\\seed\\Create",
"think\\migration\\command\\seed\\Run",
];
?>

注意由于think-migration存放在thinkphp/vendor中 所以在think中需要将vendor加入auoload
require __DIR__.'/../thinkphp/vendor/autoload.php';
二:命令行运行
在命令行输入php think 可以看见

migrate:数据库迁移工具 seed:数据库填充工具
主要讨论migrate:
migrate:create : 创建一个新的数据迁移类,php think migrate:create <file>,文件名须采用驼峰命名法
forexample:php think migrate:create ScProductImage 文件会在制定目录下生成一个php文件

***********************************************************
migrate:run : 完成数据迁移工作 php think migrate:run
***********************************************************
migrate:status:查看migrate工作状态 php think migrate:status

***********************************************************************************************
migrate:rollback : 回滚数据到指定的一个数据迁移版本 php think migrate:rollback -t <timeline>
<timeline> 就是我们上图上面红框表示的值
三:migrate文件编写
在migrate中有三个方法
up:在migrate:run时执行(前提是文件中不存在change方法)
down:在migrate:rollback时执行(前提是文件中不存在change方法)
change:migrate:run 和migrate:rollback时执行 (如果存在该方法 则不会去执行up 与down)
ThinkPhp5 数据迁移(think-migration)的更多相关文章
- 在Entity Framework 7中进行数据迁移
(此文章同时发表在本人微信公众号“dotNET每日精华文章”,欢迎右边二维码来关注.) 题记:虽然EF7重新设计了Entity Framework,不过也还是能够支持数据迁移的. Entity Fra ...
- EF架构~Migration数据迁移的执行顺序
回到目录 对于单个分支项目来说,只要你生成一个migration的版本,就会有一个时间戳文件的对应,而在update-database时,会从最小的时间开始,一直执行到当前版本的migration,而 ...
- EasySharding.EFCore 如何设计使用一套代码完成的EFCore Migration 构建Saas系统多租户不同业务需求且满足租户自定义分库分表、数据迁移能力?
下面用一篇文章来完成这些事情 多租户系统的设计单纯的来说业务,一套Saas多租户的系统,面临很多业务复杂性,不同的租户存在不同的业务需求,大部分相同的表结构,那么如何使用EFCore来完成这样的设计呢 ...
- MySQL数据迁移到SQL Server
数据迁移的工具有很多,基本SSMA团队已经考虑到其他数据库到SQL Server迁移的需求了,所以已经开发了相关的迁移工具来支持. 此博客主要介绍MySQL到SQL Server数据迁移的工具:SQL ...
- ASP.NET 5探险(1):Azure中配置连接字符串、独立项目执行EF7数据迁移
(此文章同时发表在本人微信公众号“dotNET每日精华文章”,欢迎右边二维码来关注.) 题记:我开始把ASP.NET 5用于生产系统开发已经有1个多月了,也填了一些坑积累了一些经验,从今天开始会陆陆续 ...
- Code First Migrations更新数据库结构(数据迁移)
背景 code first起初当修改model后,要持久化至数据库中时,总要把原数据库给删除掉再创建 (DropCreateDatabaseIfModelChanges),此时就会产生一个问题,当我们 ...
- CodeFirstMigrations更新数据库结构(EF数据迁移)
背景 code first起初当修改model后,要持久化至数据库中时,总要把原数据库给删除掉再创建(DropCreateDatabaseIfModelChanges),此时就会产生一个问题,当我们的 ...
- Core Data 版本数据迁移
Core Data版本迁移基础 通常,在使用Core Data的iOS App上,不同版本上的数据模型变更引发的数据迁移都是由Core Data来负责完成的.这种数据迁移模式称为Lightweight ...
- Django模型修改及数据迁移
Migrations Django中对Model进行修改是件麻烦的事情,syncdb命令仅仅创建数据库里还没有的表,它并不对已存在的数据表进行同步修改,也不处理数据模型的删除. 如果你新增或修改数据模 ...
随机推荐
- 【 BowWow and the Timetable CodeForces - 1204A 】【思维】
题目链接 可以发现 十进制4 对应 二进制100 十进制16 对应 二进制10000 十进制64 对应 二进制1000000 可以发现每多两个零,4的次幂就增加1. 用string读入题目给定的二进制 ...
- Linux四剑客之awk命令
AWK详解 awk简介 awk其名称得自于它的创始人 Alfred Aho .Peter Weinberger 和 Brian Kernighan 姓氏的首个字母.实际上 AWK 的确拥有自己的语 ...
- TestAbstract
public class TestAbstract { public static void main(String[] args) { System.out.println("Hello ...
- springBoot 利用Idea打包部署
springBoot 打包部署 1 项目如图: 2 依赖打包插件 3 打包操作 4 运行项目:
- Go语言 - 结构体 | 方法
自定义类型和类型别名 自定义类型 在Go语言中有一些基本的数据类型,如string.整型.浮点型.布尔等数据类型, Go语言中可以使用type关键字来定义自定义类型. 自定义类型是定义了一个全新的类型 ...
- Flutter在iOS上的表现就是一坨屎
Flutter在iOS上的表现就是一坨屎: 用户体验差到了极点: 目前来说不值得投入大量精力去研究: 了解一下原理可以.
- kvo与runtime
创建新类 添加方法 isa-swizzling 测试方案: 添加全局断点 objc_allocateClassPair objc_registerClassPair class_addMethod l ...
- matlab基础向9:动画
先定义坐标变量,确定范围,画出起始静态图,存进图形变量h.通过对坐标的变化,把新的坐标放进图形变量h,再实时刷新看起来就是动态的. 1.动态的sin曲线 X = -2*pi:0.1:2*pi; Y = ...
- IDEA连接数据库之后,无法自动找到表
在用IDEA连接数据库之后,在查询的时候无法自动关联出表,就如下图的提示所示: 这样看着很不舒服,按照如下设置就可以联想出表了: 点击第一个勾,关联所有: 然后就可以关联到表了
- 【C/C++】指针
指针定义 指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址.就像其他变量或常量一样,必须在使用指针存储其他变量地址之前,对其进行声明.指针变量声明的一般形式为: type *var-na ...