diff --git a/statement.go b/statement.go index 4647050e..55c4aa89 100644 --- a/statement.go +++ b/statement.go @@ -230,12 +230,12 @@ func (stmt *Statement) AddVar(writer clause.Writer, vars ...interface{}) { default: switch rv := reflect.ValueOf(v); rv.Kind() { case reflect.Slice, reflect.Array: - if rv.Type().Elem() == reflect.TypeOf(uint8(0)) { + if rv.Len() == 0 { + writer.WriteString("(NULL)") + } else if rv.Type().Elem() == reflect.TypeOf(uint8(0)) { stmt.Vars = append(stmt.Vars, v) stmt.DB.Dialector.BindVarTo(writer, stmt, v) - }else if rv.Len() == 0 { - writer.WriteString("(NULL)") - } else { + }else { writer.WriteByte('(') for i := 0; i < rv.Len(); i++ { if i > 0 {