首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel查询生成器将id设置为0不工作

Laravel查询生成器将id设置为0不工作
EN

Stack Overflow用户
提问于 2017-07-24 10:51:43
回答 3查看 3.2K关注 0票数 4

当我运行时,我正在播种类别表:

代码语言:javascript
复制
    DB::table('cats')->insert([
        'id' => 0,
        'parent_cat_id' => null,
        'name' => 'Uncategorized'
    ]);

但是插入的行的id将是1,如果我尝试手动更新db上的id,这是可能的。

在查询生成器(例如,'id'=>5)中,除零以外的任何东西都可以工作。

编辑:目前该黑客正在工作,如果update()可以将id更改为0,那么insert()有什么问题?

代码语言:javascript
复制
    DB::table('cats')->insert([
        'id' => 100,
        'parent_cat_id' => null,
        'name' => 'Uncategorized'
    ]);
    DB::table('cats')->where('id',100)->update(['id' => 0]);

我的迁移模式:

代码语言:javascript
复制
    Schema::create('cats', function (Blueprint $table) {
        $table->increments('id');
        $table->string('name');
        $table->unsignedInteger('parent_cat_id')->nullable();
    });
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-07-24 10:56:35

您似乎使用以下方法定义了id列:

代码语言:javascript
复制
$table->increments('id');

这是UNSIGNED INTEGER等价物。

https://laravel.com/docs/5.4/migrations

更新

若要创建自动增量不带符号字段,请执行以下操作:

代码语言:javascript
复制
$table->integer('id');
$table->primary('id');

雄辩假设主键是一个递增的整数值,这意味着在默认情况下主键将自动转换为int。

https://laravel.com/docs/5.3/eloquent#eloquent-model-conventions

票数 3
EN

Stack Overflow用户

发布于 2019-06-17 17:04:58

我解决了这个问题:

代码语言:javascript
复制
public function up()
{
   Schema::create('cats', function (Blueprint $table) {
       DB::statement('SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";');
       //run other migrations 
   }
}

sql_mode MySQL变量告诉MySQL它是否应该将0插入解释为真正的0,而不是主键生成请求。

票数 4
EN

Stack Overflow用户

发布于 2017-07-24 11:00:40

更改迁移文件。然后使用命令- php构件迁移。

代码语言:javascript
复制
public function up()
{
    Schema::create('table_name', function (Blueprint $table) {
        $table->increments('id');
        $table->string('email')->index();
        $table->string('token')->index();
        $table->timestamp('created_at');
    });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45278691

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档