|
|
sybperl-l Archive
Up Prev Next
From: "Cumming, Joe" <Joe dot Cumming at citadelgroup dot com>
Subject: Problem with DBD::Sybase using Sybase IQ
Date: Mar 23 2005 2:17PM
Hello,
I have a problem running execute() in DBD::Sybase when it has bind
parameters.
The following code
my $sqlstmt =<<'EOST';
INSERT INTO creditqr.Tenor (MartModifiedID, MartSnapDate, ShortName,
Tenor, TenorID)
VALUES (?,?,?,?,?);
EOST
my $stmt = $dbi->prepare($sqlstmt);
my @values = ('jc', "2005-02-28", "Test", 100, 500);
$stmt->execute(@values);
Produces the error:
DBD::Sybase::st execute failed: Server message number=21 severity=14
state=0 line=0 text=ASA Error -1000187: Unable to implicitly convert
column 'MartModifiedID' to datatype (varchar) from datatype (integer).
* (db_sqlins.cxx 10136) at dbitst.pl line 16.
However, the code
my $sqlstmt =<<'EOST';
INSERT INTO creditqr.Tenor (MartModifiedID, MartSnapDate, ShortName,
Tenor, TenorID)
VALUES = ('jc', "2005-02-28", "Test", 100, 500);
EOST
my $stmt = $dbi->prepare($sqlstmt);
$stmt->execute();
works fine.
Has anyone come across anything similar and know of a fix?
Thanks,
Joe
|