gpt4 book ai didi

Laravel 迁移 : fields that defined as interger wil be treated as auto increment?

转载 作者:行者123 更新时间:2023-12-01 12:28:00 25 4
gpt4 key购买 nike

这是我的代码:

public function up()
{
Schema::create('sysmods', function (Blueprint $table) {
$table->increments('mod_id');
$table->string('mod_name','60');
$table->string('mod_alias_name','60');
$table->integer('mod_tb_id','6');// this will become auto increment?
$table->timestamps();
});
}

当我运行 migrate 命令时,它说:
"[PDO 异常]
SQLSTATE[42000]:语法错误或访问冲突:1075 不正确的表定义
初衷;只能有一个自动列,并且必须将其定义为键”

然后当我检查 sql 时,我发现了这个:
(SQL: 创建表 la_sysmods ( mod_id int unsigned not null auto_increm
ent 主键, mod_name varchar(60) 不为空, mod_alias_name变量字符(
60) 不为空, mod_tb_id int not null auto_increment 主键 , created
_at
时间戳为空, updated_at时间戳 null) 默认字符集 utf
8 整理 utf8_unicode_ci)

标记为整数的字段“mod_tb_id”已变为增量。有什么问题?谢谢!

最佳答案

整数方法的第二个参数是 autoIncrement 变量。您需要将其删除。

Laravel 方法

public function integer($column, $autoIncrement = false, $unsigned = false)
{
return $this->addColumn('integer', $column, compact('autoIncrement', 'unsigned'));
}

改变这个:
$table->integer('mod_tb_id','6');// this will become auto increment?

对此:
$table->integer('mod_tb_id');

关于Laravel 迁移 : fields that defined as interger wil be treated as auto increment?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37703058/

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