Roger,

> -----Original Message-----
> From: Roger Perttu [mailto:[EMAIL PROTECTED]]
> Sent: Wednesday, August 21, 2002 12:59 PM
> To: [EMAIL PROTECTED]
> Subject: DBD::ODBC 0.45 beta better than 0.41?
>
>
> First, big thanks to Jeff Urlwin for developing DBD::ODBC, (for me) DBI
> would be useless without it.

You are welcome!

> I'm using SQL Server and DBD::ODBC 0.41 (because that's what I can get
> by ppm) I've read the change log and am wondering if the 0.45 release is
> better (more stable) than 0.41. I could write workarounds for the
> problems I find in 0.41 but I might be better of using the beta. Where
> can I get a binary (by ppm) release of 0.45? (I've got 0.41 from
> http://www.xmlproj.com/PPM/)

I can build a DBI and DBD::ODBC for you.  Take BOTH!.  The betas should be
much better, now.  Try getting the files from:
ftp://ftp.esoftmatic.com/outgoing/DBI

(I can't see that address while I'm behind the firewall, so e-mail me and
let me know...)

>
> I have the following problems:
>
> ______________________________
> 1. Return value from stored procedure truncated:
>
> $dbh->prepare('{?=call testPrc(?)}');
> ....
> {    $queryOutputParameters{$name} = $value || ' '; # notice: one space
>
>     $sth->bind_param_inout($i, \$queryOutputParameters{$name}, 30, {
> TYPE => $type });
> }
> ....
> $sth->execute();
>
> The procedure should return 111 but I get 1. If I add more spaces to
> $queryOutputParameters{$name} I'll get more data, ie five spaces gives
> me "111  ". It took me quite some time to figure this out. max_len (30)
> in bind_param_inout is ignored.

This should *definitely* be fixed.  If not, package up a small test script
and I'll run it, test it and post it here.


> ______________________________
> 2. multiple result sets, keys are not updated by fetchrow_hashref
> The first time I call testPrc (code below), I get this (which is
> expected):
> outputData $VAR1 = {
>           'some_data' => '1'
>         };
>
> outputData $VAR1 = {
>           'parameter1' => '11',
>           'some_more_data' => '3'
>         };
>
> The second time, I get this (should get the same result as the
> first time):
> outputData $VAR1 = {
>           'parameter1' => '1',
>           'some_more_data' => '3'
>         };
>
> outputData $VAR1 = {
>           'parameter1' => '11',
>           'some_more_data' => '3'
>         };
>
>
> ALTER PROCEDURE dbo.testPrc
> @parameter1 int = 22
> AS
>     select 1 as some_data
>     select isnull(@parameter1, 33) as parameter1, 3 as some_more_data
>
>     RETURN(@parameter1 + 1)
>
I'm not sure if this is fixed or not.  Again, if you can package up a quick
test script which creates any procedures/tables you need (self-contained, in
other words), I can look at it.

Regards,

Jeff


Reply via email to