Skip to Content.
Sympa Menu

freetds - [freetds] insert varchar/text fields limited to max 80 characters

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: Dirk Koopman <freetds AT tobit.co.uk>
  • To: freetds AT lists.ibiblio.org
  • Subject: [freetds] insert varchar/text fields limited to max 80 characters
  • Date: Thu, 10 Feb 2005 17:32:27 +0000

Environment:

MS-SQL 2003, TDS version 8.0, freetds 0.62.4, perl DBD::ODBC and DBI
(current CPAN versions).

doing something like:-

my $sth = $dbh->prepare("insert into SBOL [XDESC_C] values(?)");
my $a =
"soooooooooooooooooooooooooooooooooooommmmmmmmmmmmmmmmmmmmmmmmmmmmmeeeeeeeeeeeeeeeeeeeeeeeeeeeeevvvvvvvvvvvvvvvvvvery-long-string";
$sth->execute($a);

will only cause the first 80 characters of $a into SBOL.XDESC_C.

It does not seem to matter whether XDESC_C is declared as varchar(1000)
or text (we would prefer text). All varchar fields with length > 80 and
text fields have the data chopped at 80 characters.

Tried all the obvious things like:-

$dbh = DBI->connect('dbi:ODBC:cpa', $cpauser, $passwd,
{
RaiseError=>1, AutoCommit=>0,
LongReadLen=>64*1024, LongTruncOk=>0,
ChopBlanks=>1,
} );


The same code, but running direct to a MySQL or Pg database (with
different DBI dsn obviously) work just as expected.

Any pointers?

Dirk







Archive powered by MHonArc 2.6.24.

Top of Page