如何处理 gorp Select 中的空值
How to handle null values in 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 是因为很容易将输出映射到结构数组。
使任何 acctstarttime 映射到指向该类型的指针而不是该类型的值。
如果col为null,指针将为nil。
或者你可以使用 sql.NullXXX 类型,但我通常不喜欢这些类型,因为它们让其他一切变得奇怪。
我正在尝试从数据库中获取用户,如下所示,
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为null,指针将为nil。
或者你可以使用 sql.NullXXX 类型,但我通常不喜欢这些类型,因为它们让其他一切变得奇怪。