问题标签 [phinx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3664 浏览

mysql - 如何在 Cakephp 3.3 迁移中设置外键约束?

我是 Cakephp 新手并使用 Cakephp3.3 构建应用程序,我正在处理迁移,我必须创建一个user_infos表,并且想要添加一个新列user_id,我可以通过迁移添加新列但我不知道如何添加外键。

这是我的迁移文件

0 投票
1 回答
4377 浏览

cakephp - 如何回滚 Cakephp 中的特定迁移?

我正在使用 Cakephp3 进行迁移,我想回滚特定的迁移,我知道如何使用以下方式回滚以前的迁移:

但我找不到回滚特定迁移的方法。

注意:我正在使用phinx插件进行数据库迁移。

0 投票
1 回答
1695 浏览

php - 菲尼克斯交易不起作用

试图弄清楚交易在 phinx 包中是如何工作的。这是我的迁移代码,它不起作用。我用过mysql,一切正常phinx.yml。所以acme在表fail失败并且在表中找不到记录时创建phinxlog表。所以,当我跑的时候phinx migrate我有错误SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'acme' already exists。那么,我该如何使用交易呢?我没有找到任何关于它的文档,请帮助我))

0 投票
1 回答
2147 浏览

eloquent - 第二次运行 Phinx migrate 不会使用新的迁移更新数据库

我创建了以下迁移。它在我第一次运行时工作,但如果我对迁移进行更改 - 例如添加新列 - 当我运行phinx mingrate -c src/phinx-config.php时它不会更新数据库。

它似乎什么也没做。如果我从phinxlog数据库中删除条目并删除user表,它将重新创建表。否则,不会进行任何更改。

如果我从表中删除条目phinxlog并且不删除表,则会收到user表已存在的错误消息。我虽然这是这样做的目的,down()所以它可以放下桌子?

这是我的代码:

任何想法为什么我重新运行时数据库没有更新migrate

0 投票
1 回答
430 浏览

php - PHP/Phinx - 插入经度/纬度导致 PDO MySQL 几何对象错误

我正在尝试创建一个CitySeederusing Phinx。但我收到以下错误:

这是我的seeders/CitySeeder.php课。该geo_coords字段使用POINT数据类型:

这很奇怪,因为如果我手动将它输入到数据库中,它就可以工作。

经度/纬度是否必须以某种方式格式化?我试过使用数组和空格分隔的long lat格式,但我仍然得到同样的错误。我什至浏览了源代码,但找不到任何有用的东西。

任何帮助将非常感激。

编辑

我检查了发生错误的 Phinx 库中的代码:

array_values($sql)故障点的数据是:

并且设置了之后的查询$sql

prepare():之后执行die(var_dump($stmt->debugDumpParams()));以下操作时

记录 MySQL 查询显示以下内容:

我认为这是不正确的,因为 POINT 是作为字符串插入的?

0 投票
1 回答
3761 浏览

collation - How do you change the Collation of a column using Phinx

I just started learning Phinx, and I am needing to change the collation of a column to latin1_swedish_ci. I'm not finding documentation on how to do this. I'm assuming it would be similar to:

However, I have seen some talk that this feature wasn't implemented yet. https://github.com/robmorgan/phinx/issues/661

If anyone has any ways around this, that would be great!

0 投票
1 回答
5368 浏览

php - 使用 Phinx 添加外键

我知道有几个类似的帖子,但他们没有给我我需要的答案。所以,我正在使用 Phinx 并尝试添加外键,但出现以下错误:

这是带有外键的 php 文件:

我试图从中获取 id 的两个表是在上表之前创建的。这是另外两个表:

报价类型表

帐户表

0 投票
0 回答
391 浏览

cakephp-3.0 - CakePHP 和 Phinx addForeignKey 失败,重复列

我正在尝试创建迁移以将外键添加到现有列,它看起来像这样:

像这样失败:

Phinx 文档中至少有一个示例让我相信这应该有效,但我无法理解 - 我做错了什么?

0 投票
1 回答
604 浏览

php - 在 Docker 容器上运行 phinx 命令时访问被拒绝

我正在为我的 PHP 应用程序运行官方的 MySQL Docker 容器。我正在使用 Phinx 进行迁移。MySQL 映像似乎工作正常,因为我可以使用 MySQL Workbench 作为“dbuser”(非 root)连接到它。我也可以连接 Docker exec。

当我尝试运行任何 Phinx 命令时出现问题,例如 status。我越来越:

我在数据库上的赠款如下所示:

development的 phinx.yml 文件部分如下所示:

有任何想法吗?

0 投票
3 回答
911 浏览

php - CakePHP 迁移创建新表导致列名重复

我使用以下命令在 CakePHP 3 上创建了一个新的迁移脚本

id字段应该是主键,并且topic_id是外键。脚本像我想要的那样出来,除了topic_id出于某种原因是一个字符串,但我手动修复了它。

当我尝试运行脚本时,我收到一条错误消息:

我有其他列名为“id”的表,但这是一个用create()函数调用的新表,