のは、私は、このテーブルの構造を持っているとしましょう:テーブル内の特定の位置にYii 2マイグレーションを使用して新しい列を追加するにはどうすればよいですか?
+----+------------+-----------+---------+------+---------+---------+---------------------+---------------------+
| 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 |
+----+------------+-----------+---------+------+---------+---------+---------------------+---------------------+
そして私はaddColumn
methodMigration
クラスのを使用して、ちょうどid
後とfirst_name
前に、email
と呼ばれる新しい列を追加したいです。
public function up()
{
$this->addColumn('contacts', 'email', $this->string(64));
}
そして、それはupdated
フィールドの後に、表の最後にそれを置くだろう:私は私の新しい移行を行うことができます
だけの事はあります。
どのように私は私のテーブル内の特定の位置に列を追加することができますので、このSQLクエリを尊重することができ:
ALTER TABLE contacts ADD email VARCHAR(64) AFTER id
ちょうど答えとしてコードをダンプすることを避けてください、そして、それが何をするのか、理由を説明しようとしてください。あなたの答えからより新しいユーザーが学ぶ方が簡単です。 – Frits
また、どのバージョンから 'after'メソッドが利用可能であるか注意してください。 (2.0.8:http://www.yiiframework.com/news/97/yii-2-0-8-is-released/より) – omerowitz