[Moscow.pm] DBIx::Class прошу помощи...

Sergey Malochinskiy sergey.malochinskiy на gmail.com
Пн Июл 16 22:26:19 PDT 2012


Спасибо всем за помощь.

Действительно, использовать в связке с DBIx:Class специфичный для
конкретной БД запрос не стоит.
На самом деле такая структура была выбрана осознана и другие задачи
решает полностью.

Остановлюсь на следующем:
1. Структуру БД оставлю без изменений
2. "Хитрую" выборку перепоручу вьюхе на DBIx::Class
3. Вьюху буду дергать в цикле для каждого lang_id - это быстрее чем
еще более "хитрый запрос".
4. Посвящу пару дней чтобы разобраться с JOIN хотя бы в MySQL и Oracle :)

Спасибо!


17 июля 2012 г., 6:45 пользователь Alexandr Alexeev <afiskon на gmail.com> написал:
> Важно отметить несколько вещей:
>
> 1. DBIx::Class действительно никогда не даст вам всех возможностей вашей
> СУБД, такова плата за использование ORM
> 2. В вашем случае вы можете обойти проблему аж тремя способами
> 2.1 тем, что предложил Алексей
> 2.2 получив DBH и послав запрос напрямую или же
> 2.3 прибегнув к денормализации / немного изменив схему БД - вместо пары
> полей key_id, lang_id можно использовать одно поле key_id*128 + lang_id.
> 3. Если говорить о первоначальном варианте запроса, то вложенные запросы
> AFAIK поддерживаются не всеми СУБД, а потому едва ли DBIx::Class может их
> вам предложить, однако вы можете написать запрос + серию запросов в цикле
> (там, где действительно нужны вложенные запросы и не имеет смысл прибегнуть
> к денормализации).
>
> 17 июля 2012 г., 3:16 пользователь Oleg Kostyuk <cub.uanic на gmail.com>
> написал:
>
>> 2012/7/16 Roman V. Nikolaev <rshadow на rambler.ru>:
>> > -----BEGIN PGP SIGNED MESSAGE-----
>> > Hash: SHA1
>> >
>> > Надо валить с DBIx::Class пока не поздно. Если в проекте появляется
>> > JOIN то это уже проект не для DBIx::Class.
>>
>> А мужики-то и не в курсе.... Скажите, о великий сенсей, а откуда ещё
>> надо валить и в каких случаях? И самое интересное - куда? На Zend
>> Framework? Нам всегда интересны ваши авторитетные и аргументированные
>> заявления. Может, вы ещё и по фотографии серверов архитектуру
>> приложения подправить можете?
>>
>>
>> >
>> > - --
>> >
>> >          Roman V. Nikolaev
>> >
>> > jabber:     rshadow на jabber.org
>> > icq:        198-364-657
>> > skype:      rubin_rshadow
>> > site:       http://www.rshadow.ru
>> > -----BEGIN PGP SIGNATURE-----
>> > Version: GnuPG v1.4.10 (GNU/Linux)
>> > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>> >
>> > iEYEARECAAYFAlAEW84ACgkQ6hKpBt4OHBvpbQCfYq23nUAKUulQRfEi3ifnP8X1
>> > hccAnR0IREOFSwXI05wKQ0cvwWHoiXo/
>> > =ugt0
>> > -----END PGP SIGNATURE-----
>> > --
>> > Moscow.pm mailing list
>> > moscow-pm на pm.org | http://moscow.pm.org
>>
>>
>>
>> --
>> Sincerely yours,
>> Oleg Kostyuk (CUB-UANIC)
>> --
>> Moscow.pm mailing list
>> moscow-pm на pm.org | http://moscow.pm.org
>
>
>
>
> --
> С уважением, Александр
> Личный блог: http://eax.me/
> Мой форум: http://it-talk.org/
> Мой Twitter: http://twitter.com/afiskon
>
>
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>



-- 
Best regards,
Sergey Malochinskiy


Подробная информация о списке рассылки Moscow-pm