花若雨 2020-03-05 00:50 采纳率: 50%
浏览 181
已采纳

laravel外键报错,语法是正确的,求解决!

这是分类表的内容

Schema::create('classifies', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->string('name')->comment('栏目名称');
            $table->string('introduce')->comment('栏目介绍');
            $table->integer('rank')->default('0')->comment('等级|0.顶级ID为0 1.二级ID为顶级ID');
            $table->integer('state')->default('1')->comment('状态|1.正常 2.屏蔽');
            $table->timestamps();
        });

这是文章表的内容

Schema::create('classify_notices', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->string('title')->comment('公告名称');
            $table->unsignedInteger('classify_id')->comment('公告所属分类');
            // $table->foreign('被约束的字段')->references('约束的字段')->on('约束的表名')->onDelete('受此约束删除');
            $table->foreign('classify_id')->references('id')->on('classifies')->onDelete('cascade');
            //nullable()可以为空
            $table->string('keyword')->nullable()->comment('关键字|SEO');
            $table->text('bewrite')->nullable()->comment('描述|SEO');
            $table->string('thumb')->comment('缩略图|image');
            $table->integer('click')->comment('查看次数|input');
            $table->mediumtext('content')->comment('内容|simditor');
            $table->tinyInteger('iscommend')->default(2)->comment('推荐|radio|1:是,2:否');
            $table->integer('state')->default('1')->comment('状态|1.正常 2.屏蔽');
            $table->timestamps();
        });

写完外键关联后,就报这个错误,语法什么的都对,问题是出在哪里呢?

SQLSTATE[HY000]: General error: 1005 Can't create table `ruijia`.`#sql-10a8_70` (errno: 150 "Foreign key constraint is incorr
ectly formed") (SQL: alter table `classify_notices` add constraint `classify_notices_classify_id_foreign` foreign key (`classify_id`) references `classifies` (`id`) on delete cascade)

感谢各位大神解答!

  • 写回答

1条回答 默认 最新

  • threenewbee 2020-03-05 09:29
    关注

    一个是unsignedInteger,一个是bigIncrements,两个类型不同,不能关联

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何使用chatgpt完成文本分类任务?
  • ¥15 已知速度v关于位置s的等式,怎么转化为已知位置求速度v的等式
  • ¥15 我有个餐饮系统,用wampserver把环境配置好了,但是后端的网页却进去,是为什么,能不能帮远程一下?
  • ¥15 R运行没有名称为"species"的插槽对于此对象类"SDMmodelCV"
  • ¥20 基于决策树的数字信号处理,2ask 2psk 2fsk的代码,检查下报错的原因
  • ¥20 python作业求过程
  • ¥15 wincc已组态的变量过多
  • ¥60 如图:直线与椭圆X轴平行,求直线与椭圆任意一点的相切坐标计算公式
  • ¥50 如何用python使用opencv里的cv::cudacodec::VideoWriter函数对视频进行GPU硬编码
  • ¥100 c#solidworks 二次开发 工程图自动标边线法兰 等折弯尺寸怎么标