gpt4 book ai didi

php - 如何在表中的特定位置添加带有 Yii 2 迁移的新列?

转载 作者:IT老高 更新时间:2023-10-29 00:13:37 25 4
gpt4 key购买 nike

假设我有这个表结构:

+----+------------+-----------+---------+------+---------+---------+---------------------+---------------------+
| id | first_name | last_name | country | city | address | zipcode | created | updated |
+----+------------+-----------+---------+------+---------+---------+---------------------+---------------------+
| 1 | Duvdevan | Duvdevani | NULL | NULL | NULL | NULL | 2016-02-12 15:37:19 | 2016-02-12 16:35:57 |
+----+------------+-----------+---------+------+---------+---------+---------------------+---------------------+

我想在 id 之后和 first_name 之前添加一个名为 email 的新列,使用 addColumn method Migration 类的。

在我的新迁移中,我唯一能做的就是:

public function up()
{
$this->addColumn('contacts', 'email', $this->string(64));
}

它会将它放在表格的末尾,在 updated 字段之后。

如何在我的表中的特定位置添加一列,以便可以尊重此 SQL 查询:

ALTER TABLE contacts ADD email VARCHAR(64) AFTER id

最佳答案

解决了。如果有人遇到同样的问题,这是我使用的解决方案:

public function up()
{
$this->addColumn('contacts', 'email', 'VARCHAR(64) AFTER id');
}

编辑: 从版本 Yii 2.0.8你也可以使用这种链式语法:

$this->addColumn('contacts', 'email', $this->string(64)->after('id'));

关于php - 如何在表中的特定位置添加带有 Yii 2 迁移的新列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35379714/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com