func (i Int8IFaceMap) Value() (driver.Value, error) {
	if i == nil {
		return emptyObjectValue, nil
	}
	return json.Marshal(i)
}
Value implements the driver.Valuer interface.
package mysql
import (
	"database/sql/driver"
	"encoding/json"
)
var (
	emptyObjectValue = []byte("{}")
	emptyArrayValue  = []byte("[]")
)
type Int32s []int32
func (i *Int32s) Scan(value interface{}) error {
	data, ok := value.([]byte)
	if !ok {
		return nil
	}
	return json.Unmarshal(data, i)
}
func (i Int32s) Value() (driver.Value, error) {
	if i == nil {
		return emptyArrayValue, nil
	}
	return json.Marshal(i)
}
type Int64s []int64
func (i *Int64s) Scan(value interface{}) error {
	data, ok := value.([]byte)
	if !ok {
		return nil
	}
	return json.Unmarshal(data, i)
}
func (i Int64s) Value() (driver.Value, error) {
	if i == nil {
		return emptyArrayValue, nil
	}
	return json.Marshal(i)
}
type Strings []string
func (s *Strings) Scan(value interface{}) error {
	data, ok := value.([]byte)
	if !ok {
		return nil
	}
	return json.Unmarshal(data, s)
}
func (s Strings) Value() (driver.Value, error) {
	if s == nil {
		return emptyArrayValue, nil
	}
	return json.Marshal(s)
}
type Int8IFaceMap map[int8]interface{}
func (i *Int8IFaceMap) Scan(value interface{}) error {
	data, ok := value.([]byte)
	if !ok {
		return nil
	}
	return json.Unmarshal(data, i)
}