title: Error "value of type []uint8 is not assignable to type []string" when scanning a DB row
body: <p>I am using postgresql as my backend database.</p>
  <p>Tried to scan a field <code>languagespoken</code> which is an array of text</p>
  <pre><code>var user userprofile
  row := core.db.QueryRow(
      &quot;SELECT languagespoken FROM \&quot;user\&quot; WHERE id = $1&quot;,
      userId,
  )
  
  err := row.Scan(&amp;user.Languages)
  
  if err != nil {
      return user, err
  }
  </code></pre>
  <p>My structure looks like this</p>
  <pre><code>type userprofile struct {
      Languages []string `json:languages`
  }
  </code></pre>
  <p>But getting the error</p>
  <pre><code>2014/06/30 15:27:17 PANIC: reflect.Set: **value of type []uint8 is not assignable to type []string**
  /usr/lib/go/src/pkg/reflect/value.go:2198 (0x56c152)
      Value.assignTo: panic(context + &quot;: value of type &quot; + v.typ.String() + &quot; is not assignable to type &quot; + dst.String())
  /usr/lib/go/src/pkg/reflect/value.go:1385 (0x56966b)
      Value.Set: x = x.assignTo(&quot;reflect.Set&quot;, v.typ, target)
  /usr/lib/go/src/pkg/database/sql/convert.go:215 (0x492d70)
      convertAssign: dv.Set(sv)
  /usr/lib/go/src/pkg/database/sql/sql.go:1562 (0x49c0e5)
      (*Rows).Scan: err := convertAssign(dest[i], sv)
  /usr/lib/go/src/pkg/database/sql/sql.go:1630 (0x49c560)
      (*Row).Scan: err := r.rows.Scan(dest...)
  /home/ceresti/source/gocode/src/ceresti.kilnhg.com/ceresti/server/app/databaseapi.go:144 (0x402478)
      (*coreStruct).GetUserProfile: err := row.Scan(&amp;user.Languages)
  /home/ceresti/source/gocode/src/ceresti.kilnhg.com/ceresti/server/app/restfulapi.go:327 (0x40a63c)
      Getuserprofile: userprofileStruct, err := core.GetUserProfile(userId)
  /usr/lib/go/src/pkg/runtime/asm_amd64.s:340 (0x4309c2)
  </code></pre>
  <p>Please let me know how to resolve this issue.</p>