当前位置: 首页 > 知识库问答 >
问题:

使用phinx迁移库在非主键列上自动递增

羊柏
2023-03-14

正如标题所描述的,我试图利用phinx进行数据库迁移,但我有一个自动增量列,它并没有用作主键。据我所知,菲尼克斯是做不到这一点的。

我意识到,我可能完全没有那个列,但它是巨大的遗留代码的一部分,至少目前,我没有时间重构整个应用程序,以确保该列不会在任何地方使用。如果我的结论是正确的,而phinx无法实现这一点,我希望有一些替代方案,拥有所描述的功能

共有1个答案

李景天
2023-03-14

您可以使用up和down phinx方法,使用纯sql的execute fontion创建此表。

看到这个了吗

 类似资料:
  • 我已经使用Phinx迁移创建了一个表 现在在一个单独的迁移中,我想改变表,并将id值设置为true,并将该id作为主键(默认行为)。并将validation_id作为唯一索引。 我知道如何先删除表并创建新表。但是我不想放下桌子,只是改变它。如何改变表添加回自动增量默认id列?

  • 我目前正在从事一个由主服务器和许多客户端组成的Laravel4项目。客户端创建数据并将其发送到主服务器。为了避免冲突,我使用UUIDV4作为主键。 但是,一旦在服务器上创建了数据,我希望分配一个唯一的自动递增整数,以便用户更容易识别数据。例如:用户不必谈论而可以谈论 为了保持应用程序的可管理性,我正在使用迁移,此表的当前迁移如下所示: 问题是,Laravel在定义自动增量时自动创建主键,因此迁移最

  • 如何在Laravel迁移和存在表中添加列自动增量,但不是主键,它的主键是。我使用Laravel 5.7和pgsql。

  • Phinx 可以让开发者简洁的修改和维护数据库。 它避免了人为的手写 SQL 语句,它使用强大的 PHP API 去管理数据库迁移。开发者可以使用版本控制管理他们的数据库迁移。

  • 我有两个表,其中主键(另一个表上的外键)在运行时自动递增(使用TOAD for mysql)。如何使用事务将数据同时插入两个表中。 这是第一个表的ddl: 第二个表的ddl: 注意:主要的挑战是从主键上获取自动递增的键值,以便在运行时插入到另一个表中。 提前谢谢。

  • 问题内容: 我正在尝试添加具有自动增量的主键。 我已经阅读了一些文档和其他问题-有和声明,但是不起作用。 这是我做的: 和 我怎么了 我只想将主键增加1。 问题答案: 是或多或少是一种列类型,所以说就像说,只是说: 如果您想自己创建序列,那么您想将序列中下一个值的默认值设为默认值,这意味着: 为了模拟通常的行为,您还需要使表拥有该序列: 阅读手册的“串行类型”部分可能会很有成果。 我还建议您不要对