thinkphp5数据库迁移工具 migration(longtext/tinyint等)

我用tp5

创建文件

php think migrate:create User

在User文件里面写

public function up()
{
$this->table('a3')
->addColumn('a', 'integer', ['limit' => '10','default' => 0,'signed'=>false,'comment'=>'备注'])
->create();
}
这里面要讲

addColumn有三个参数,在第三个参数里

signed=true 表示有符号

signed=false 表示无符号

null=true 表示是否为空

如果你想设置int 类型可以这样写

->addColumn('a', 'integer', ['limit' => '10','default' => 0,'signed'=>false,'comment'=>''])

如果你想设置bigint 类型可以这样写

->addColumn('g', 'biginteger', ['limit' => '10','default' => 0,'signed'=>false,'comment'=>'备注'])
如果你想设置tinyint类型可以这样写

->addColumn('h', 'integer', ['limit' => '255','default' => 0,'signed'=>false,'comment'=>''])
如果你想设置decimal类型可以这样写

->addColumn('j', 'decimal', ['precision'=>4,'scale'=>'2','default' => '0.00','comment'=>''])
如果你想设置set类型可以这样写

->addColumn('i', 'set', ['values' => ['1','2'],'default'=>'1','comment'=>''])
如果你想设置text类型可以这样写

->addColumn('k', 'text', ['default' => '','comment'=>''])
如果你想设置longtext类型可以这样写

->addColumn('l', 'text', ['limit' => '4294967295','default' => '','comment'=>''])
设置唯一索引 unique

->addIndex('order_id', array('unique' => true))
执行

php think migrate:run

详细可以看 vendor\topthink\think-migration\phinx\src\Phinx\Db\Adapter\MysqlAdapter.php

另一种写法

$this->table('xx')
->addColumn(
Column::decimal('xx')->setPrecision('14')->setScale('2')
->setDefault(0.00)->setComment('')->setUnsigned()
)
->update();
————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/m0_47165403/article/details/123295193

posted @ 2024-09-12 10:36  杨广伟  阅读(95)  评论(0编辑  收藏  举报