From: "Jenda Krynicky" <[EMAIL PROTECTED]> > From: "Jeff Urlwin" <[EMAIL PROTECTED]> > > It could be a bug. Can you wrap up a quick test case and I'll trace > > it through? > > > > Regards, > > > > Jeff > > Sorry for the delay. > > #!perl > use DBI; > > my $PROC = <<'*END*'; > ... > *END* > > $db = DBI->connect('dbi:ODBC:xxxx', 'xxx', 'xxx', > {PrintError => 0,RaiseError => 1,LongReadLen => 65536,AutoCommit => > 1}); > > $db->do($PROC); > > eval{ > { > my ($JobCity, $JobState, $JobCountry, $JobZIP); > # this one returns just one char in each output variable in the > first call # my ($JobCity, $JobState, $JobCountry, $JobZIP) = > ('','','',''); > # this one returns just one char in each output variable in the > first call # my ($JobCity, $JobState, $JobCountry, $JobZIP) = ( " "x > 50, " "x 50, " ", " "x 5); # my ($JobCity, $JobState, $JobCountry, > $JobZIP) = ("\0" x 50, "\0" x 50, "\0" x 2, "\0" x 5, ); > # the two above work fine > # my ($JobCity, $JobState, $JobCountry, $JobZIP) = ( " "x 3, " "x 3, > " ", " "x 3); > # my ($JobCity, $JobState, $JobCountry, $JobZIP) = ( " ", " ", " ", > " "); > # it's strange but these two work fine > ... > > If I do not initialize the variables or initialize them to '' then the > first call returns just the first characters of the return values, in > all other cases it works correctly. The second and following calls > work fine, even if the values are longer than the ones returned > before.
Any news? I just found out that it breaks even if the stored procedure returns some nulls. It returns nulls once and the following calls all return just the first character. Thanks, Jenda ===== [EMAIL PROTECTED] === http://Jenda.Krynicky.cz ===== When it comes to wine, women and song, wizards are allowed to get drunk and croon as much as they like. -- Terry Pratchett in Sourcery