For github.com/lib/pq v1.10.7, pq.Array does not support array of int16 that represents smallint array data type in postgresql.
`func Array(a interface{}) interface {
driver.Valuer
sql.Scanner
} {
switch a := a.(type) {
case []bool:
return (BoolArray)(&a)
case []float64:
return (Float64Array)(&a)
case []float32:
return (Float32Array)(&a)
case []int64:
return (Int64Array)(&a)
case []int32:
return (Int32Array)(&a)
case []string:
return (StringArray)(&a)
case [][]byte:
return (*ByteaArray)(&a)
case *[]bool:
return (*BoolArray)(a)
case *[]float64:
return (*Float64Array)(a)
case *[]float32:
return (*Float32Array)(a)
case *[]int64:
return (*Int64Array)(a)
case *[]int32:
return (*Int32Array)(a)
case *[]string:
return (*StringArray)(a)
case *[][]byte:
return (*ByteaArray)(a)
}
return GenericArray{a}
}`
This cause an error during Row.Scan with following message:
Error: Received unexpected error: sql: Scan error on column index 2, name "columnName": pq: parsing array element index 0: pq: scanning to int16 is not implemented; only sql.Scanner
For github.com/lib/pq v1.10.7, pq.Array does not support array of int16 that represents smallint array data type in postgresql.
`func Array(a interface{}) interface { driver.Valuer sql.Scanner } { switch a := a.(type) { case []bool: return (BoolArray)(&a) case []float64: return (Float64Array)(&a) case []float32: return (Float32Array)(&a) case []int64: return (Int64Array)(&a) case []int32: return (Int32Array)(&a) case []string: return (StringArray)(&a) case [][]byte: return (*ByteaArray)(&a)
}`
This cause an error during Row.Scan with following message: