当前位置: 首页 > 知识库问答 >
问题:

一般错误: 1附近")":语法错误")在Laravel 5.6.33

胡承悦
2023-03-14

我有一些问题Laravel迁移。我的文章和标签之间有多对多的关系。'article_tag'迁移:

Schema::create('article_tag', function (Blueprint $table) {
    $table->integer('article_id')->unsigned()->index();
    $table->foreign('article_id')->refrences('id')->on('tags')->onDelete('cascade')->onUpdate('cascade');
    $table->integer('tag_id')->unsigned()->index();
    $table->foreign('tag_id')->refrences('id')->on('articles')->onDelete('cascade')->onUpdate('cascade');
});

标签迁移:

Schema::create('tags', function (Blueprint $table) {
    $table->increments('id');
    $table->string('name');
    $table->timestamps();
});

“第条移徙:

Schema::create('articles', function (Blueprint $table) {
    $table->increments('id');
    $table->string('title');
    $table->text('body');
    $table->timestamps();
});

我的控制台日志:

illumb\Database\QueryException:SQLSTATE[HY000]:一般错误:1 near“)”:语法错误(SQL:创建表“article_-tag”(“article_-id”integer不为null,“tag_-id”integer不为null),外键(“article_-id”)在更新级联时引用删除级联上的“tags”),外键(“tag_-id”)引用“articles”()关于删除级联(关于更新级联)

异常跟踪:

1 PDOExc0019::("SQLSTATE[HY000]:常规错误: 1附近")":语法错误") /home/user/Desktop/blog/vendor/laravel/framework/src/Illuminate/Database/Connection.php:452

2 PDO::准备(“创建表”article_标记”(“article_id”整数不为空,“tag_id”整数不为空,外键(“article_id”)在更新级联的删除级联上引用“tags”(),外键(“tag_id”)在更新级联的删除级联上引用“articles”()/home/user/Desktop/blog/vendor/laravel/framework/src/light/Database/Connection.php:452

最好的,Javad

共有1个答案

刘承悦
2023-03-14

您的迁移中存在拼写错误。你是说<代码>引用-

Schema::create('article_tag', function (Blueprint $table) {
        $table->integer('article_id')->unsigned()->index();
// in here
        $table->foreign('article_id')->refrences('id')->on('tags')->onDelete('cascade')->onUpdate('cascade');
        $table->integer('tag_id')->unsigned()->index();
// and in here too
        $table->foreign('tag_id')->refrences('id')->on('articles')->onDelete('cascade')->onUpdate('cascade');
    });
 类似资料:
  • 我只是想创建一个包含一列的表,并向其中添加一些值,但我得到了两个错误。一种是取消对db.close()的注释;句柄关闭太快,另一个是下面是代码。

  • E/SqliteDatabase(6729):Android.database.sqlite.sqliteException:“CREATE”附近:语法错误(代码1):,编译时:插入到创建表关系(_id整数主键自动增量,名称文本不为NULL,电子邮件文本不为NULL,年代文本不为NULL,位置文本不为NULL);(电子邮件,名称,年代,位置)值(?,?,?,?) DbManager类 从插入类中,

  • 我创建DbManger类来处理Sqlite数据库操作,我尝试在数据库中插入值,但它给出了一个错误 E/SQLiteDatabase(6729):android.database.sqlite.SQLiteExcture:近"CREATE":语法错误(代码1):,编译时: INSERT INTO CREATE表关系(_idINTEGER主键自动输入,名称文本不为空,电子邮件文本不为空,年龄文本不为空

  • 首先,有类似的问题,比如1,2,3,4,5,但没有提到解决这个问题的答案。 LogCat错误 09-02 05:27:31.213: E/SQLiteDatabase(8442):错误插入日=2个月=9值=3.0年=2015 09-02 05:27:31.213: E/SQLiteDatabase(8442):android.database.sqlite.SQLiteExc0019:近空:语法错

  • 问题内容: 我创建了这个表: 我尝试运行以下postgres脚本: 为什么会出现此语法错误? 问题答案: 支持版本 根据以上@klin的评论,仅 PostgreSQL 9.5及 更高版本支持。 独特的约束 在添加唯一索引。目前,该列上没有任何约束,因此该列上没有冲突的可能性。 但是,如果您不希望该列是唯一的,那么您打算遇到什么冲突/您希望通过该操作解决的问题是什么? 请参阅https://www.

  • 我在Postgres中执行了这个SQL语句 而且 是表名 是具有整数数据类型的列名。 我想根据用户的输入将数据类型修改为boolean或text或varchar(256)等。但是当我运行查询时,我得到了错误 错误:“modify”或“modify”附近有语法错误 不确定是什么问题。右侧查询需要帮助。