Laravel SQLSTATE[42000]:语法错误或访问冲突:1064

Posted

技术标签:

【中文标题】Laravel SQLSTATE[42000]:语法错误或访问冲突:1064【英文标题】:Laravel SQLSTATE[42000]: Syntax error or access violation: 1064 【发布时间】:2017-10-29 04:15:00 【问题描述】:

您好,我想创建一个外键,但没有任何效果,我不明白为什么enter image description here

enter image description here

【问题讨论】:

那些错误信息很难读。做出您期望他人提供的努力以帮助您,并将您的代码复制到您的问题中。 【参考方案1】:

请提供有关表类型的更多信息,现在根据您输入的信息我可以建议您检查您是否使用 InnoDB 表?表一中的FOREIGN KEY对应表二中的PK吗?它们的类型和长度是否相同?

【讨论】:

【参考方案2】:

文章表

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateArticlesTable extends Migration

    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    
        Schema::create('articles', function (Blueprint $table) 
            $table->increments('id');
            $table->string('title' , 255);
            $table->text('content');
            $table->integer('user_id')->unsigned();
            $table->foreign('user_id')->references('id')->on('users');
            $table->timestamps();
        );
    

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    
        Schema::dropIfExists('articles');
    

分类表

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateCategoryTable extends Migration

    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    
        Schema::create('category', function (Blueprint $table) 
            $table->increments('id');
            $table->string('name');
            $table->timestamps();
        );
    

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    
        Schema::dropIfExists('category');
    

【讨论】:

以上是关于Laravel SQLSTATE[42000]:语法错误或访问冲突:1064的主要内容,如果未能解决你的问题,请参考以下文章

SQLSTATE [42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误 - LARAVEL

Laravel 6 - SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;

LUMEN:如何修复 SQLSTATE [42000]:语法错误或访问冲突:laravel 流明上的 1071

Laravel SQLSTATE[42000]:语法错误或访问冲突:1064

Laravel7 安装 laravel-admin 出现 IlluminateDatabaseQueryException SQLSTATE[42000]: Syntax error or (代

Laravel7 安装 laravel-admin 出现 IlluminateDatabaseQueryException SQLSTATE[42000]: Syntax error or (代