On 10 Dec 2008, at 00:03, Paul Makepeace wrote:

For reasons I'm not clear on our MySQL / DBIC / Catalyst set-up has
lately started dropping utf8-ness. I had a dig around and there seem
to be a few solutions.

Matt's talk http://www.shadowcat.co.uk/catalyst/-talks/oscon/crucible.xul
suggests, slide 92 (which sadly I can't copy/paste) using an
on_connect_do. It doesn't say where exactly this goes but I'm assuming
in the schema base class? It didn't help in any case :-)

I read in http://dev.mysql.com/doc/refman/5.0/en/charset-general.html
a way of setting character set results, so tried this,

__PACKAGE__->config(
 schema_class => 'IDL::Schema',
 connect_info => [EMAIL PROTECTED]::Schema::connect_info],
 on_connect_do => [
   #'set names utf8',
   'SET character_set_results="utf8"',
 ],
);

That didn't appear to do anything either.

What /did/ work was, __PACKAGE__->load_components(qw/UTF8Columns/);
and then individually setting uft8_columns(qw/name etc/);

Any ideas why the first two didn't work? I'm not really excited about
setting UTF8 on every text column...

**

Stabbing at it from the database side, the db is latin1,

mysql> show variables like "character_set_database";
+------------------------+--------+
| Variable_name          | Value  |
+------------------------+--------+
| character_set_database | latin1 |
+------------------------+--------+

Attempting alter database default character set 'utf8'; alter database
character set 'utf8'; seems too easy and doesn't appear to help
either.

Maybe it needs to be reloading from scratch as utf8 or something?

P

What i did:

http://search.cpan.org/~capttofu/DBD-mysql-4.010/lib/DBD/mysql.pm#mysql_enable_utf8

- Set that in the 4th/options argument to connect.
- Make sure all my tables are set with the utf8 collation.

That was pretty much it - it just worked for me from then on.

-ash


_______________________________________________
List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/[email protected]

Reply via email to