【问题标题】:Laravel 5 soft delete : SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entryLaravel 5 软删除:SQLSTATE [23000]:完整性约束违规:1062 重复条目
【发布时间】:2015-10-03 03:46:46
【问题描述】:

我有一个 laravel 5 项目,我想使用软删除方法,但每次删除后我都会收到以下 sql 错误消息:

SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '7' for key 'PRIMARY' (SQL: insert into `fairkatert_task` (`id`, `user_id`, `editor_id`, `title`, `task`, `status`, `deadline_date`, `deleted_at`, `created_at`, `updated_at`, `milestone_id`) values (7, 1, 1, asdasdasdasdasd, asdasdasdasdasdasdasda, open, 2016-12-28 00:00:00, 2015-10-02 07:16:26, 0000-00-00 00:00:00, 0000-00-00 00:00:00, 0))

我试图关闭时间戳,但它并没有停止,我用谷歌搜索它,我找不到任何适合我的解决方案。

迁移:

public function up()
{
    Schema::create('task', function(Blueprint $table)
    {
        $table->increments('id');
        $table->string('user_id')->references('id')->on('user')->onDelete('cascade');
        $table->integer('editor_id')->references('id')->on('user')->onDelete('cascade');
        $table->string('title');
        $table->text('task');
        $table->enum('status', array('open', 'close', 'reopen'))->default('open');
        $table->timestamp('deadline_date');
        $table->softDeletes();
        $table->timestamps();
    });
}

型号:

<?php

  namespace App\Http\Models;

   use Illuminate\Database\Eloquent\Model;
    use Illuminate\Database\Eloquent\SoftDeletes;

  class Task extends Model
   {
      use SoftDeletes;

public    $timestamps = true;
protected $table      = 'task';
protected $fillable   = [ 'user_id', 'editor_id', 'title', 'task', 'status', 'deadline_date' ];
protected $dates      = [ 'deadline_date', 'deleted_at', 'created_at', 'updated_at' ];

谢谢你的帮助。

【问题讨论】:

  • 你的数据库有一行 id = 7 ???您可以查看该行的deleted_at列。
  • 您出于某种原因重新插入。你没有更新。这是您必须调查的第一个线索。您的代码中某处存在错误,并且您发布的代码不是我们需要破解的最相关的代码片段,因为您编写的内容出现了逻辑错误。

标签: php laravel


【解决方案1】:

谢谢两位,我找到了我的问题。

$task->delete();
$task->save();

我不知道为什么,但我在删除记录后使用了保存方法。 原来这么简单,问题就解决了。

【讨论】:

    猜你喜欢
    • 2016-05-23
    • 2014-09-16
    • 1970-01-01
    • 2016-01-16
    • 2021-05-30
    • 2018-06-06
    • 2020-12-20
    • 2016-03-10
    • 2015-03-31
    相关资源
    最近更新 更多