Cheers Monks. I am a tad reluctant to post this question as it is only partially a Perl question. However, I think the primary focus is upon the Perl portion of the equation.

I maintain a large MySQL database and receive monthly updates in DBF file format. Currently, I use the DBD::XBase and DBI modules. For XBase I read the update record (60+ fields/columns) using get_record_as_hash() and for MySQL I search for an existing entry and use fetchrow_hashref() to read the row. I then compare the columns using the column names as keys.

It works but is ugly, slow, and not very elegant. I am looking for something with a bit more panache with regard to comparing records. I've read gmax's DBI Recipes with interest but none of them appear at first blush to be good fits.

Thank you in advance!


In reply to Comparing DBI records by parser

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.