PEPPLER.ORG
Michael Peppler
Sybase Consulting
Menu
Home
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
Freeware
Sybperl
Sybase::Simple
DBD::Sybase
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
FAQs
Sybase on Linux FAQ
Sybperl FAQ
Personal
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: "Barlow, Ed" <ebarlow at mlp dot com>
Subject: DBD::Sybase and historical server
Date: Mar 24 2005 6:29PM

I am having a rough time connecting to my historical server using DBI
and am wondering if it is possible. The issue boils down to 

 

a)    in 1.04 DBD::Sybase trace reveals an "select @@version" and "Begin
Tran DBI" -> neither of which are supported statements. This results in
"user api layer: external error: This routine cannot be called until all
fetchable results have been completely processed.".  Once screwed up,
the connection seems to never recover and I get the same messages for
all further queries.

 

b)     In 1.05 I seem to be having separate issues, perhaps because im
unused to the syb_chained_txn option to DBI->connect, but I have tried
all combinations I can think of.  Specifically I am getting 

 

"No SRV_OPTION handler installed.OpenClient message: LAYER = (1) ORIGIN
= (1) SEVERITY = (1) NUMBER = (183)

Server SYBHIST, database Message String: ct_options(): user api layer:
external error: An error was returned from the server while setting the
option

s, check the server message for details."

 

This looks like there is some implicit server interrogation going on
which open server does not support. I have two questions.  Firstly,
should I just bag it and run an isql from perl to do the connectivity?
Secondly, will I have similar issues when I start working on Sybase
IQ???  Is DBD::Sybase not right for IQ - and if not what (besides
DBD::ODBC) should I be using...

 

Cheers

Ed Barlow

 

=====================

The code I am using is:

 

DBI->trace(2);

my($rc) =
DBI->connect("dbi:$type:$HIST_SERVER",$LOGIN,$PASSWORD,{RaiseError=>0,Pr
intError=>0,AutoCommit=>1});

 

I also try adding syb_chained_txn=>1