I am having trouble with some code Ive produced to connect to a database, read in a row of data and assign each column to a variable. Sample code:
$dbi = DBI->connect('Blah', 'Blah', 'Blah', 'ODBC'); $dbistmt = $dbi->prepare(" SELECT * FROM MyTable" ); $dbistmt->execute; while(@publication_record = $dbistmt->fetchrow()){ last if $publication_record[0]=~/^$PublicationId$/ } $dbistmt->finish; $dbi->disconnect; $Pu_strID = $publication_record[0]; $Pu_PuStOp_strID = $publication_record[1]; $Pu_PuTy_strID = $publication_record[2]; $Pu_strName = $publication_record[3]; etc..
The variables I am using ($Pu_strID, $Pu_PuStOp_strID, etc..) are taken from the column names themselves (Pu_strID, Pu_PuStOp_strID, etc..). This has been working well until recently. A coworker added a new feild betwen the 0 and 1st columns and now $publication_record[2] and $publication_record[3] are not what I was expecting. I would like to avoid this in the future. How can I say to sql/dbi/whatever to grab the data from the column named "Pu_strName" and assign it to the $Pu_strName variable, regardless of where the Pu_strName column is? (hope at least some of this makes any sense at all)

In reply to Database Problems by Anonymous Monk

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.