Re: No line number with RaiseError in DBD::Sybase



On Thu, Jun 19, 2008 at 1:53 PM, Tim Bunce <Tim.Bunce@xxxxxxxxx> wrote:
On Wed, Jun 18, 2008 at 02:14:06PM -0700, Douglas Wilson wrote:
With RaiseError or PrintError set, if DBD::Sybase throws an error, the
error message does not indicate what line number of the program that the
error was on ... or what program/module that the error was in.

I'd guess that that's because sybase error messages tend to end with a
newline character.

Hopefully that's a simple fix for Michael to get into the next release.
You could always send a patch to help out...

Once I found the magic spot, this is the simplest thing I can think of (there
is a lot of conditional concatenating in that function, and some of the
concatenations include newlines):

*** ../DBD-Sybase-1.08/dbdimp.c Thu Apr 19 11:31:19 2007
--- dbdimp.c Thu Jun 19 14:09:45 2008
***************
*** 545,550 ****
--- 545,551 ----
else
retcode = CS_SUCCEED;

+ sv_catpv(DBIc_ERRSTR(imp_dbh), " ");
return retcode;
} else {
if(srvmsg->msgnumber) {
.



Relevant Pages

  • Re: Support
    ... Can you post this querystring? ... Do you have newline character in exception message? ... > the 'Parameter Name:' along with the error message. ...
    (microsoft.public.dotnet.framework.aspnet.security)
  • Re: No line number with RaiseError in DBD::Sybase
    ... error message does not indicate what line number of the program that the ... is a lot of conditional concatenating in that function, ... retcode = CS_SUCCEED; ... Sybase DBA/Developer - TeamSybase: http://www.teamsybase.com ...
    (perl.dbi.users)