1 回答

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超6個(gè)贊
我做出這個(gè)答案只是為了結(jié)束問題并總結(jié)結(jié)果。所以有2種方式:
1 編寫自己的類型:
type BitMask sql.NullInt64
func (bits *BitMask) Scan(src interface{}) error {
if src == nil {
bits.Int64 = 0
bits.Valid = false
return nil
}
buf, ok := src.([]byte)
if !ok {
return fmt.Errorf("Unexpected type for BitMask: %T\n", src)
}
if len(buf) != 8 {
bits.Int64 = 0
bits.Valid = false
return errors.New("Size of bit filed is not 8 bytes\n")
}
bits.Int64 = 0
for i := range buf {
bits.Int64 *= 256
bits.Int64 = int64(buf[i])
}
bits.Valid = true
return nil
}
不要使用BIT(64),UNSIGNED BIGINT而是。因?yàn)闆]有優(yōu)勢(shì),只有問題。(這就是我要做的)
- 1 回答
- 0 關(guān)注
- 166 瀏覽
添加回答
舉報(bào)