That code can't possibly work! Consider:

my ($sth, $execu); if (!defined ($query)) { $sth->finish ();

$sth is declared, but not initialised. Then if $query is undefined $sth->finish () is called, which must fail with a "Can't call method "finish" on an undefined value at C:\Users\Peter\Delme~~\PerlScratch\noname.pl line 10. " error.

Working a little closer to your issue: passing a query as a string in this fashion without passing parameters for the execute () prevent you from using placeholders which probably means your code is susceptible to insertion attacks.

Which leads to: the code building the query knows which columns are used for the fetched data and has to deal with the returned rows so the problem isn't with the code you've shown - it's with the calling code.

BTW, always use strictures (use strict; use warnings; - see The strictures, according to Seuss).


True laziness is hard work

In reply to Re: DBI : Get Column name and Value in hash by GrandFather
in thread DBI : Get Column name and Value in hash by vinoth.ree

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.