问答详情
源自:6-3 Eloquent ORM中新增数据、自定义时间戳及批量赋值的使用

为什么我添加数据的时候 报这样的错?


SQLSTATE[42S22]: Column not found: 1054 Unknown column 'updated_at' in 'field list' (SQL: insert into `student` (`name`, `age`, `updated_at`, `created_at`) values (moon, 18, 1486548596, 1486548596))

提问者:在水一方4416243 2017-02-08 18:29

个回答

  • qq_逝水流年轻染尘_8
    2017-10-05 17:27:58

    updated_at 和created_at 字段长度不够,改成varchar类型 长度给32

  • Matthew_13424214
    2017-06-26 14:05:32

    是你的updated_at 和created_at 字段长度不够,之前老师给的是int 长度11位,你改成varchar类型 长度给32

  • 慕粉3267258
    2017-03-11 05:18:04

    会不会是你DB或者table连接错了? 

    我建议你直接关闭laravel的时间戳试试, 如果还不能运行成功就和时间戳无关了. 好像是: 

    public $timestamps = false

    记得不是很清了, 你试试, 有什么问题在交流

  • 慕粉3267258
    2017-02-10 05:21:19

    很明显是你的数据库对应table中没有列: "updated_at", 

    个人猜测可能产生的原因是你没有使用Laravel的标准生成table[或者不同的version], 或者在使用migrate的时候, 特意禁止了对应的列的自动生成. 你可以检查下自己的table有没有这一列. 如果没有的话, 加上就好了. (如果你是使用的migrate, 建议使用migrate方法去添加, 而不是手动添加). 


    加油.