AndyH has asked for the wisdom of the Perl Monks concerning the following question:

Tie-DBI 0.86 fails 45 out of 49 tests.

This is both under Perl 5.8.0 (on a Debian Woody box with DBI 1.34) and under Perl 5.6.1 (on a SuSE 8.0 box with DBI 1.32). On the Perl 5.8.0 box, one of the error messages says
Constant subroutine __need_size_t redefined at /usr/lib/perl/5.8.0/stddef.ph line 131
which is slightly worrying. Other error msgs are, e.g. Syntax error in select statement (create table PData).

Anyone know anything about this?

Is it a problem with some change in DBI since Tie-DBI was last updated?

Cheers
AndyH

  • Comment on Tie-DBI fails tests under Perl 5.6.1 and Perl 5.8.0

Replies are listed 'Best First'.
Re: Tie-DBI fails tests under Perl 5.6.1 and Perl 5.8.0
by PodMaster (Abbot) on Mar 03, 2003 at 09:30 UTC
    Yeah, cpan-testers know about this. http://testers.cpan.org/search?request=dist&dist=Tie-DBI

    DBI has changed quite a few times, so that is bound to be partly responsible (the other part is lack of maintenance -- LDS just isn't maintaining Tie-DBI).

    I wouldn't waste my time with Tie::DBI.


    MJD says you can't just make shit up and expect the computer to know what you mean, retardo!
    I run a Win32 PPM repository for perl 5.6x+5.8x. I take requests.
    ** The Third rule of perl club is a statement of fact: pod is sexy.

      Thanks for this.

      I only wanted it because Template-Toolkit uses it as its method of getting at DBI data.
      I'll just continue using my yucky "select * and stuff it into a hash" approach ...

      A.

        The DBI plugin (which I recommend you avoid like the plague since putting SQL in the middle of your HTML is a bad practice) can optionally use Tie::DBI, but does not require it. Tie::DBI is pretty much the slowest way you can access DBI data. You'll be much better off if you simply write the SQL.
        Is it maybe possible for you to model your data using Class::DBI derived classes? This way, you can avoid writing any SQL unless necessary, and you could just pass a couple objects to your templates.

        Makeshifts last the longest.