http://qs321.pair.com?node_id=571423


in reply to Bind Parameter Problem with DBD::Sybase and FreeTDS

I recommend using DBD::ODBC with iodbc and freetds instead.

Note that freetds has to be compiled for iodbc, and DBD::ODBC does as well. Here is the install sequence I used recently:

# Install libiodbc wget http://www.iodbc.org/downloads/iODBC/libiodbc-3.52.3.tar.gz && tar -xzf libiodbc-3.52.3.tar.gz && cd libiodbc-3.52.3 && ./configure && make && make install # Install freetds wget ftp://ftp.ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stab +le.tgz tar -xzf freetds-stable.tgz && cd freetds-0.63 && ./configure -with-iodbc && make && make install # Configure odbc.ini echo "[pcas2006] Database=pcas2006 Server=10.10.10.164 TDS_Version=8.0 Port=1433 Driver=/usr/local/lib/libtdsodbc.so" > /etc/odbc.ini # install DBD::ODBC perl -MCPAN -e'get DBD::ODBC' && cd ~/.cpan/build/DBD-ODBC-1.13 && export ODBCHOME=/usr/local && perl Makefile.PL && make && make install
I found that DBD::ODBC also seemed to handle some binary data better - DBD::Sybase seemed to truncate the data in one case when \0 was in the data.
  • Comment on Re: Bind Parameter Problem with DBD::Sybase and FreeTDS - Try DBD::ODBC with iodbc and freetds instead
  • Download Code