php – 如何在使用MySQL的Yii2迁移中实现AUTO_INCREMENT?
发布时间:2020-12-13 13:19:37 所属栏目:PHP教程 来源:网络整理
导读:我为一个简单的 MySQL(v5.6.21)表创建了一个yii2(v2.0.6)迁移.一切正常,除了我无法弄清楚如何AUTO_INCREMENT主键.问题似乎是我使用的是小整数而不是更标准的长整数数据类型.这是我的迁移代码: $this-createTable('{{%status}}',[ 'id' = $this-smallInteger
我为一个简单的
MySQL(v5.6.21)表创建了一个yii2(v2.0.6)迁移.一切正常,除了我无法弄清楚如何AUTO_INCREMENT主键.问题似乎是我使用的是小整数而不是更标准的长整数数据类型.这是我的迁移代码:
$this->createTable('{{%status}}',[ 'id' => $this->smallInteger(8)->unique(),//'id' => $this->primaryKey(11),'description' => $this->string(20),]); $this->addPrimaryKey('','status','id'); 我可以通过使用 – > primaryKey()方法解决问题,该方法在上面的第3行中注释掉,但是然后yii创建了一个长整型数据类型,我试图避免这种情况.任何对这个问题的见解都将非常感激.
如果拥有该列类型至关重要,您可以随时更改它:
$this->createTable('{{%status}}',[ 'id' => $this->primaryKey(11),]); $this->alterColumn('{{%status}}','id',$this->smallInteger(8).' NOT NULL AUTO_INCREMENT'); (我用MySQL测试过它 – 它有效) 然而,就像@scaisEdge所说的那样,通常不值得这么做. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |