http://www.perlmonks.org?node_id=1017243


in reply to Using 64 bit DBD with Sybase 15

Did "make test" work correctly?

If so, what do you mean by "weird" results?

Michael

Replies are listed 'Best First'.
Re^2: Using 64 bit DBD with Sybase 15
by Anonymous Monk on Feb 06, 2013 at 20:06 UTC
    Yes, the make test did work properly. By weird, I mean the date field (defined as date in the database), returns "Jan 4 2013 12:00am" as "Jan 4 2013". A field (defined as time in the database), returns "Jan 1 1900 5:00pm" as "5:00pm". In 32 bit, the dates return as "Jan 4 2013 12:00am" and "Jan 1 1900 5:00pm" respectively.
      Is this with the exact same version of OpenClient, with just the 32/64 bit difference?

      Because the 64bit data you get is more correct - and is also what I get with a 32bit 15.7 client:

      use strict; use DBI; my $dbh = DBI->connect('dbi:Sybase:server=foo', 'user, '***'); my $sth = $dbh->prepare("select convert(date, getdate()), convert(time +, getdate())"); $sth->execute; while(my $r = $sth->fetch) { print "@$r\n"; }
      which outputs:
      $ perl /tmp/date.pl Feb 7 2013 3:06PM
      And to me that's as it should be - you're asking for just the date, so no time portion is displayed, or just the time, and no date portion is displayed.

      This is with DBD::Sybase 1.14, btw.

      Michael

        It does seem more correct, but I don't believe it should require me to change the code? Shouldn't this be backward compatible?