【问题标题】:SQLSTATE[23000]: Integrity constraint violation: 4025 CONSTRAINTSQLSTATE [23000]:违反完整性约束:4025 CONSTRAINT
【发布时间】:2021-03-08 23:14:08
【问题描述】:

嘿,当我将数据从 laravel 插入 MySQL 时出现错误 SQLSTATE[23000]:完整性约束违规:4025 CONSTRAINT

这里是商店控制器

public function store(Request $request)
{
    // $faker = Faker::create('id_ID');
    $image = $request->file('Product_photo');
    $extension = $image->getClientOriginalExtension();
    $name = $request->Name;
    $file_name = $name.'.'.$extension;
    $image->move("images/listcar/", $file_name);
    DB::table('car')
    ->insert([
        //'id' => $faker->unique()->numberBetween($min = 0, $max = 200),
        'product_photo' => $file_name,
        'name' => $request->Name,
        'production_year' => $request->Production_year,
        'price' => $request->Price,
        'merk' => $request->Merk,
        'description' => $request->Description,
        'varian' => $request->Variant,
        'machine' =>$request->Machine,
        'transmision' => $request->Transmision,
        'wheel' => $request->Wheel,
    ]);
    return redirect('/admin');

这是我的刀

<body>
<h1>Tambah Mobil</h1>
<div class="container">
    <form action="/car/add" method="post" enctype="multipart/form-data">
    {{ csrf_field() }}
    <th>Nama</th><br>
        <input type="text" name="Name" value=""><br/><br>
    <th>Tahun Produksi</th><br>
        <input type="text" name="Production_year" value=""><br/><br>
    <th>Harga</th><br>
        <input type="number" name="Price" value=""><br/><br>
    <th>Select Product Image</th><br>
        <input type="file" name="Product_photo" /><br/><br>
    <th>Merek</th><br>
        <input type="text" name="Merk" value=""><br/><br>
    <th>Deskripsi</th><br>
        <input type="textarea" name="Description" value=""><br/><br>
    <th>Varian</th><br>
        <input type="text" name="Variant" value=""><br/><br>
    <th>Mesin</th><br>
        <input type="text" name="Machine" value=""><br/><br>
    <th>Transmisi</th><br>
        <input type="text" name="Transmision" value=""><br/><br>
    <th>Penggerak Roda</th><br>
        <input type="text" name="Wheel" value=""><br/><br>
    <br>
        <input class="btn btn-primary" type="submit" value="Tambah Data Mobil">
    </form>
    <br>
    <br>
</div>

MySQL 结构

我真的不知道我哪里错了,所以如果有错误的概念请告诉我

【问题讨论】:

  • 你不手动设置主键,插入记录时数据库会分配。删除此'id' =&gt; $faker-&gt;unique()-&gt;numberBetween($min = 0, $max = 200),
  • @vandettadyckies 你需要将id设置为auto increment,然后不需要通过Faker设置。
  • 报告错误提供完整的错误信息,不要剥离它。
  • 好的,我已经更新了,现在我正在使用自动增量,但同样的错误仍然发生
  • 尝试清理表格并从头开始,因为您的列“id”被搞砸了。自从您添加了自动增量属性后,这一切都是上帝了

标签: mysql laravel laravel-8


【解决方案1】:

更改 mysql 表上的排序规则 - utf8mb4_general_ci :)

【讨论】:

    【解决方案2】:

    检查您的模型$fillable 数组。确保将插入记录的所有列都是 $fillable 的一部分

    【讨论】:

      猜你喜欢
      • 2014-08-18
      • 2015-03-19
      • 2015-11-27
      • 2017-09-11
      • 2015-01-20
      • 2015-07-17
      • 2021-07-23
      • 1970-01-01
      相关资源
      最近更新 更多