猿问

如何处理 gorp Select 中的空值

我正在尝试从数据库中获取用户,如下所示,


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,因为可以轻松地将输出映射到结构体数组。


Helenr
浏览 173回答 1
1回答

守着一只汪

将任何 acctstarttime 映射到指向该类型的指针而不是该类型的值。如果 col 为 null,则指针将为 nil。或者你可以使用 sql.NullXXX 类型,但我通常不喜欢那些,因为它们使其他一切变得奇怪。
随时随地看视频慕课网APP

相关分类

Go
我要回答