[Moscow.pm] DBI и метод, возвращающий 1 значение

Nikolay Mishin mi на ya.ru
Чт Дек 15 05:55:11 PST 2011


убил, будет percent_load_sql

15.12.2011, 17:27, "Jack of Shadows" <somerandomlogin на gmail.com>:
> $persent_load_sql <--- невалидный английский детектед! Пыщь лучиком ненависти.
>
> On Thu, Dec 15, 2011 at 5:05 PM, Андрей П. Ковбович
> <akovbovich на gmail.com> wrote:
>
>>  http://www.books.ru/books/programmirovanie-na-perl-dbi-8193/
>>
>>  15 декабря 2011 г. 16:38 пользователь Nikolay Mishin <mi на ya.ru> написал:
>>>  Да и все рекомендую читать рецепты для DBI
>>>  http://www.perlmonks.org/?node_id=284436 !!!
>>>
>>>  15.12.2011, 15:56, "Nikolay Mishin" <mi на ya.ru>:
>>>>  Да, круто, работает, я вроде использовал, но потом забыл,
>>>>  но вопросы , как оказалось, задавать полезно
>>>>
>>>>      my $cnt_today = $dbh->selectrow_array( $ref_source_data->{get_cnt_load_log},
>>>>          {}, $cob_date );
>>>>  Всем спасибо,работает, заодно 30% кода модуля почистилось;))
>>>>
>>>>  15.12.2011, 15:29, "Sergiy Borodych" <sergiy.borodych на gmail.com>:
>>>>>   Посмотри в сторону selectrow_array
>>>>>
>>>>>   my ($count) = $dbh->selectrow_array( $statement, {}, @bind_params );
>>>>>
>>>>>   Да вообще посмотри документацию DBI - там много полезных методов ;)
>>>>>
>>>>>   2011/12/15 Nikolay Mishin <mi на ya.ru>:
>>>>>>    Hi Miscow-pm
>>>>>>
>>>>>>    не для кого не секрет, что часто, при обращении к базе данных возвращается только 1 значение , скажем
>>>>>>    count и мы пишем процедуру:
>>>>>>    sub get_one_value_from_db {
>>>>>>       my $dbh             = shift;
>>>>>>       my $cob_date        = shift;
>>>>>>       my $persent_load_sql = shift;
>>>>>>
>>>>>>       my $pst_sth = $dbh->prepare($persent_load_sql);
>>>>>>       $pst_sth->execute($cob_date);
>>>>>>       my $cnt_today = $pst_sth->fetchrow_array();
>>>>>>
>>>>>>       return $cnt_today;
>>>>>>    }
>>>>>>
>>>>>>    вопрос, почему в модуле DBI
>>>>>>    просто нет метода, который возвращал бы значение, если ему передать
>>>>>>    1.  коннект
>>>>>>    2. sql
>>>>>>    3. значение для инициализации
>>>>>>    my $value = get_one_value_from_db( $dbh, $ref_source_data->{get_cnt_load_log},$cob_date);
>>>>>>    ну и потом , чтобы в качестве параметров можно было передавать ссылку на массив,
>>>>>>    если в запросе в условие where нужно вставлять более 1 значения
>>>>>>    my $value = get_one_value_from_db( $dbh, $ref_source_data->{get_cnt_load_log},\@many_param);
>>>>>>
>>>>>>    Вопрос:
>>>>>>    1. почему уже нет такой функции?
>>>>>>    2. может посоветуете модуль, где она есть,
>>>>>>    просто чует мое сердце, что это уже 1000 раз написано,
>>>>>>    Спасибо!
>>>>>>
>>>>>>    p.s. это не важно, но sql nfrjq
>>>>>>    $ref_source_data->{get_cnt_load_log}='
>>>>>>    SELECT   COUNT (time_stamp) cnt
>>>>>>     FROM   my_table,
>>>>>>            (SELECT   TO_DATE (?, 'yyyy-mm-dd') + 2 cd FROM DUAL) dt
>>>>>>     WHERE   time_stamp BETWEEN dt.cd AND dt.cd + 1
>>>>>>    ';
>>>>>>    --
>>>>>>    Nikolay Mishin
>>>>>>    --
>>>>>>    Moscow.pm mailing list
>>>>>>    moscow-pm на pm.org | http://moscow.pm.org
>>>>>   --
>>>>>   Sergiy Borodych
>>>>>   --
>>>>>   Moscow.pm mailing list
>>>>>   moscow-pm на pm.org | http://moscow.pm.org
>>>>  --
>>>>  Nikolay Mishin
>>>>
>>>>  --
>>>>  Moscow.pm mailing list
>>>>  moscow-pm на pm.org | http://moscow.pm.org
>>>  --
>>>  Nikolay Mishin
>>>  --
>>>  Moscow.pm mailing list
>>>  moscow-pm на pm.org | http://moscow.pm.org
>>  --
>>  Moscow.pm mailing list
>>  moscow-pm на pm.org | http://moscow.pm.org
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org

--
Nikolay Mishin


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