v1. 定义了type Xma struct对应mysql的一个表,
用xorm/mysql 读取数据正常,但在json输出的时候遇到了错误,提示:
2018/10/19 10:28:36.549 [C] [asm_amd64.s:522] Handler crashed with error runtime error: invalid memory address or nil p
ointer dereference
。。。
2018/10/19 10:28:36.550 [C] [asm_amd64.s:522] G:/Go/src/time/zoneinfo.go:130
。。。
打开源码看了下,判断是读取时区出错,于是各种尝试加载时区。。。
v2. 注释出错的语句,结果发现只要访问 字段: XmaType string 就会出错。数据库中存在为空的记录。按说即使为null,我得到的应该是“”空字符串啊,为什么会有内存错误呢!
将XmaType string修改为XmaType sql.NullString,软件运行正常了!
有疑问加站长微信联系(非本文作者)