phinx数据库脚本迁移工具
phinx数据库脚本迁移工具
Phinx 可以使用 Composer 进行安装,Composer是一个PHP依赖管理工具。更多信息请访问 Composer 官网。
Phinx 至少需要PHP 5.4 或更新的版本
第一步:安装
composer require robmorgan/phinx
第二步:初始化
安装后,Phinx 现在可以在你的项目中执行初始化
php vendor/robmorgan/phinx/bin/phinx init
第三步:配置文件
phinx.yml
第四步:创建迁移 文件名驼峰命名
php vendor/robmorgan/phinx/bin/phinx create MyNewMigration
这将创建一个新的迁移脚本,格式是 YYYYMMDDHHMMSS_my_new_migration.php ,前14个字符是当前的timestamp,精确到秒。
如果你指定了多个脚本路径,将会提示你选择哪一个。
Phinx 自动创建的迁移脚本框架有一个方法:
<?phpuse Phinx\Migration\AbstractMigration;class MyNewMigration extends AbstractMigration
{/*** Change Method.** Write your reversible migrations using this method.** More information on writing migrations is available here:* http://docs.phinx.org/en/latest/migrations.html#the-abstractmigration-class** The following commands can be used in this method and Phinx will* automatically reverse them when rolling back:** createTable* renameTable* addColumn* renameColumn* addIndex* addForeignKey** Remember to call "create()" or "update()" and NOT "save()" when working* with the Table class.*/public function change(){//添加qaSource字段(qa来源)$wbrqa = $this->table("wbrqa");if (!$wbrqa->hasColumn('qaSource')) {$wbrqa->addColumn("qaSource", "string", ['limit' => 30, 'null' => true, 'default' => '', 'comment' => 'qa来源'])->update();}}//更改列属性[wbrqa: qid、aid更改字段属性为varchar 用户于存储mongoDb: _id、parentId]$wbrqa = $this->table("wbrqa");$wbrqa->changeColumn('qId', 'string', ['limit' => 255, 'null' => true])->save();$wbrqa->changeColumn('aId', 'string', ['limit' => 255, 'null' => true])->save();$wbrqa->changeColumn('qUserId', 'string', ['limit' => 255, 'null' => true])->save();$wbrqa = $this->table("wbrqa");if (!$wbrqa->hasColumn('isDeleted')) {$wbrqa->addColumn("isDeleted", "integer", ['limit' => 2, 'null' => true, 'default' => '0', 'comment' => '是否删除'])->update();}//建立索引$wbrqa->hasIndex(['isDeleted', 'index_wbrqa_isDeleted']);
}
第五步:执行脚本
php vendor/robmorgan/phinx/bin/phinx migrate -e localhost
注意点:
> php vendor/robmorgan/phinx/bin/phinx migrate -e *localhost*
此处的localhost为你本地的环境,也可以是线上环境,但是在使用之前,必须配好环境。
环境配置在下一文章详细说明。
链接地址:https://blog.csdn.net/weixin_39690767/article/details/80267801
原文地址https://blog.csdn.net/weixin_39690767/article/details/80267521
phinx数据库脚本迁移工具相关推荐
- Phinx - 数据库迁移及版本控制介绍(内含中文文档翻译)
Phinx dbmigration是一个数据库脚本迁移工具,用于数据库结构的同步和版本控制十分友好 Phinx 官方文档:docs.phinx.org/en/latest/ 中文翻译文档:tsy123 ...
- spring-cloud集成数据库版本迁移工具flyway
spring-cloud集成数据库版本迁移工具flyway Flyway实现数据库版本同步有两种方式,一种就是直接导包,通过配置文件使用,还有一种就是自定义的方式. 一 .依赖+配置文件 1 flyw ...
- sqlserver在linux数据备份,SQLServer数据库之sqlserver for linux自动备份数据库脚本
本文主要向大家介绍了SQLServer数据库之sqlserver for linux自动备份数据库脚本,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助. 不多说直接上脚本 # ...
- 全国省市区县数据库脚本
由于项目需要,整理了一套全国的省市区县数据库脚本.创建表后可以成功执行语句. insert into tbl_province(codeid,parentid,name,createtime) val ...
- 如何使用Navicat恢复数据库脚本
Navicat 可以做数据库备份,当然也可以做数据库脚本恢复了.操作很简单. 1.连接需要恢复的数据库.鼠标右键点击,选择[运行SQL文件] 2.在弹出的窗口中选择sql文件,继续下一步即可. 余不赘 ...
- 根据Word表格自动生成SQL数据库脚本的VBScript代码
这是几年前写的根据Word表格自动生成SQL数据库脚本的VBScript代码,最近修改了下(原来只支持单个Word表格)使其支持一个Word文档中的多个表格,生成的SQL文件名以Word文件名+.SQ ...
- 数据库文档生成数据库脚本工具
数据库文档生成数据库脚本工具,txt->sql word文档: ---------------------------------------------------------- 图一 复制到 ...
- PowerDesigner中在生成的数据库脚本中用name列替换comment列作为字段描述的方法
1 PowerDesigner中在生成的数据库脚本中用name列替换comment列作为字段描述的方法如下, 依次打开Tools – Execute Commands – Run Script,运行以 ...
- Linux自动备份MySQL数据库脚本代码
Linux自动备份MySQL数据库脚本代码 下面这段Linux的Shell脚本用于每日自动备份MySQL数据库,可通过Linux的crontab每天定时执行 在脚本中可设置需要备份的数据库表清单,并且 ...
最新文章
- CCS编译出错:缺少头文件的解决办法
- 腾讯面经 | 数据从业者的一次“典型”面试
- mycat 启动失败 The specified size exceeds the maximum representable size JVM exited while loading the a
- iOS边练边学--AFNetWorking框架GET、Post、Download、Upload,数据解析模式以及监控联网状态...
- DOM节点中属性nodeName、nodeType和nodeValue的区别 Delphi
- C# web项目中sql数据库转sqlite数据库
- mysql命令导出方法_MySql使用mysqldump 导入与导出方法总结
- 怎么设置苹果手机的小圆点_iPhone屏幕旋转怎么设置?关于苹果手机设置的一些小技巧...
- 数字计算机第一次应用于工业是什么时候,计算机应用基础(二)第一次作业(95%的答案)(1884页)-原创力文档...
- Android 单元测试cmd 命令集
- vivox7Android版本怎么升级,vivo公布安卓7.1系统更新计划,老款机型也能升级
- 实现一个文本文件的解析类(vector,字符串解析的应用)
- 2023考研王道计算机408数据结构+操作系统+计算机组成原理+计算机网络
- cuda10.0及其驱动纯净卸载(笔记)
- 饭店点餐系统之系统工作流程
- java项目里bean文件夹_JavaBean的class文件必须放在WEB-INF文件夹中。()
- FSAF:Feature Selective Anchor-Free Module for Single-Shot Object Detection笔记
- 计算机使用鼠标的课件,鼠标的基本操作ppt课件.ppt
- IPFS云服务器预售登录系统,ipfs 云服务器
- 深入浅出Pairwise 算法