C#里面有 Nullable可空类型,go里int不能赋值nil,这该如何处理?数据库中可空字段null不参与求平均等统计,所以设置为默认值为0是不合适的,而sql.NullString类型就算从数据库中取得数据了,如何赋值给类里面的例如Age(int类型)? 求解!
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
go里int不能赋值nil
你的需求里,0 和 null 表示的意思不一样呗?
Age 的类型定义为 sql.NullInt64,这样可以通过 age.Valid 判断是否为有效值,具体的值就从 age.Int64 获取。文档 http://docs.studygolang.com/pkg/database/sql/#NullInt64
sql.NullInt64
age.Valid
age.Int64
如果这样,则例如Person就被sql这种数据库存储浸入了,而且前台数据绑定或计算,还要一个个判断太不方便了吧?有没有其他解决方案,一般你们怎么处理的
没遇到你这样的需求。
`单行代码`
go里int不能赋值nil
你的需求里,0 和 null 表示的意思不一样呗?
Age 的类型定义为
sql.NullInt64
,这样可以通过age.Valid
判断是否为有效值,具体的值就从age.Int64
获取。文档 http://docs.studygolang.com/pkg/database/sql/#NullInt64如果这样,则例如Person就被sql这种数据库存储浸入了,而且前台数据绑定或计算,还要一个个判断太不方便了吧?有没有其他解决方案,一般你们怎么处理的
没遇到你这样的需求。