here is a small example of two call back functions and their use, please also see the module's documentation at CPAN.org, as well as Michael Peppler's site for more in depth information http://mbay.net/~mpeppler/Sybperl/article.html.
You will likely want much more in depth error management than this but for a start... #!/usr/bin/perl -w use strict; use Sybase::CTlib; #---SNIP----# # # Callbacks for CT Lib messages # sub ClientCallBack() { my ($M_HNDL_LAYER, $M_HNDL_ORIGIN, $M_HNDL_SEVERITY, $M_HNDL_NUMBER, $M_HNDL_MESSAGE, $M_HNDL_OSMESSAGE, $M_HNDL_DBHANDLE) = @_; if($M_HNDL_SEVERITY > 10) { print STDERR "ERROR: $M_HNDL_NUMBER, MESSAGE: $M_HNDL_MESSAGE\n"; } CS_SUCCEED; } sub ServerCallBack { my ($S_HNDL_DBHANDLE, $S_HNDL_NUMBER, $S_HNDL_SEVERITY, $S_HNDL_STATE, $S_HNDL_LINE, $S_HNDL_SERVER, $S_HNDL_PROC, $S_HNDL_MESSAGE) = @_; if($S_HNDL_SEVERITY > 10) { print STDERR "ERROR: $S_HNDL_NUMBER, MESSAGE: $S_HNDL_MESSAGE\n"; } CS_SUCCEED; } # # Usage example: # sub CheckStorage { my ($SERVER,$DATABASE) = @_; ct_callback(CS_CLIENTMSG_CB, \&ClientCallBack); ct_callback(CS_SERVERMSG_CB, "ServerCallBack"); my $CONNECTION = Connect($SERVER); $CONNECTION->ct_sql("exec dbccdb..sp_dbcc_deletehistory"); $CONNECTION->ct_sql("dbcc checkstorage($DATABASE)"); } sub Connect() { my ($SERVER) = @_; my $PASSWORD = sorryCharlie; my $USERID = 'sa'; my $dbHandle = Sybase::CTlib->ct_connect($USERID , $PASSWORD ,$SERVER); return($dbHandle); } sub RunCheck { my ($SERVER,$DATABASE ) = @_; chomp($SERVER); chomp($DATABASE); CheckStorage($SERVER,$DATABASE); } RunCheck('jupiter','dba'); ###END### HTH, George "Kanchana Weerasinghe" <[EMAIL PROTECTED]> wrote in message [EMAIL PROTECTED]">news:[EMAIL PROTECTED]... > I'm using CTLib to perform queries on sybase database. > > How do I catch errors such as database intergrity constraints etc? > Thanks in advance. > > -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]