$persent_load_sql <--- невалидный английский детектед! Пыщь лучиком ненависти.
On Thu, Dec 15, 2011 at 5:05 PM, Андрей П. Ковбович <[email protected]> wrote: > http://www.books.ru/books/programmirovanie-na-perl-dbi-8193/ > > 15 декабря 2011 г. 16:38 пользователь Nikolay Mishin <[email protected]> написал: >> Да и все рекомендую читать рецепты для DBI >> http://www.perlmonks.org/?node_id=284436 !!! >> >> 15.12.2011, 15:56, "Nikolay Mishin" <[email protected]>: >>> Да, круто, работает, я вроде использовал, но потом забыл, >>> но вопросы , как оказалось, задавать полезно >>> >>> my $cnt_today = $dbh->selectrow_array( >>> $ref_source_data->{get_cnt_load_log}, >>> {}, $cob_date ); >>> Всем спасибо,работает, заодно 30% кода модуля почистилось;)) >>> >>> 15.12.2011, 15:29, "Sergiy Borodych" <[email protected]>: >>> >>>> Посмотри в сторону selectrow_array >>>> >>>> my ($count) = $dbh->selectrow_array( $statement, {}, @bind_params ); >>>> >>>> Да вообще посмотри документацию DBI - там много полезных методов ;) >>>> >>>> 2011/12/15 Nikolay Mishin <[email protected]>: >>>>> 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 >>>>> [email protected] | http://moscow.pm.org >>>> -- >>>> Sergiy Borodych >>>> -- >>>> Moscow.pm mailing list >>>> [email protected] | http://moscow.pm.org >>> >>> -- >>> Nikolay Mishin >>> >>> -- >>> Moscow.pm mailing list >>> [email protected] | http://moscow.pm.org >> >> -- >> Nikolay Mishin >> -- >> Moscow.pm mailing list >> [email protected] | http://moscow.pm.org > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
