Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re^2: PgPP invalid byte seqnence for encoding UTF8

by cormanaz (Chaplain)
on Mar 24, 2013 at 16:22 UTC ( #1025159=note: print w/ replies, xml ) Need Help??


in reply to Re: PgPP invalid byte seqnence for encoding UTF8
in thread PgPP invalid byte seqnence for encoding UTF8

That did take care of the encoding error tho I don't understand why because I thought Perl was natively UTF-8. Anyway it works.

But now when I try to use that value to update a record like so:

my $sth = $dbh->prepare("update userinfo set description=? where uid=$ +uid"); $sth->execute(encode('UTF-8',$userdata->[$i]->{description})) || die $ +sth->errstr;
I get DBD::PgPP::st execute failed: ERROR:  array value must start with "{" or dimension information at character 33

This is confusing as the string is En démocratie, on a le droit d'avoir tort and character 33 is either an "a" or a "v" depending on whether it's counting form zero.


Comment on Re^2: PgPP invalid byte seqnence for encoding UTF8
Select or Download Code
Re^3: PgPP invalid byte seqnence for encoding UTF8
by McA (Curate) on Mar 24, 2013 at 18:07 UTC

    Hi,

    I'm pretty sure it has nothing to do with encoding but with the way the related columns are defined. Please, show use your table definition of userinfo.

    McA

      Here it is

      Table "public.user info" Column | Type | Modifiers | Storage | Description ------------------+------------------------------- +-----------+----------+------------- uid | integer | not null | plain | screen_name | character varying | not null | extended | user_name | character varying | not null | extended | location | character varying | | extended | user_language | character varying | | extended | favourites_count | integer | | plain | followers_count | integer | | plain | friends_count | integer | | plain | status_count | integer | | plain | listed_count | integer | | plain | created_at | character varying | | exten ded | time_zone | character varying | | exten ded | user_url | character varying | | exten ded | description | text[] | | exten ded | added_on | timestamp without time zone[] | | exten ded | Indexes: "pk_user" PRIMARY KEY, btree (uid) Rules: my_table_on_duplicate_ignore AS ON INSERT TO userinfo WHERE (EXISTS ( SELECT 1 FROM userinfo WHERE userinfo.uid = new.uid)) DO INSTEAD NOTHING Has OIDs: no
      Maybe the problem is the brackets after the text type? Those were inserted when I created the column with pgadminIII.

        I don't know psql well, but as far as I know, you introduced an array type for column description. I don't know how to feed the data for an array type via DBI. But that is something different than the initial question.

        McA

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1025159]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (7)
As of 2014-09-03 05:48 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite cookbook is:










    Results (35 votes), past polls