请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

测试fialed,na:=dao.GetOne(a),na为nil,数据库插入已成功

图片描述
这是代码信息
错误信息:created_at不能被Scan
sql: Scan error on column index 9, name “created_at”: unsupported Scan, storing driver.Value type []uint8 into type *time.Time
图片描述
数据库显示已插入数据
图片描述

正在回答

1回答

@Ans217 同学, 目前的信息还不能完全确定原因,请检查一下数据库字段和orm映射的内容,另外课程中使用的数据库是MySQL 8.0.x ,没有出现这个问题,先检查一下,看还有没有更多的信息来定位问题。另外:

错误信息:created_at不能被Scan
sql: Scan error on column index 9, name “created_at”: unsupported Scan, storing driver.Value type []uint8 into type *time.Time

类似这样的问题,有可能是数据库数据为null造成的,检查一下数据库中该字段数据是否为null,如果数据库字段数据为null,是无法赋值给非指针类型的,通常2种方法解决:1,设置数据库字段不为null,并设置默认值,避免null值,2,也可以将持久化对象的字段类型设置为指针型。@Ans217 同学,请检查并尝试一下,如果还有问题,请提供更多的信息来定位。


https://img1.sycdn.imooc.com//szimg/5cf4e36e0001913107600628.jpg

https://img1.sycdn.imooc.com//szimg/5cf4e36e0001874314180656.jpg


0 回复 有任何疑惑可以回复我~
  • 提问者 Ans217 #1
    感谢老师提醒,我没有注意到一些细节问题,golang:unsupported Scan, storing driver.Value type []uint8 into type *time.Time其实是连接mysql数据库要加上时间解析options.charset = utf8,options.parseTime = true,options.loc = Local,就是配置config.ini文件中添加,这个可以在resk-5.4-8源码中查看到config.ini的配置
    回复 有任何疑惑可以回复我~ 2019-06-03 21:03:26
  • 枫荇 回复 提问者 Ans217 #2
    wow,这个在4-6和4-7中有讲解。
    回复 有任何疑惑可以回复我~ 2019-06-04 07:43:03
  • wlison 回复 枫荇 #3
    同样的问题 但是在课程中并没有说明 config.ini文件的一些改变 只有在源代码中出现了 并且第五章源代码中优化的代码那部分,并没有相关的内容讲解,在编写测试代码的时候 会出现starter注册失败
    回复 有任何疑惑可以回复我~ 2019-09-05 15:45:48
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信