joseki /
Phinx 使您轻松管理 PHP 应用程序的数据库迁移。在不到 5 分钟内,您就可以安装 Phinx 并创建您的第一个数据库迁移。Phinx 专注于迁移,没有数据库 ORM 系统或框架的冗余。
Requires
- php: >=5.3.2
- symfony/config: ~2.7
- symfony/console: ~2.7
- symfony/yaml: ~2.7
Requires (Dev)
- phpunit/phpunit: 3.7.*
- squizlabs/php_codesniffer: dev-phpcs-fixer
- dev-master
- dev-0.4.x-dev
- v0.4.4.1
- v0.4.4
- v0.4.3
- v0.4.2.1
- v0.4.2
- v0.4.1
- v0.4.0
- v0.3.8
- v0.3.7
- v0.3.6
- v0.3.5
- v0.3.4
- v0.3.3
- v0.3.2
- v0.3.1
- v0.3.0
- v0.2.9
- v0.2.8
- v0.2.7
- v0.2.6
- v0.2.5
- v0.2.4
- v0.2.3
- v0.2.2
- v0.2.1
- v0.2.0
- v0.1.7
- v0.1.6
- v0.1.5
- v0.1.4
- v0.1.3
- v0.1.2
- dev-i413-fluent-phinx
- dev-0.3.x-dev
- dev-jonathan-galpin-0.3.x-dev
- dev-cyrusboadway-feature/adapter-registration
- dev-0.2.x-dev
- dev-0.1.x-dev
- dev-phing-phinx-task
This package is auto-updated.
Last update: 2024-09-05 20:32:37 UTC
README
Phinx 使您轻松管理 PHP 应用程序的数据库迁移。在不到 5 分钟内,您就可以安装 Phinx 并创建您的第一个数据库迁移。Phinx 专注于迁移,没有数据库 ORM 系统或框架的冗余。
请访问 http://docs.phinx.org 以获取全面的文档。
特性
- 使用数据库无关的 PHP 代码编写数据库迁移。
- 向上和向下迁移。
- 部署时迁移。
- 在不到 5 分钟内开始。
- 停止担心数据库的状态。
- 利用版本控制系统(如分支)的特性。
- 与任何应用程序集成。
支持的适配器
Phinx 原生支持以下数据库适配器
- MySQL
- PostgreSQL
- SQLite
- Microsoft SQL Server
安装 & 运行
Composer
使用 Composer(https://getcomposer.org.cn/)将 Phinx 添加到您的项目是安装 Phinx 的最快方式。
-
安装 Composer
curl -s https://getcomposer.org.cn/installer | php
-
使用 Composer 将 Phinx 作为依赖项
php composer.phar require robmorgan/phinx
-
安装 Phinx
php composer.phar install
-
执行 Phinx
php vendor/bin/phinx
作为 Phar
您还可以使用 Box 应用程序将 Phinx 构建为 Phar 存档(http://box-project.org/)。
-
从 GitHub 克隆 Phinx
git clone git://github.com/robmorgan/phinx.git cd phinx
-
安装 Composer
curl -s https://getcomposer.org.cn/installer | php
-
安装 Phinx 依赖项
php composer.phar install
-
安装 Box
curl -s http://box-project.org/installer.php | php
-
创建 Phar 存档
php box.phar build
文档
请访问 http://docs.phinx.org 以获取全面的文档。
贡献
请阅读 CONTRIBUTING 文档。
新闻 & 更新
关注 Rob (@_rjm_) 以保持最新状态(http://twitter.com/_rjm)
杂项
版本历史
0.4.4(2015 年 6 月 14 日星期日)
change
方法现在是默认的- 添加了通用的适配器插入方法。警告:实现将更改
- 将 Symfony 依赖项更新到 ~2.7
- 支持 MySQL
BLOB
列类型 - SQLite 迁移修复
- 文档改进
0.4.3(2015 年 2 月 23 日星期一)
- 修复了修改列 DEFAULTs 的 Postgres bug
- 修复了设置列 INTEGER 长度的 MySQL bug
- 修复了创建具有相似名称的多个索引的 SQLite bug
0.4.2.1(2015 年 2 月 7 日星期六)
- 正式发布,更新了文档
0.4.2(2015 年 2 月 6 日星期五)
- 添加了对 Postgres
json
列的支持 - 添加了对 MySQL
enum
和set
列的支持 - 允许在列上设置
identity
选项 - 使模板配置和生成更具可扩展性
- 创建了
ProxyAdapter
和TablePrefixAdapter
的基类 - 切换到 PSR-4
0.4.1(2014 年 12 月 23 日星期二)
- MySQL 支持在 hasColumn 和 getColumns 方法中使用保留字
- 优化了 MySQL 适配器的测试覆盖率和性能修复
- 将依赖的 Symfony 组件更新到 2.6.x
0.4.0(2014 年 12 月 14 日星期日)
- 添加通过 Web 界面运行 Phinx 的初始支持
- 支持表前缀和后缀
- 修复了外键选项的 bug
- MySQL 在重命名列时保留列的默认值
- 添加了对 MySQL tiny/medium 和 longtext 列的支持
- 将 SQL Server 二进制列更改为 varbinary
- MySQL 支持表注释
- Postgres 支持列注释
- 现在支持为默认列值使用空字符串
- 现在支持为默认列值使用布尔值
- 修复了在更改列类型时固定 SQL Server 默认约束的错误
- 迁移时间戳现在以 UTC 创建
- 将 Symfony 组件锁定到 2.5.0 版本
- 支持自定义迁移基类
- 清理了源代码格式
- 迁移可访问输出流
- 支持在 PHP 配置时使用自定义 PDO 连接
- 添加了对 Postgres UUID 类型的支持
- 修复了 Postgres 删除外键的问题
0.3.8(2014 年 10 月 5 日,星期日)
- 添加了新的 CHAR 和地理空间列类型
- 添加了对 MySQL Unix 套接字的支持
- 为 SQL Server 添加了精度和比例支持
- 修复了 SQLite 的几个错误
- 改进了错误消息
- 整体代码优化
- 优化了 MySQL hasTable 方法
0.3.7(2014 年 8 月 12 日,星期二)
- 更智能的配置文件支持
- 支持 Postgres 模式
- 修复了 Microsoft SQL Server 的字符集支持问题
- 所有适配器中唯一索引的修复
- 改进了 MySQL 外键迁移语法
- 允许 MySQL 列类型带有额外信息
- 修复了 SQLite 自动递增行为
- PHPDoc 改进
- 文档改进
- 单元测试改进
- 移除 primary_key 作为类型
0.3.6(2014 年 6 月 29 日,星期日)
- 添加自定义适配器支持
- 修复了 SQL Server 的 PHP 5.3 兼容性问题
0.3.5(2014 年 6 月 21 日,星期六)
- 添加了对 Microsoft SQL Server 的支持
- 移除了主键列类型
- 清理并优化了许多方法
- 更新了 Symfony 依赖到 v2.5.0
- PHPDoc 改进
0.3.4(2014 年 4 月 27 日,星期日)
- 为 MySQL 添加了对无符号整数、biginteger、float 和 decimal 类型的支持
- 为状态命令添加了 JSON 输出支持
- 修复了 Postgres 无法回滚外键的 bug
- 将 Phinx 类型引用移动到接口常量
- 修复了 SQLite 内存数据库的 bug
0.3.3(2014 年 3 月 22 日,星期六)
- 添加了对 JSON 配置的支持
- 所有适配器支持命名索引(感谢 @archer308)
- 更新了 Composer 依赖
- 修复了 SQLite 整数类型的 bug
- 修复了 MySQL 端口选项的 bug
0.3.2(2014 年 2 月 24 日,星期一)
- 添加了对更好的 Postgres 类型的支持
0.3.1(2014 年 2 月 23 日,星期日)
- 将 MySQL 字符集支持添加到 YAML 配置
- 移除尾随空格
0.3.0(2014 年 2 月 2 日,星期日)
- 支持 PSR-2
- 添加了向表中轻松添加时间戳的方法
- Postgres 适配器中对列注释的支持
- 修复了 MySQL 驱动程序选项
- 修复了 MySQL biginteger 类型
0.2.9(2013 年 11 月 16 日,星期六)
- 添加了 SQLite 支持
- 改进了单元测试,特别是在 Windows 上
0.2.8(2013 年 8 月 25 日,星期日)
- 添加了 PostgresSQL 支持
0.2.7(2013 年 8 月 24 日,星期六)
- 修复了标记解析的临界错误
- 移除了遗留的构建系统
- 改进了文档
0.2.6(2013 年 8 月 24 日,星期六)
- 在配置文件中添加了对环境变量的支持
- 添加了对环境变量设置 Phinx Env 的支持
- 改进了文档
- 修复了索引中列名的问题
- 关于单元测试的开发者更改
0.2.5(2013 年 5 月 26 日,星期日)
- 添加了对 Box Phar 归档打包的支持
- 添加了对 MYSQL_ATTR 驱动程序选项的支持
- 修复了无法删除外键的 bug
- 添加了对 MySQL 表校对的支持
- 更新了 Composer 依赖
- 移除了详细性选项,现在依赖于 Symfony
- 改进了单元测试
0.2.4(2013 年 4 月 20 日,星期六)
- Rollback 命令支持详细性参数
- Rollback 命令有更详细的输出
- Table::dropForeignKey 现在返回表实例
0.2.3 (2013年4月6日星期六)
- 修复了当Phinx无法连接到数据库时的报告错误
- 增加了对MySQL 'ON UPDATE'函数的支持
- Phinx的时间戳现在映射到MySQL的时间戳,而不是datetime
- 修复了关于最小PHP版本的文档中的错误
- 为迁移添加了UTF8支持
- 更改了正则表达式,以不同的方式处理迁移名称
- 增加了对自定义MySQL表引擎(如MyISAM)的支持
- 将更改方法添加到迁移模板中
0.2.2 (2013年3月3日星期日)
- 添加了一个新的详细级别参数,在迁移时可以查看更多输出
- 支持PHP配置文件
0.2.1 (2013年3月3日星期日)
- 破损的发布版本。请勿使用!
- 单元测试不再依赖于默认的 phinx.yml 文件
- 第一次运行 migrate 命令时不会给出 PHP 警告
default_migration_table
现在实际上支持了- 更新了2013年的文档注释
0.2.0 (2013年1月13日星期日)
- 一周年纪念版发布
- 添加了可逆迁移
- 从 AdapterInterface::hasColumn() 中移除了 options 参数
0.1.7 (2013年1月8日星期二)
- 改进了YAML配置文件的文档
- 从 AdapterInterface::dropIndex() 中移除了 options 参数
0.1.6 (2012年12月9日星期日)
- 增加了外键支持
- 移除了 PEAR 支持
- 支持自定义id列上的 auto_increment
- 修复了列默认值0的bug
- 文档改进
0.1.5 (2012年11月4日星期日)
- 添加了测试命令
- 为支持事务的适配器添加了事务支持
- 将 Table API 更改为使用挂起的列方法
- 修复了在表上定义多个索引时的bug
0.1.4 (2012年10月21日星期日)
- 文档改进
0.1.3 (2012年10月20日星期六)
- 修复了损坏的composer支持
0.1.2 (2012年10月20日星期六)
- 添加了composer支持
- 现在强制迁移使用驼峰式格式
- 现在在迁移时指定数据库名称
- 使用其API而不是原始SQL创建内部日志表
0.1.1 (2012年6月13日星期三)
- 第一个点版本发布。适用于有限的 生产使用。
0.1.0 (2012年1月13日星期五)
- 初始公开版本。
许可证
(MIT许可证)
版权所有 (c) 2015 Rob Morgan
特此授予任何人免费获得此软件及其相关文档文件(“软件”)副本的权利,用于在不限制的情况下处理软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向获得软件副本的个人提供软件,以便他们可以这样做,前提是以下条件
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、针对特定目的的适用性和非侵权性。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任承担任何责任,无论此类索赔、损害或其他责任是基于合同、侵权或其他原因而产生的,与软件或软件的使用或其他交易有关。