php phinx,php-Phinx迁移-整数列的显式长度

您能否告诉我是否可以通过Phinx迁移addColumn()方法设置整数列的显式长度?

文档在MysqlAdapter :: INT_REGULAR中使用限制选项,例如[‘limit’=> MysqlAdapter :: INT_SMALL,’签名’=> false],但会自动设置列的长度,例如int(10).

但是如果我需要int(11)例如外键列怎么办?

谢谢.

解决方法:

据我了解,limit option MysqlAdapter :: INT_REGULAR类似于Phinx中的预定义类型.但是您也可以使用自己的限制变量.

这是一个例子:

// using Phinx 0.5.4

public function change() {

$table = $this->table('papers');

$table->addColumn('user_id', 'integer', ['limit' => 2])

->addColumn('book_id', 'integer') // by default will be int(11)

->addColumn('bank_id', 'integer', ['limit' => 32])

->create();

}

MySQL描述结果:

+---------+---------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+---------+---------+------+-----+---------+----------------+

| id | int(11) | NO | PRI | NULL | auto_increment |

| user_id | int(2) | NO | | NULL | |

| book_id | int(11) | NO | | NULL | |

| bank_id | int(32) | NO | | NULL | |

+---------+---------+------+-----+---------+----------------+

要获取更多信息,请检查getSqlType()的source code和getPhinxType()函数的source code.

标签:database-migration,phinx,mysql,php

来源: https://codeday.me/bug/20191118/2029749.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值