[Dbix-class] join problem ( change alias for table )

Oleg Pronin syber.rus at gmail.com
Tue Jan 20 15:11:26 GMT 2009


The best way is to use quote_char

In your MyDB.pm Model:

__PACKAGE__->config(
    schema_class =3D> ...
    connect_info =3D> [
        ...,
        {
            quote_char =3D> q{"},
            name_sep   =3D> q{.},
        },
    ],
);

But you will still in trouble when writing

order_by =3D> 'user DESC'
because of bug in SQL Abstarct, you will get  ORDER BY "user DESC"

the workaround is to write
order_by =3D> \' "user" DESC',
or
order_by =3D> \'me.user DESC',



2009/1/20 ivan <ivan at price.ru>

> my $s =3D  $c->model('MyDB');
> my $result =3D $s ->resultset('Client') -> search(
> { 'id' =3D> $id },
> join =3D>  [qw/ user /],
> );
>
> Result SQL:
>
> SELECT COUNT( * ) FROM client me LEFT OUTER JOIN users user ON (
> user.user_id =3D me.user_id ) WHERE ( id =3D ? )
>
> But 'user' - it is PostgreSQL reserve word.
>
>
> can I change alias for table users ?
>
> _______________________________________________
> 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/dbix-class@lists.scsys.co.uk
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.scsys.co.uk/pipermail/dbix-class/attachments/20090120/d46=
e2c13/attachment.htm


More information about the DBIx-Class mailing list