求助,Laravel 创建数据库时 int 类型设置默认值

*create*_table.php中代码:$table->integer('ip', 10)->default(0);

migrate时错误提示:

[Illuminate\Database\QueryException]SQLSTATE[42000]: Syntax error or access violation: 1067 Invalid default value for 'ip' (SQL: create table***, `ip` int not null default '0' auto_increment primary key, ***

为什么会这样子。。。

为什么自动给加上了auto_increment primary key,而且还给0自动加上了单引号。。。

但是另一个字段$table->integer('view_count')->default(0);没有问题。。。
integer不能限制长度?

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 16

3年前的问题了,今天我也遇到了。用了和楼主相同的方法没问题.
Schema::table('users', function (Blueprint $table) { $table->tinyInteger('gender')->default(1)->comment('用户性别:1男,2女'); });

6年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!