如何处理GORP空值选择
问题描述:
我试图从数据库获取用户的跟随,如何处理GORP空值选择
var users []User
_, err := dbMap.Select(&users, "select id,username,acctstarttime,acctlastupdatedtime,acctstoptime from accounting order by id")
这里我使用gorp。当存在空值时,会引发异常
Select failed sql: Scan error on column index 3: unsupported driver -> Scan pair: <nil> -> *string
我该如何解决这个问题?在这里,我使用gorp是因为将输出映射到一个结构数组很容易。
答
将acctstarttime映射到指向类型的指针而不是类型的值。
如果col为空,指针将为零。
或者你可以使用sql.NullXXX类型,但是我通常不喜欢那些,因为它们让所有的东西都变得怪异。