Hi Rudy - thanks for the new release, and sorry for the delay getting back to you - bad week here in Scotland!

I got exactly the results you predicted - execute(0.4444) stores "0.4444" in the text field, whereas the call to bind_param with DBI::SQL_INTEGER, FLOAT and DOUBLE with the subsequent execute() all resulted in "0.44" being stored.

There was an unrelated development - I have an Ultra 5 running SuSE 7.3 for Sparc. I got some errors in "make test" when I installed v2.9002, although the perl Makefile and the make seemed to go fine. Please see below:

ultra5:~/tar/DBD-mysql-2.9002 # make test
PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib -I/usr/lib/perl5/5.6.1/sparc-linux -I/usr/lib/perl5/5.6.1 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/00base............ok
t/10dsnlist.........ok
t/20createdrop......ok
t/30insertfetch.....ok
t/40bindparam.......ok
t/40blobs...........ok
t/40listfields......ok
t/40nulls...........ok
t/40numrows.........ok
t/50chopblanks......ok
t/50commit..........ok, 14/30 skipped: No transactions
t/60leaks...........skipped test on this platform
t/ak-dbd............ok
t/akmisc............ok 346/351DBD::mysql::st execute failed: Table 'testac' already exists at blib/lib/Mysql.pm line 175.
t/akmisc............FAILED tests 45, 347
Failed 2/351 tests, 99.43% okay
t/dbdadmin..........ok
t/insertid..........ok
t/mysql.............FAILED test 24
Failed 1/68 tests, 98.53% okay
t/mysql2............FAILED test 2
Failed 1/37 tests, 97.30% okay
Failed Test Status Wstat Total Fail Failed List of Failed
--------------------------------------------------------------------------------
t/akmisc.t 351 2 0.57% 45, 347
t/mysql.t 68 1 1.47% 24
t/mysql2.t 37 1 2.70% 2
1 test and 14 subtests skipped.
Failed 3/18 test scripts, 83.33% okay. 4/765 subtests failed, 99.48% okay.
make: *** [test_dynamic] Error 29



I did have a hiccup installing MySQL - I tried to put on MySQL Max and had to take it off again because "architecture lacks fast mutexes" in the error logs, but 3.23.44 seems to be running OK. The perl Makefile.PL and make output are listed below:


ultra5:~/tar/DBD-mysql-2.9002 # perl Makefile.PL
I will use the following settings for compiling and testing:

cflags (mysql_config) = -I'/usr/include/mysql'
libs (mysql_config) = -L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lns
l -lm
nocatchstderr (default ) = 0
nofoundrows (default ) = 0
ssl (guessed ) = 0
testdb (default ) = test
testhost (default ) =
testpassword (default ) =
testuser (default ) =


To change these settings, see 'perl Makefile.PL --help' and
'perldoc INSTALL'.

Checking if your kit is complete...
Looks good
Using DBI 1.19 installed in /usr/lib/perl5/site_perl/5.6.1/sparc-linux/auto/DBI
Writing Makefile for DBD::mysql
ultra5:~/tar/DBD-mysql-2.9002 # make
cp lib/DBD/mysql/GetInfo.pm blib/lib/DBD/mysql/GetInfo.pm
cp lib/DBD/mysql/INSTALL.pod blib/lib/DBD/mysql/INSTALL.pod
cp lib/DBD/mysql.pm blib/lib/DBD/mysql.pm
cp lib/Bundle/DBD/mysql.pm blib/lib/Bundle/DBD/mysql.pm
cp lib/Mysql/Statement.pm blib/lib/Mysql/Statement.pm
cp lib/Mysql.pm blib/lib/Mysql.pm
cc -c -I/usr/lib/perl5/site_perl/5.6.1/sparc-linux/auto/DBI -I'/usr/include/mysq
l' -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_
BITS=64 -O2 -pipe -DVERSION=\"2.9002\" -DXS_VERSION=\"2.9002\" -fpic -I/usr/li
b/perl5/5.6.1/sparc-linux/CORE dbdimp.c
/usr/bin/perl -p -e "s/~DRIVER~/mysql/g" < /usr/lib/perl5/site_perl/5.6.1/sparc-
linux/auto/DBI/Driver.xst > mysql.xsi
/usr/bin/perl -I/usr/lib/perl5/5.6.1/sparc-linux -I/usr/lib/perl5/5.6.1 /usr/lib
/perl5/5.6.1/ExtUtils/xsubpp -typemap /usr/lib/perl5/5.6.1/ExtUtils/typemap mys
ql.xs > mysql.xsc && mv mysql.xsc mysql.c
Warning: duplicate function definition 'rows' detected in mysql.xs, line 291
cc -c -I/usr/lib/perl5/site_perl/5.6.1/sparc-linux/auto/DBI -I'/usr/include/mysq
l' -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_
BITS=64 -O2 -pipe -DVERSION=\"2.9002\" -DXS_VERSION=\"2.9002\" -fpic -I/usr/li
b/perl5/5.6.1/sparc-linux/CORE mysql.c
Running Mkbootstrap for DBD::mysql ()
chmod 644 mysql.bs
rm -f blib/arch/auto/DBD/mysql/mysql.so
LD_RUN_PATH="/usr/lib/mysql:/lib" /usr/bin/perl myld cc -shared -L/usr/local/li
b dbdimp.o mysql.o -o blib/arch/auto/DBD/mysql/mysql.so -L/usr/lib/mysql -lmy
sqlclient -lz -lcrypt -lnsl -lm
chmod 755 blib/arch/auto/DBD/mysql/mysql.so
cp mysql.bs blib/arch/auto/DBD/mysql/mysql.bs
chmod 644 blib/arch/auto/DBD/mysql/mysql.bs
Manifying blib/man3/DBD::mysql::INSTALL.3pm
Manifying blib/man3/DBD::mysql.3pm
Manifying blib/man3/Bundle::DBD::mysql.3pm
Manifying blib/man3/Mysql.3pm




Try this:
http://www.remotelinux.com/rlippan/DBD-mysql-2.9002.tar.gz

And let me know if you still see the problem with this version. In 2.9002
the default bind type uses quotes even when a number passed to
bind_param(), so I am betting that it will fix your problem.


Also, when you try the above, could you try this:


$c->bind_param(1, 0.4444, DBI::SQL_INTEGER);
$c->execute();
$c->bind_param(1, 0.5555, DBI::SQL_INTEGER);
$c->execute();

and let me know what happens? (should go back to the rounding)

Rudy

_________________________________________________________________
Hotmail messages direct to your mobile phone http://www.msn.co.uk/msnmobile



Reply via email to