Received: from punt.demon.co.uk by lion with SMTP (PP) id <17097-1@lion>;
          Thu, 24 Aug 1995 07:01:02 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 23 Aug 95 16:38:41 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa13874;
          23 Aug 95 17:38 +0100
Received: by gw.home.vix.com id AA08605; Tue, 22 Aug 95 23:51:29 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA08597; Tue, 22 Aug 95 23:51:22 -0700
Received: by mail.Germany.EU.net with SMTP (5.51:31/EUnetD-2.5.2.a) via EUnet 
          id IAA28032; Wed, 23 Aug 1995 08:53:11 +0200
Received: from MOIRA (EROS-MOIRA) by pr-wiesbaden.de (4.1/SMI-4.1) id AA13625;
          Wed, 23 Aug 95 08:59:50 +0200
Received: by MOIRA (4.1/SMI-4.1) id AA13412; Wed, 23 Aug 95 08:56:22 +0200
Date: Wed, 23 Aug 95 08:56:22 +0200
Message-Id: <9508230656.AA13412@MOIRA>
From: Horst Duchene - Patzschke + Rasp GmbH <horst@pr-wiesbaden.de>
To: perldb-interest@vix.com
Subject: help


help
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <17097-40@lion>;
          Thu, 24 Aug 1995 07:05:45 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 23 Aug 95 22:27:29 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa28952;
          23 Aug 95 23:27 +0100
Received: by gw.home.vix.com id AA18641; Wed, 23 Aug 95 09:55:19 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA18636; Wed, 23 Aug 95 09:55:16 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa29665;
          23 Aug 95 17:22 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa07361;
          23 Aug 95 17:19 +0100
Received: from ig.co.uk by lion id <13561-0@lion>;
          Wed, 23 Aug 1995 17:21:53 +0100
To: perldb-interest@vix.com, agw@mail.nerc-bas.ac.uk
Subject: Re: DBI-0.61
Date: Wed, 23 Aug 1995 17:21:53 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508231719.aa07361@post.demon.co.uk>


> From: Andrew G Wood <agw@mail.nerc-bas.ac.uk>
> 
> Well you have not heard from me for a few days ... my compiler has been
> off on holiday.  But as there seemed to be a few new versions flying
> around he could not wait to get back into it .....
> 
> cfe: Error: DBI.c, line 1411: Incompatible pointer type assignment (3.3.16.1, 3.5.4.1(21))
>         AV *av = (SV*)((XRV*)  (retsv)->sv_any )->xrv_rv ;
>         ----^
> 
> C'est la vie!
> 
"Fixed in the next release."

(I presume you know how to fix it in your copy - just cast to (AV*))

It's probably better for people to post these kind of compiler complaints
direct to me rather than the list. I'll bounce to the list if I think
it's of general interest or I need help.

Thanks.

> Andy.
>                                          *
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <17097-42@lion>;
          Thu, 24 Aug 1995 07:05:57 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 23 Aug 95 22:48:49 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa08795;
          23 Aug 95 23:48 +0100
Received: by gw.home.vix.com id AA07237; Wed, 23 Aug 95 07:10:46 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA07229; Wed, 23 Aug 95 07:10:42 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa12139;
          23 Aug 95 14:39 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id am08046;
          23 Aug 95 14:36 +0100
Received: from ig.co.uk by lion id <11055-0@lion>;
          Wed, 23 Aug 1995 14:12:22 +0100
To: Davide.Migliavacca@inferentia.it
Subject: Re: Proposed "extension": LONG RAW parameters in DBD::Oracle
Cc: perldb-interest@vix.com
Date: Wed, 23 Aug 1995 14:12:22 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508231436.am08046@post.demon.co.uk>


> From: Shari <Davide.Migliavacca@inferentia.it>
> 
> What I want to do:
>  Insert a very big BLOB in a LONG RAW column in an Oracle table
> How:
>  implementing support for the LONG VARRAW datatype in   
>  bind_param/dbd_bind_ph
> Why:
>  Because I like to be able to do it :-)
> 
> Apparently, the most general way of doing it is by using a LONG VARRAW,   
> which is a buffer with 4 bytes (sb4) prepended to specify the length of   
> data. In fact, using the length parameter of the obdrn calls one may be   
> limited to 64k (according to OCI docs).

I've avoided using the VAR types since the need to fiddle with the
4 byte length prefix complicates matters (and will mean that the,
possibly very big, value string would have to be copied).

> To use a LONG VARRAW, in the obdrn call, type is 95 (BTW, in   
> ~oracle/rdbms/demo/ocidfn.h there are symbolic #defines SQLT_xxx for   
> Oracle external datatypes)

But they aren't there in earlier version of Oracle 7.

> and the length parameter should be specified as -1.
> 
> Using bind_param this should become a trivial :-) modification to   
> dbd_bind_ph in dbdimp.c.
> 
Are you *desparate* for >64k blobs?

> There is one additional problem (which of course may be only my scarce   
> knowledge of Perl).
> Using a LONG VARx in C/C++ generally means using a large buffer which is   
> then accessed (when filling data in) starting at offset sizeof(sb4) so   
> that no big block moves are necessary aftewards.
> Is it possible to do something like this in Perl?

Not _in_ perl. Perl SV's are not organised that way.

> If yes, enlighten me (please). If not, a programmer will generally do the   
> big block copy leading to inefficiency and memory waste (we're talking of   
>  -maybe- megabytes).
> 
Exactly.

> Any suggestion greatly appreciated.
> 
>  Davide Migliavacca
>  (davide.migliavacca@inferentia.it)
> 
Tim. 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <17097-44@lion>;
          Thu, 24 Aug 1995 07:06:11 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 23 Aug 95 22:58:51 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa13341;
          23 Aug 95 23:58 +0100
Received: by gw.home.vix.com id AA05568; Wed, 23 Aug 95 06:46:37 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA05563; Wed, 23 Aug 95 06:46:32 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa12125;
          23 Aug 95 14:39 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ai08046;
          23 Aug 95 14:36 +0100
Received: from ig.co.uk by lion id <10357-0@lion>;
          Wed, 23 Aug 1995 13:02:00 +0100
To: perldb-interest@vix.com, Davide.Migliavacca@inferentia.it
Subject: RE: (Little) Bug in DBD::Oracle 0.23, Oracle.xs
Date: Wed, 23 Aug 1995 13:02:00 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508231436.ai08046@post.demon.co.uk>


> From: Shari <Davide.Migliavacca@inferentia.it>
> 
> >From Tim Bunce:
> 
> >> From: Shari <Davide.Migliavacca@inferentia.it>
> >>
> >> There is a bug in _execute in file Oracle.xs (starting at line 179 in   
> >> the 0.23 sources) which forces all parameters to being named :pn with n   
> >> being its position,
> 
> > It's not a bug.
> 
> Sorry, I must disagree. It IS a bug in that ? placeholders are not   
> handled correctly.
> In fact, they are transformed in :n, while _execute looks for :pn and   
> doesn't find them.

My apologies, I missunderstood. Your original message was not as
clear as this and I was reading in a hurry. It's fixed in next release.

> >> I am very interested in the bind_param call since it's one of the
> >> features I terribly need (working most of my time with BLOBs, that is   
> >> LONG RAW which are not usable with the current implementation of
> >> dbd_bind_ph).
> 
> > In what way 'not usable'?
>
>       In that the automatic type binding in dbd_bind_ph (see my other   
> message to the mailing list) uses only type 1 and 8. To use LONG RAW you   
> need type 24, which is not easily deductible from a variable. RAW and   
> CHAR get a very diffrerent treatment in Oracle. so you will not be able   
> to bind a LONG variable to a LONG RAW column. So, I need a way to tell   
> DBI/DBD to bind as a LONG RAW (or a VARBINARY or whatever the name would   
> be). I used to work on SQL Server some time ago and if I'm not wrong, it   
> too required different types when using a BLOB (non-interpreted byte)   
> column as opposed to a very large (but still of string type) column.
> The ridiculous thing is that according to the OCI manual, you SHOULD be   
> able to bind a LONG to a LONG RAW, the obndrv goes fine, but in execution   
> Oracle screams at you.
> 
Even if the string contains only pairs of hex chars?

> > If I don't know I can't fix it. (Then again, if I do know I might not
> > fix it, or be able to fix it, anyway :-)
>
> Sorry, I broke the problem in two, but my messages to the mailing list   
> come back after a very long time (dunno if it happens only to me or to   
> others also).
> 
Yes, the list does seem very slow at the moment.

> >> I have seen it mentioned many times in the mailing list
> >> messages, but didn't find it in DBI nor in the specs. Is it a proposed   
> >> enhancement?
> >>
> > Yes.
> > I'll look into it again. Nag me from time to time if it doesn't show up.
> 
> I suppose I'll have to wait for a DBI 0.7 specs announcement?
> 
I implemented it that night. It's in the latest release:

	$sth->bind_param(":foo", $value, { ora_type => 24 });

Happy ?

:-)

It's untested since it was 7am when I released it and I knew you'd do
a better job of testing it than I would :-) I look forward to you comments.

NOTE: I'll take this opportunity to remind people that all interfaces
outside the Oraperl emulation are very much alpha and liable to change!

Tim. 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <17097-46@lion>;
          Thu, 24 Aug 1995 07:06:26 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 23 Aug 95 23:05:21 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa16240;
          24 Aug 95 0:05 +0100
Received: by gw.home.vix.com id AA06092; Wed, 23 Aug 95 06:54:35 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA06087; Wed, 23 Aug 95 06:54:33 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa12097;
          23 Aug 95 14:39 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ac08046;
          23 Aug 95 14:36 +0100
Received: from ig.co.uk by lion id <09637-0@lion>;
          Wed, 23 Aug 1995 11:53:13 +0100
To: perldb-interest@vix.com, jliptak@coefmd3.uswc.uswest.com
Subject: Error: no tab in DBD::_::st::fetchrow
Date: Wed, 23 Aug 1995 11:53:13 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508231436.ac08046@post.demon.co.uk>


> From: John Liptak <jliptak@coefmd3.uswc.uswest.com>
> 
> I've never gotten into the perl MakeMaker stuff, what's the problem here?
> 
> I am trying to skip from 0.58, I've been busy with other things :-(
> 
> /usr/local/lib/perl5/ExtUtils/typemap DBI.xs >DBI.tc && mv DBI.tc DBI.c
> Error: no tab in DBD::_::st::fetchrow argument declaration '    SV *sth'

Rats! The xsubpp I'm using is a more recent, and more forgiving, one than
the 5.001m standard.

I'll release a new DBI (and DBD if that also has this problem).

Sorry for the hassle.

> John

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <17097-51@lion>;
          Thu, 24 Aug 1995 07:06:54 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 24 Aug 95 00:03:26 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa09634;
          24 Aug 95 1:03 +0100
Received: by gw.home.vix.com id AA04674; Wed, 23 Aug 95 13:36:43 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA04669; Wed, 23 Aug 95 13:36:36 -0700
Received: from kukini.cs.bris.ac.uk by dira.bris.ac.uk with SMTP (PP);
          Wed, 23 Aug 1995 21:36:16 +0100
Received: from kiha by kukini.compsci.bristol.ac.uk id aa21422;
          23 Aug 95 20:39 GMT
To: perldb-interest@vix.com
Subject: Compiling Oraperl for SunOS
Date: Wed, 23 Aug 95 21:36:09 +0100
From: ally@cs.bris.ac.uk
Message-Id: <9508232039.aa21422@uk.ac.bristol.compsci.kukini>

Despite searching through the ftp.demon.co.uk archives and
this interest group's postings, I still cannot persude
Oraperl to compile.

SYSTEM
======
uname -a gives:
	SunOS kiha 4.1.3_U1 3 sun4m

	Oracle7 Server Release 7.0.13.6.0
	Perl v4.036
	Oraperl v2.4 

My initial error was:
/home/msc/94/ally/bin/perl-4.036/perl.h", 
line 554: redeclaration of sprintf
*** Error code 1
make: Fatal error: Command failed for target `oracle.o'

So I commented out those lines in perl.h!

My current makefile is based on the one from the depths
of Oracle's server with relevent alterations as given in
	oracle7.note7.oracle71 and
	oracle7.note9.oracle71.


# Makefile for Oraperl and Coraperl

# Change these to your ORACLE installation directory and Perl
# source directory
#
ORACLE_HOME	= /home/kiha/oracle
SRC		= /home/msc/94/ally/bin/perl-4.036

# Oracle Definitions, copied from $(ORACLE_HOME)/c/demo/proc.mk
# ALL_ORA_LIBS is the only entry that the Makefile actually uses;
# change it to whatever you need to link Pro*C programs
#
# Prototyped from Oracle for Sun 7.1.3 release

# module to be used for linking with non-deferred option
NDFOPT= $(ORACLE_HOME)/rdbms/lib/kpundf.o

# flag for linking with non-deferred option (default is 
# deferred mode)
NONDEFER=false

OTHERLIBS=`cat $(ORACLE_HOME)/rdbms/lib/sysliblist` $(MLSLIBS)

CC=/usr/5bin/cc

LDFLAGS=-Bdynamic -L$(LIBHOME)
# KA added LDFLAGS

LIBCORE=$(LIBHOME)/libcore.a
LIBCV6=$(LIBHOME)/libcv6.a
LLIBCORE=-lcore
LLIBCV6=-lcv6
LLIBNLSRTL=-lnlsrtl

CLIBS=$(OTHERLIBS)
LIBHOME=$(ORACLE_HOME)/lib
LIBOCIC= $(LIBHOME)/libocic.a

LLIBORA= -lora
OSNTAB= $(LIBHOME)/osntab.o
SQLNETLIBS= -lsqlnet

CORELIBS= $(LLIBNLSRTL) $(LLIBCV6) $(LLIBCORE) $(LLIBNLSRTL)
	$(LLIBCV6) \
          $(LLIBCORE)

TTLIBS= $(OSNTAB) $(SQLNETLIBS) $(LLIBORA) $(LIBPLSHACK)
	$(SQLNETLIBS) \
 $(LLIBORA) $(CORELIBS) $(LDLIBS) $(CLIBS)

# libraries for linking oci programs
# Deferred
OCILDLIBS= $(LIBOCIC) $(TTLIBS) $(LLIBCORE)
# Non-deferred
#OCILDLIBS= $(ORACLE_HOME)/rdbms/lib/kpundf.o $(LIBOCIC) 
		$(TTLIBS) $(LLIBCORE)

MISSEDLIBS      = $(ORACLE_HOME)/lib/libnlsrtl.a \
                  $(ORACLE_HOME)/lib/libcore.a \
                  $(ORACLE_HOME)/lib/libcv6.a \
                  $(ORACLE_HOME)/lib/libnetv2.a \
                  $(ORACLE_HOME)/lib/libnlsrtl.a \
                  $(ORACLE_HOME)/lib/libnetwork.a \
                  $(ORACLE_HOME)/lib/libcore.a 

ALL_ORA_LIBS=$(OCILDLIBS) $(MISSEDLIBS)

#OTHERLIBS	= `cat $(ORACLE_HOME)/rdbms/lib/sysliblist`
#CLIBS		= $(OTHERLIBS)
#OCILIB		= $(ORACLE_HOME)/rdbms/lib/libocic.a
#NETLIBS		= $(ORACLE_HOME)/rdbms/lib/osntab.o \
#			$(ORACLE_HOME)/rdbms/lib/libsqlnet.a 
#ORALIBS		= $(ORACLE_HOME)/rdbms/lib/libora.a

#ALL_ORA_LIBS	= $(CLIBS) $(OCILIB) $(NETLIBS) $(ORALIBS)

# Perl Definitions, taken from $SRC/usub/Makefile
# Don't include the curses libraries here - they go in
# CURSELIB
#
GLOBINCS	= 
LOCINCS		= 
LIBS		= `. $(SRC)/config.sh; echo $$libs`

# Oraperl Definitions

# Set DEBUG to -DDEBUGGING, -DPERL_DEBUGGING or leave blank
(see orafns.h)
# If it is not blank, uncomment the definition of DBUG_O
#
DEBUG		= -DDEBUGGING
DBUG_O		= dbug/dbug.o

This gave the error:

oraperl> make -f Makefile oraperl
....
....
cc   -target sun4 -c  dbug.c
        (back to main directory)
/usr/5bin/cc -o oraperl /home/msc/94/ally/bin/perl-4.036/uperl.o oracle.o orafns.o getcursor.o colons.o debug.o strtoul.o usersub.o dbug/dbug.o                      \
      -lm /home/kiha/oracle/lib/libocic.a /home/kiha/oracle/lib/osntab.o -lsqlnet -lora  -lsqlnet  -lora -lnlsrtl -lcv6 -lcore -lnlsrtl -lcv6  -lcore  `cat /home/kiha/oracle/rdbms/lib/sysliblist`  -lcore /home/kiha/oracle/lib/libnlsrtl.a  /home/kiha/oracle/lib/libcore.a  /home/kiha/oracle/lib/libcv6.a  /home/kiha/oracle/lib/libnetv2.a  /home/kiha/oracle/lib/libnlsrtl.a  /home/kiha/oracle/lib/libnetwork.a  /home/kiha/oracle/lib/libcore.a `. /home/msc/94/ally/bin/perl-4.036/config.sh; echo $libs`
ld: -lsqlnet: No such file or directory
*** Error code 4
make: Fatal error: Command failed for target `oraperl'




Although the end of the Makefile should not be changed,
adding $(LDFLAGS) to the oraperl: definition gives a different
error.

oraperl: $(SRC)/uperl.o $(OOBJS)
	$(CC) $(LDFLAGS) -o oraperl $(SRC)/uperl.o $(OOBJS) \
	      -lm $(ALL_ORA_LIBS) $(LIBS)

This gives:
....
....
ld: -lnlsrtl: No such file or directory
*** Error code 4
make: Fatal error: Command failed for target `oraperl'


If anyone has made it to the end, please mail me any
suggestions.  I've tried our systems administrator and he's
stumped as well!

Thanks,
Karim. <K.Ally@bristol.ac.uk>
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <17097-52@lion>;
          Thu, 24 Aug 1995 07:07:02 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 24 Aug 95 00:03:27 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa09641;
          24 Aug 95 1:03 +0100
Received: by gw.home.vix.com id AA13760; Wed, 23 Aug 95 08:48:51 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA13754; Wed, 23 Aug 95 08:48:49 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.11/8.6.11) with SMTP id KAA53791 
          for <perldb-interest@vix.com>; Wed, 23 Aug 1995 10:48:41 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA02788;
          Wed, 23 Aug 1995 10:48:35 -0500
From: mhm@austin.ibm.com
Message-Id: <9508231548.AA02788@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: Creating a statement handle (sth) on the C side?
Date: Wed, 23 Aug 95 10:48:12 -0500


  Ok, I have (I think) the latest versions of DBD and DBI and am totally
confused about how to create a sth while executing C code.

  Quick synopsis, even when executing SQL directly, I must still
prepare the statement, so I need a sth to hand my equivalent of
dbd_db_prepare(sth,statement).

Pointers, explicit directions, anything....please.

Thanks.

Mike

------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <17097-53@lion>;
          Thu, 24 Aug 1995 07:07:09 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 24 Aug 95 00:07:26 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa11119;
          24 Aug 95 1:06 +0100
Received: by gw.home.vix.com id AA27575; Wed, 23 Aug 95 11:55:27 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA27570; Wed, 23 Aug 95 11:55:26 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.11/8.6.11) with SMTP id NAA143134;
          Wed, 23 Aug 1995 13:55:24 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA18294;
          Wed, 23 Aug 1995 13:55:22 -0500
From: mhm@austin.ibm.com
Message-Id: <9508231855.AA18294@dax.austin.ibm.com>
To: Tim.Bunce@ig.co.uk
Cc: perldb-interest@vix.com
Subject: Problems with DB2
Date: Wed, 23 Aug 95 13:55:22 -0500


Ok, using DBI-0.60 and running the following script:

  #!/usr/local/bin/perl -w

  # Base DBD Driver Test

  print "1..$tests\n";

  require DBI;
  print "ok 1\n";

  import DBI;
  print "ok 2\n";

  $DBI::dbi_debug=1;
  $switch = DBI->internal;
  (ref $switch eq 'DBI::dr') ? print "ok 3\n" : print "not ok 3\n";

  $drh = DBI->install_driver('DB2');
  (ref $drh eq 'DBI::dr') ? print "ok 4\n" : print "not ok 4\n";

  print "ok 5\n" if $drh->{Version};

  BEGIN { $tests = 5 }
  exit 0;
  # end.

The question is did I miss a subroutine/function or implement one
incorrectly, most likely. Or does this happen with DBD::Oracle?

|> 1..5
|> ok 1
|> ok 2
|> ok 3
|> DBI->install_driver DBI DB2
|>  at test.pl line 17
|> DBI->install_driver(DB2) loaded
|> Had to create DBD::DB2::dr::imp_data_size unexpectedly at
|> /usr/local/lib/perl5/DBI.pm line 287.
|> DBI->install_driver(DB2) = DBI::dr=HASH(0x200767e0)
|> ok 4
|> ok 5
|> DBI::END
|> DBI::disconnect_all DBI
|> DBI::disconnect_all for 'DB2'
|> Attempt to free unreferenced scalar at /usr/local/lib/perl5/DBI.pm line 164.
|> 


Thanks.

Mike
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <17097-54@lion>;
          Thu, 24 Aug 1995 07:07:15 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 24 Aug 95 00:08:02 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa11508;
          24 Aug 95 1:07 +0100
Received: by gw.home.vix.com id AA20790; Wed, 23 Aug 95 10:26:02 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA20780; Wed, 23 Aug 95 10:25:47 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa28799;
          23 Aug 95 17:13 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa05932;
          23 Aug 95 17:10 +0100
Received: from ig.co.uk by lion id <13292-0@lion>;
          Wed, 23 Aug 1995 17:13:12 +0100
To: perldb-interest@vix.com
Subject: BIG NEWS
Cc: kejin@empress.com
Date: Wed, 23 Aug 1995 17:13:12 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508231710.aa05932@post.demon.co.uk>

Just when you thought things were progressing well and we all
had some idea where we are going ... things change!


*** What's changed?

Basically the arrival of the almost-completed SQL/CLI ISO standard
and corresponding ODBC v3.0.

The (new) CLI spec is rapidly gaining momentum within the industry.

Some database vendors (include Infomix, IBM, Watercom, etc.) have 
adopted ODBC as the native CLI for their database engine(s).
I see this trend growing over time.

Sun and HP will soon bundle an ODBC driver manager with the O/S.


*** What's the impact?

A shift in the role of the DBI to more directly fulfill the role of a
Driver Manager.

The DBI will become a fully fledged ODBC Driver Manager, e.g. able
to dynamically load third party commercial ODBC drivers which
conform to the standard ODBC driver interface spec.

A change in the DBI/DBD interface to bring it closer to the
ODBC driver interface spec (consistent return codes etc).

The application/DBI interface will probably not change much.
(Mainly because I've avoided specifying much of it recently :-)


*** How will it happen?

Some of you may be aware that Ke Jin <kejin@lithium.empress.com> from
Empress has very recently released the source code to a UNIX ODBC
driver manager to alt.sources.  The code has already been ported to
SunOS, Solaris, HP/UX, UnixWare, Irix, NCR, Linux ELF, DEC Alpha, etc

The code was released under the GNU General Public License. Ke has
very kindly agreed that we can use the source code under the Perl
Artistic Licence.

For anyone curious about iODBC I've added it to the DBperl archive
at ftp.demon.co.uk:/pub/perl/db/other/iODBC/iODBC-2.0b.shar.
This is currently the only FTP'able copy. Ke will send updates to
me so we'll keep upto date.

In parallel with ongoing perl DBD driver developments I'll be studying
the iODBC code to see how it can best be integrated into the DBI.
I may initially integrate it as a new DBD driver and then 'absorb' the
driver into the DBI. More news as it happens... (it won't be quick)


Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <17097-66@lion>;
          Thu, 24 Aug 1995 07:08:46 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 24 Aug 95 03:45:08 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa07305;
          24 Aug 95 4:44 +0100
Received: by gw.home.vix.com id AA06253; Wed, 23 Aug 95 13:57:58 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA06247; Wed, 23 Aug 95 13:57:56 -0700
Received: from localhost by colossus.cse.psu.edu with SMTP id <45646>;
          Wed, 23 Aug 1995 16:56:45 -0400
X-Mailer: exmh version 1.6.1 5/23/95
To: perldb-interest@vix.com
Subject: Re: Proposed "extension": LONG RAW parameters in DBD::Oracle
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Wed, 23 Aug 1995 16:56:58 -0400
From: John D Groenveld <groenvel@cse.psu.edu>
Message-Id: <95Aug23.165645edt.45646@colossus.cse.psu.edu>


BLOB's are clearly gaining importance in our work. Perhaps, they are better
manipulated in OCI/Pro*C, but I'd like to see these in perl as well. 
Just my biased 2 cents,
John
groenvel@cse.psu.edu
 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <21821-0@lion>;
          Thu, 24 Aug 1995 11:32:54 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 24 Aug 95 09:28:18 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa18983;
          24 Aug 95 10:27 +0100
Received: by gw.home.vix.com id AA26025; Wed, 23 Aug 95 19:22:53 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA26020; Wed, 23 Aug 95 19:22:51 -0700
Received: from ccMail 
          by internet_mail_gateway.tigerfund.com (IMA Internet Exchange v1.04) 
          id 03bf0220; Wed, 23 Aug 95 22:21:06 -0500
Mime-Version: 1.0
Date: Wed, 23 Aug 1995 22:25:03 -0500
Message-Id: <03bf0220@internet_mail_gateway.tigerfund.com>
From: Benjamin_Lis@tigerfund.com
To: perldb-interest@vix.com
Cc: Tim.Bunce@ig.co.uk
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Description: cc:Mail note part

Hi:

I'm encountering difficulties building DBI on an SP2 running AIX 3.2.5.

Attached is the output requested by the README file.  I've built and 
tested Perl5.001m. 

any help would be greatly appreciated,
Ben

------------------------------------------------------------------------------
Benjamin Lis, Jr.                               Tiger Management Corporation  
Benjamin_Lis@tigerfund.com                      phone: 212.984.2412
-------------------------------------------------------------------------------
                                                                                
                                                                                 
                                                                        
        
        
        
        
        
        
        Script command is started on Wed Aug 23 21:05:03 EDT 
        1995.tmc5_hps:/u/blis/DBI> make realclean
        Make: make: 1254-002 Cannot find a rule to create target realclean from 
        dependencies.
           Stop.
        tmc5_hps:/u/blis/DBI> perl Maked file.PL PERL_SRC=/u/blis/perl5.000 
        1m
        
            Build, TEST and INSTALL Perl 5 first. Use version 5.001m or later.
        
            DO NOT build the DBI under the Perl source tree.
        
            Use 'make test' to execute self tests.
        
        MakeMaker
                NAME => 'DBI'
                PERL_SRC => '/u/blis/perl5.001m'
                VERSION => '0.59'
        Looking for perl 5 by these names: 
        miniperl perl, 
        in these dirs:
        /u/blis/perl5.001m /u/blis/perl5.001m . /u/blis/bin /usr/bin /etc 
        /usr/sbin /usr/ucb /usr/bin/X11 /sbin /usr/bin /usr/bin/X11 
        /usr/local/bin /usr/local/bin/X11 /usr/lpp/ssp/bin 
        /u/oracle/product/7.1.6/bin /usr/local/openint/bin 
        /usr/local/openint/bin /usr/local/tex/bin/rs6000 /usr/local/tex/bin 
        /usr/local/modulus /usr/bin /etc /usr/sbin /usr/ucb /usr/bin/X11 /sbin 
        /usr/bin /usr/bin/X11 /usr/local/bin /usr/local/bin/X11 /usr/lpp/ssp/bin 
        /u/oracle/product/7.1.6/bin /usr/local/openint/bin 
        /usr/local/openint/bin /usr/local/tex/bin/rs6000 /usr/local/tex/bin 
        /usr/local/modulus/bin/aix /usr/bin /etc /usr/sbin /usr/ucb /usr/bin/X11 
        /sbin /usr/bin /usr/bin/X11 /usr/local/bin /usr/local/bin/X11 
        /usr/lpp/ssp/bin /u/oracle/product/7.1.6/bin /usr/local/openint/bin 
        /usr/local/openint/bin /usr/local/tex/bin/rs6000 /usr/local/tex/bin 
        /usr/local/modulus /usr/bin /etc /usr/sbin /usr/ucb /usr/bin/X11 /sbin 
        /usr/bin /usr/bin/X11 /usr/local/bin /usr/local/bin/X11 /usr/lpp/ssp/bin 
        /u/oracle/product/7.1.6/bin /usr/local/openint/bin 
        /usr/local/openint/bin /usr/local/tex/bin/rs6000 /usr/local/tex/bin 
        /usr/local/modulus/bin/aix/lib /usr/bin /etc /usr/sbin /usr/ucb 
        /usr/bin/X11 /sbin /usr/bin /usr/bin/X11 /usr/local/bin 
        /usr/local/bin/X11 /usr/lpp/ssp/bin /u/oracle/product/7.1.6/bin 
        /usr/local/openint/bin /usr/local/openint/bin /usr/local/tex/bin/rs6000 
        /usr/local/tex/bin /usr/local/modulus /usr/bin /etc /usr/sbin /usr/ucb 
        /usr/bin/X11 /sbin /usr/bin /usr/bin/X11 /usr/local/bin 
        /usr/local/bin/X11 /usr/lpp/ssp/bin /u/oracle/product/7.1.6/bin 
        /usr/local/openint/bin /usr/local/openint/bin /usr/local/tex/bin/rs6000 
        /usr/local/tex/bin /usr/local/modulus/bin/aix /usr/bin /etc /usr/sbin 
        /usr/ucb /usr/bin/X11 /sbin /usr/bin /usr/bin/X11 /usr/local/bin 
        /usr/local/bin/X11 /usr/lpp/ssp/bin /u/oracle/product/7.1.6/bin 
        /usr/local/openint/bin /usr/local/openint/bin /usr/local/tex/bin/rs6000 
        /usr/local/tex/bin /usr/local/modulus /usr/bin /etc /usr/sbin /usr/ucb 
        /usr/bin/X11 /sbin /usr/bin /usr/bin/X11 /usr/local/bin 
        /usr/local/bin/X11 /usr/lpp/ssp/bin /u/oracle/product/7.1.6/bin 
        /usr/local/openint/bin /usr/local/openint/bin /usr/local/tex/bin/rs6000 
        /usr/local/tex/bin /usr/local/modulus/bin/aix/lib/res /usr/local/bin
        Executing /u/blis/perl5.001m/miniperl
        Writing Makefile for DBI
        Warning (non-fatal): cflags evaluation in MakeMaker differs from shell 
        output
           package: DBI
           old: cc -c -D_ALL_SOURCE -O   
           new: cc -c -D_NO_PROTO -O   
           Using 'old' set.
        Please notify perl5-porters@nicoh.com
        
        Warning (non-fatal): cflags evaluation in MakeMaker differs from shell 
        output
           package: DBI
           old: cc -c -D_ALL_SOURCE -O   
           new: cc -c -D_NO_PROTO -O   
           Using 'old' set.
        Please notify perl5-porters@nicoh.com
        
        tmc5_hps:/u/blis/DBI> make
        mkdir /u/blis/perl5.001m/lib/auto/DBI
                /u/blis/perl5.001m/miniperl 
        /u/blis/perl5.001m/lib/ExtUtils/xsubpp -typemap 
        /u/blis/perl5.001m/lib/ExtUtils/typemap DBI.xs >DBI.tc && mv DBI.tc 
        DBI.c
                cc -c -D_ALL_SOURCE -O     -I/u/blis/perl5.001m   DBI.c
        "DBI.c", line 789.43: 1506-152 (W) Operands are pointers to different 
        types.
                ar cr /u/blis/perl5.001m/lib/auto/DBI/DBI.a DBI.o && : 
        /u/blis/perl5.001m/lib/auto/DBI/DBI.a
                cp DBIXS.h /u/blis/perl5.001m/lib/DBI/DBIXS.h
                cp lib/DBD/ExampleP.pm /u/blis/perl5.001m/lib/DBD/ExampleP.pm
                cp lib/DBD/NullP.pm /u/blis/perl5.001m/lib/DBD/NullP.pm
                cp DBI.pm /u/blis/perl5.001m/lib/DBI.pm
        tmc5_hps:/u/blis/DBI> make test
                /u/blis/perl5.001m/perl -I/u/blis/perl5.001m/lib 
        -I/u/blis/perl5.001m/lib -I/u/blis/perl5.001m/lib 
        -I/u/blis/perl5.001m/lib -e 'use Test::Harness qw(&runtests $verbose); 
        $verbose=0; runtests @ARGV;' t/*.t
        t/min...............Identifier "DBD::Test::dr::imp_data_size" used only 
        once: possible typo at t/min.t line 45.
        Can't load '/u/blis/perl5.001m/lib/auto/DBI/DBI.a' for module DBI: 
        dlopen: /u/blis/perl5.001m/lib/auto/DBI/DBI.a: bad exec format in 
        /u/blis/perl5.001m/lib/auto/DBI/DBI.a at 
        /u/blis/perl5.001m/lib/DynaLoader.pm line 450.
        
         at /u/blis/perl5.001m/lib/DBI.pm line 26
        FAILED on test 1
        Failed 1 test, 0.00% okay.
        Files=1,  Tests=6,  1 secs ( 0.21 cusr  0.09 csys =  0.30 cpu)
                /u/blis/perl5.001m/perl -I/u/blis/perl5.001m/lib 
        -I/u/blis/perl5.001m/lib -I/u/blis/perl5.001m/lib 
        -I/u/blis/perl5.001m/lib test.pl
        test.pl 
        DBI test application $Revision: 1.8 $
        Identifier "DBI::errstr" used only once: possible typo at test.pl line 
        55.
        Identifier "DBI::rows" used only once: possible typo at test.pl line 
        59.
        Can't load '/u/blis/perl5.001m/lib/auto/DBI/DBI.a' for module DBI: 
        dlopen: /u/blis/perl5.001m/lib/auto/DBI/DBI.a: bad exec format in 
        /u/blis/perl5.001m/lib/auto/DBI/DBI.a at 
        /u/blis/perl5.001m/lib/DynaLoader.pm line 450.
        
         at DBI.pm line 26
        make: 1254-004 The error code from the last command is 8.
        
        Make Quitting.
        tmc5_hps:/u/blis/DBI> make test TEST_VERV BOSE=1
                /u/blis/perl5.001m/perl -I/u/blis/perl5.001m/lib 
        -I/u/blis/perl5.001m/lib -I/u/blis/perl5.001m/lib 
        -I/u/blis/perl5.001m/lib -e 'use Test::Harness qw(&runtests $verbose); 
        $verbose=1; runtests @ARGV;' t/*.t
        t/min...............Identifier "DBD::Test::dr::imp_data_size" used only 
        once: possible typo at t/min.t line 45.
        1..6
        Can't load '/u/blis/perl5.001m/lib/auto/DBI/DBI.a' for module DBI: 
        dlopen: /u/blis/perl5.001m/lib/auto/DBI/DBI.a: bad exec format in 
        /u/blis/perl5.001m/lib/auto/DBI/DBI.a at 
        /u/blis/perl5.001m/lib/DynaLoader.pm line 450.
        
         at /u/blis/perl5.001m/lib/DBI.pm line 26
        FAILED on test 1
        Failed 1 test, 0.00% okay.
        Files=1,  Tests=6,  1 secs ( 0.23 cusr  0.05 csys =  0.28 cpu)
                /u/blis/perl5.001m/perl -I/u/blis/perl5.001m/lib 
        -I/u/blis/perl5.001m/lib -I/u/blis/perl5.001m/lib 
        -I/u/blis/perl5.001m/lib test.pl
        test.pl 
        DBI test application $Revision: 1.8 $
        Identifier "DBI::errstr" used only once: possible typo at test.pl line 
        55.
        Identifier "DBI::rows" used only once: possible typo at test.pl line 
        59.
        Can't load '/u/blis/perl5.001m/lib/auto/DBI/DBI.a' for module DBI: 
        dlopen: /u/blis/perl5.001m/lib/auto/DBI/DBI.a: bad exec format in 
        /u/blis/perl5.001m/lib/auto/DBI/DBI.a at 
        /u/blis/perl5.001m/lib/DynaLoader.pm line 450.
        
         at DBI.pm line 26
        make: 1254-004 The error code from the last command is 8.
        
        Make Quitting.
        tmc5_hps:/u/blis/DBI> make test TEST_VERBOSE=1
                /u/blis/perl5.001m/perl -I/u/blis/perl5.001m/lib 
        -I/u/blis/perl5.001m/lib -I/u/blis/perl5.001m/lib 
        -I/u/blis/perl5.001m/lib -e 'use Test::Harness qw(&runtests $verbose); 
        $verbose=1; runtests @ARGV;' t/*.t
        t/min...............Identifier "DBD::Test::dr::imp_data_size" used only 
        once: possible typo at t/min.t line 45.
        1..6
        Can't load '/u/blis/perl5.001m/lib/auto/DBI/DBI.a' for module DBI: 
        dlopen: /u/blis/perl5.001m/lib/auto/DBI/DBI.a: bad exec format in 
        /u/blis/perl5.001m/lib/auto/DBI/DBI.a at 
        /u/blis/perl5.001m/lib/DynaLoader.pm line 450.
        
         at /u/blis/perl5.001m/lib/DBI.pm line 26
        FAILED on test 1
        Failed 1 test, 0.00% okay.
        Files=1,  Tests=6,  1 secs ( 0.21 cusr  0.08 csys =  0.29 cpu)
                /u/blis/perl5.001m/perl -I/u/blis/perl5.001m/lib 
        -I/u/blis/perl5.001m/lib -I/u/blis/perl5.001m/lib 
        -I/u/blis/perl5.001m/lib test.pl
        test.pl 
        DBI test application $Revision: 1.8 $
        Identifier "DBI::errstr" used only once: possible typo at test.pl line 
        55.
        Identifier "DBI::rows" used only once: possible typo at test.pl line 
        59.
        Can't load '/u/blis/perl5.001m/lib/auto/DBI/DBI.a' for module DBI: 
        dlopen: /u/blis/perl5.001m/lib/auto/DBI/DBI.a: bad exec format in 
        /u/blis/perl5.001m/lib/auto/DBI/DBI.a at 
        /u/blis/perl5.001m/lib/DynaLoader.pm line 450.
        
         at DBI.pm line 26
        make: 1254-004 The error code from the last command is 8.
        
        Make Quitting.
        tmc5_hps:/u/blis/DBI> perl -e 'use Config; print Config::myconfig()'
        Summary of my perl5 (patchlevel 1) configuration:
          Platform:
            osname=, osver=3.2, archname=aix
            uname='aix harpo 2 3 000035371400 '
            hint=recommended
          Compiler:
            cc='cc', optimize='-O'
            cppflags='-D_NO_PROTO'
            ccflags ='-D_NO_PROTO'
            ldflags =''
            stdchar='unsigned char', d_stdstdio=define, usevfork=false
            voidflags=15, castflags=1, d_casti32=define, d_castneg=
            intsize=4, alignbytes=4, usemymalloc=y, randbits=15
          Libraries:
            so=none
            libpth=/lib /usr/lib /usr/ccs/lib /usr/local/lib
            libs=-ldbm -lld -lm -lc -lbsd -lPW
            libc=/usr/lib/libc.a
          Dynamic Linking:
            dlsrc=dl_none.xs, dlext=none, d_dlsymun=
            cccdlflags='', ccdlflags='', lddlflags=''
        
        tmc5_hps:/u/blis/DBI> exit
        
        Script command is complete on Wed Aug 23 21:09:27 EDT 1995.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <04742-5@lion>;
          Thu, 24 Aug 1995 19:15:07 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 24 Aug 95 17:50:06 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa27618;
          24 Aug 95 18:49 +0100
Received: by gw.home.vix.com id AA08050; Wed, 23 Aug 95 22:58:09 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA08045; Wed, 23 Aug 95 22:58:06 -0700
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id HAA15499;
          Thu, 24 Aug 1995 07:57:37 +0200
Date: Thu, 24 Aug 1995 07:57:37 +0200
Message-Id: <199508240557.HAA15499@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: Benjamin_Lis@tigerfund.com
Cc: perldb-interest@vix.com, Tim.Bunce@ig.co.uk
In-Reply-To: <03bf0220@internet_mail_gateway.tigerfund.com> (Benjamin_Lis@tigerfund.com)
Subject: DBI 0.59 problem (Was: [No subject])
Reply-To: andreas.koenig@mind.de

  >From: Benjamin_Lis@tigerfund.com
  >I'm encountering difficulties building DBI on an SP2 running AIX 3.2.5.
  >
  >Attached is the output requested by the README file.  I've built and 
  >tested Perl5.001m.

  [ output deleted ]

From the README file:

!!!!BEFORE BUILDING, TESTING AND INSTALLING this you will need to:
!!!!
!!!!	Build, test and install Perl 5 (at least version 5.001m).
!!!!	It is very important to test it and install it!
!!!!                                        ^^^^^^^

BTW, the current version number is 0.61, so please get it from

ftp://ftp.demon.co.uk/pub/perl/db/
or
ftp://ftp.pasteur.fr/pub/Perl/CPAN/pml/byauthor/TIMB

  >any help would be greatly appreciated,
  >Ben

Hope that helps,
andreas
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <07624-25@lion>;
          Fri, 25 Aug 1995 07:03:59 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 24 Aug 95 20:06:20 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa03148;
          24 Aug 95 21:05 +0100
Received: by gw.home.vix.com id AA03697; Thu, 24 Aug 95 05:29:51 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA03692; Thu, 24 Aug 95 05:29:49 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa23450;
          24 Aug 95 12:33 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id al19404;
          24 Aug 95 12:30 +0100
Received: from ig.co.uk by lion id <00540-0@lion>;
          Thu, 24 Aug 1995 12:16:51 +0100
To: perldb-interest@vix.com, groenvel@cse.psu.edu
Subject: Re: Proposed "extension": LONG RAW parameters in DBD::Oracle
Date: Thu, 24 Aug 1995 12:16:51 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508241230.al19404@post.demon.co.uk>


> From: John D Groenveld <groenvel@cse.psu.edu>
> 
> 
> BLOB's are clearly gaining importance in our work. Perhaps, they are better
> manipulated in OCI/Pro*C, but I'd like to see these in perl as well. 
> Just my biased 2 cents,
> John
> groenvel@cse.psu.edu
>  
I don't follow what you're saying John. Care to rephrase it?

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <08341-2@lion>;
          Fri, 25 Aug 1995 07:05:30 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 24 Aug 95 21:23:35 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa13018;
          24 Aug 95 22:22 +0100
Received: by gw.home.vix.com id AA03735; Thu, 24 Aug 95 05:30:06 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA03714; Thu, 24 Aug 95 05:30:02 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa23447;
          24 Aug 95 12:33 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ak19404;
          24 Aug 95 12:30 +0100
Received: from ig.co.uk by lion id <22270-0@lion>;
          Thu, 24 Aug 1995 11:56:11 +0100
To: z50816@mip.lasc.lockheed.com
Subject: Re: Pointers are not assignment-compatible
Cc: perldb-interest@vix.com
Date: Thu, 24 Aug 1995 11:56:11 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508241230.ak19404@post.demon.co.uk>


> From @netserve.lasc.lockheed.com:z50816@mip.lasc.lockheed.com Thu Aug 24 10:11:50 1995
> Date: Wed, 23 Aug 1995 14:54:18 -0400
> From: Terry Greenlaw <z50816@mip.lasc.lockheed.com>
> Apparently-To: Tim.Bunce@ig.co.uk
> 
> Tim,
> I got these warnings during make:
>         cc -c -D_POSIX_SOURCE -D_HPUX_SOURCE -Aa +O1 +z -I/disk3/perl5/lib/perl5/hpux/CORE
> DBI.c
> cc: "DBI.c", line 206: warning 562: Redeclaration for "dbih_getcom"; "static" used.
> cc: "DBI.c", line 1411: warning 604: Pointers are not assignment-compatible.
> 
> The tests for DBI 0.61 all pass
> 
> However...
> when testing DBD 0.24 after a make (which was successful)
> 
> install_driver(Oracle) failed:
DBI version mismatch (DBI actual v0/s4, expected v7/s52)
                                 ^^^^^

Something's very wrong with the DBI build. Version 0, size 4 bytes!

I'll look into those warnings.

> I checked the DBI.pm file and it is dated today.
> Any ideas?
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <08341-3@lion>;
          Fri, 25 Aug 1995 07:05:35 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 24 Aug 95 22:35:07 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa17626;
          24 Aug 95 23:34 +0100
Received: by gw.home.vix.com id AA05322; Thu, 24 Aug 95 05:49:04 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA05316; Thu, 24 Aug 95 05:49:00 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa24133;
          24 Aug 95 12:40 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa20648;
          24 Aug 95 12:37 +0100
Received: from ig.co.uk by lion id <00697-0@lion>;
          Thu, 24 Aug 1995 12:37:20 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: Creating a statement handle (sth) on the C side?
Date: Thu, 24 Aug 1995 12:37:20 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508241238.aa20648@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
>   Ok, I have (I think) the latest versions of DBD and DBI and am totally
> confused about how to create a sth while executing C code.
> 
>   Quick synopsis, even when executing SQL directly, I must still
> prepare the statement, so I need a sth to hand my equivalent of
> dbd_db_prepare(sth,statement).
> 
> Pointers, explicit directions, anything....please.
> 
Just do exactly what (the latest) DBD::Oracle::Oracle.pm does.

When developing a driver please copy and edit all the DBD::Oracle files
rather than working from the ground up.

> Ok, using DBI-0.60 and running the following script:
> |> Had to create DBD::DB2::dr::imp_data_size unexpectedly at
> |> /usr/local/lib/perl5/DBI.pm line 287.

You're not doing what DBD/Oracle/Oracle.xs does:

    DBI_IMP_SIZE("DBD::Oracle::dr::imp_data_size", sizeof(imp_drh_t));

The bottom line here is that the DBI/DBD interface is undocumented.

The DBD::Oracle interface must serve as both model and documentation for
other drivers. Follow it *very* *very* closely. Especially the .xs file.

I also urge you to upgrade to DBI-0.61 and base your DB2 driver
on DBD-Oracle-0.24.

> Mike
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <07624-39@lion>;
          Fri, 25 Aug 1995 07:05:44 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 24 Aug 95 23:02:53 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa01058;
          25 Aug 95 0:02 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa00193;
          25 Aug 95 0:02 GMT-60:00
Received: by gw.home.vix.com id AA16090; Thu, 24 Aug 95 08:27:51 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA16084; Thu, 24 Aug 95 08:27:47 -0700
Received: from bssmlsa.nerc-bas.ac.uk.nerc-bas.ac.uk 
          by bsfiles.nerc-bas.ac.uk (8.6.10/NERC-1.2(Solaris 2.x) id QAA17067;
          Thu, 24 Aug 1995 16:27:23 +0100
Date: Thu, 24 Aug 1995 16:27:17 +0100
Message-Id: <26257.199508241527@bssmlsa.nerc-bas.ac.uk.nerc-bas.ac.uk>
From: Andrew G Wood <agw@mail.nerc-bas.ac.uk>
To: Tim.Bunce@ig.co.uk
Cc: mhm@austin.ibm.com, perldb-interest@vix.com
In-Reply-To: <9508241455.aa15156@post.demon.co.uk> (message from Tim Bunce on Thu, 24 Aug 1995 14:41:15 +0100)
Subject: Re: Creating a statement handle (sth) on the C side?
Reply-To: agw@mail.nerc-bas.ac.uk
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

>>>>> "Tim" == Tim Bunce <Tim.Bunce@ig.co.uk> writes:

    >> From: mhm@austin.ibm.com
    >> 
    >> Tim Bunce <Tim.Bunce@ig.co.uk> writes: |> |> I also urge you to
    >> upgrade to DBI-0.61 and base your DB2 driver |> on
    >> DBD-Oracle-0.24.
    >> 
    >> Tell me where to find them as they are not at ftp.demon.uk.
    >> 
    > $ ftp ftp.demon.co.uk ...
    ftp> dir DBI

Er .. not quite ..... I think you will find that should be
/pub/perl/db/DBI

    > ...  -rw-r--r-- 1 4098 53 42791 Aug 22 06:06 DBI-0.61.tar.Z ...
    ftp> dir DBD/Oracle

ditto.

    > ...  -rw-r--r-- 1 4098 53 40631 Aug 22 06:03
    > DBD-Oracle-0.24.tar.Z ...

    >> Thanks.
    >> 
    >> Mike
    >> 
    > Tim.

Andy.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <07624-40@lion>;
          Fri, 25 Aug 1995 07:05:50 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 24 Aug 95 23:07:02 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa03232;
          25 Aug 95 0:06 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa00384;
          25 Aug 95 0:06 GMT-60:00
Received: by gw.home.vix.com id AA07148; Thu, 24 Aug 95 06:10:35 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA07143; Thu, 24 Aug 95 06:10:33 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.11/8.6.11) with SMTP id IAA68612;
          Thu, 24 Aug 1995 08:10:28 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA25894;
          Thu, 24 Aug 1995 08:10:27 -0500
From: mhm@austin.ibm.com
Message-Id: <9508241310.AA25894@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: Creating a statement handle (sth) on the C side?
In-Reply-To: Your message of Thu, 24 Aug 95 12:37:20 +0100. <9508241238.aa20648@post.demon.co.uk>
Date: Thu, 24 Aug 95 08:10:26 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|> 
|> I also urge you to upgrade to DBI-0.61 and base your DB2 driver
|> on DBD-Oracle-0.24.


Tell me where to find them as they are not at ftp.demon.uk.

Thanks.

Mike
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <07624-42@lion>;
          Fri, 25 Aug 1995 07:06:03 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 24 Aug 95 23:26:22 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa11456;
          25 Aug 95 0:25 +0100
Received: by gw.home.vix.com id AA07936; Thu, 24 Aug 95 06:29:24 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA07931; Thu, 24 Aug 95 06:29:23 -0700
Received: from localhost by colossus.cse.psu.edu with SMTP id <45619>;
          Thu, 24 Aug 1995 09:28:10 -0400
X-Mailer: exmh version 1.6.1 5/23/95
To: perldb-interest@vix.com
Subject: Re: Proposed "extension": LONG RAW parameters in DBD::Oracle
In-Reply-To: Your message of "Thu, 24 Aug 1995 07:16:51 EDT." <9508241230.al19404@post.demon.co.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Thu, 24 Aug 1995 09:28:28 -0400
From: John D Groenveld <groenvel@cse.psu.edu>
Message-Id: <95Aug24.092810edt.45619@colossus.cse.psu.edu>

I'm sorry for being vague. I think its critical for DBPerl's success to be able
to handle all types of objects including binary objects greater than 64k.
I understand the difficulties with using Oracle's LONG VAR facilities, but 
even if it is an expensive operation, I would like to see it included.
Thanks,
John
groenvel@cse.psu.edu
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <08341-10@lion>;
          Fri, 25 Aug 1995 07:06:24 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 25 Aug 95 00:22:33 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa02011;
          25 Aug 95 1:21 +0100
Received: by gw.home.vix.com id AA29367; Thu, 24 Aug 95 11:18:20 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA29358; Thu, 24 Aug 95 11:18:16 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa21292;
          24 Aug 95 16:54 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa09457;
          24 Aug 95 16:51 +0100
Received: from ig.co.uk by lion id <02658-0@lion>;
          Thu, 24 Aug 1995 16:53:44 +0100
To: agw@mail.nerc-bas.ac.uk
Subject: Re: Creating a statement handle (sth) on the C side?
Cc: mhm@austin.ibm.com, perldb-interest@vix.com
Date: Thu, 24 Aug 1995 16:53:44 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508241651.aa09457@post.demon.co.uk>


> From: Andrew G Wood <agw@mail.nerc-bas.ac.uk>
>
> >>>>> "Tim" == Tim Bunce <Tim.Bunce@ig.co.uk> writes:
> 
>     >> From: mhm@austin.ibm.com
>     >> 
>     >> Tim Bunce <Tim.Bunce@ig.co.uk> writes: |> |> I also urge you to
>     >> upgrade to DBI-0.61 and base your DB2 driver |> on
>     >> DBD-Oracle-0.24.
>     >> 
>     >> Tell me where to find them as they are not at ftp.demon.uk.
>     >> 
>     > $ ftp ftp.demon.co.uk ...
>     ftp> dir DBI
> 
> Er .. not quite ..... I think you will find that should be
> /pub/perl/db/DBI
> 
Er, _you're_ telling _me_ where _I_ put my own releases!

That's rich.

:-)

I thought it was fairly obvious that I was summarising.

Mike replied to me with:

> Sorry about that, seems the cache flushing mechanism on my web browser
> doesn't work.  Appearantly, I was looking at cached pages and not 
> at ftp.demon.co.uk.
> 
> Time to go wash the egg off of my face  :-)
> 
> Mike
> 
No harm done.

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <08341-11@lion>;
          Fri, 25 Aug 1995 07:06:32 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 25 Aug 95 00:22:35 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa02020;
          25 Aug 95 1:21 +0100
Received: by gw.home.vix.com id AA07127; Thu, 24 Aug 95 12:50:12 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA07107; Thu, 24 Aug 95 12:50:11 -0700
Received: from morpheus.cis.yale.edu (morpheus [130.132.143.248]) 
          by capitoline.cis.yale.edu (8.6.12/8.6.12) with ESMTP id PAA05449 
          for <perldb-interest@vix.com>; Thu, 24 Aug 1995 15:50:00 -0400
Received: (from rivory@localhost) by morpheus.cis.yale.edu (8.6.12/8.6.12) 
          id PAA28604; Thu, 24 Aug 1995 15:49:59 -0400
Date: Thu, 24 Aug 1995 15:49:59 -0400 (EDT)
From: Royal Hansen <rivory@minerva.cis.yale.edu>
X-Sender: rivory@morpheus
To: interest perl <perldb-interest@vix.com>
Subject: unsubscribe
Message-Id: <Pine.SOL.3.91.950824154751.28244A-100000@morpheus>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

unsubsribe
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <07624-49@lion>;
          Fri, 25 Aug 1995 07:06:53 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 25 Aug 95 00:55:32 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa12052;
          25 Aug 95 1:54 +0100
Received: by gw.home.vix.com id AA14062; Thu, 24 Aug 95 07:54:22 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA14049; Thu, 24 Aug 95 07:54:18 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa08754;
          24 Aug 95 14:58 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa15156;
          24 Aug 95 14:55 +0100
Received: from ig.co.uk by lion id <00848-0@lion>;
          Thu, 24 Aug 1995 14:41:15 +0100
To: mhm@austin.ibm.com
Subject: Re: Creating a statement handle (sth) on the C side?
Cc: perldb-interest@vix.com
Date: Thu, 24 Aug 1995 14:41:15 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508241455.aa15156@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> |> 
> |> I also urge you to upgrade to DBI-0.61 and base your DB2 driver
> |> on DBD-Oracle-0.24.
> 
> Tell me where to find them as they are not at ftp.demon.uk.
> 
$ ftp ftp.demon.co.uk
...
ftp> dir DBI
...
-rw-r--r--   1 4098     53          42791 Aug 22 06:06 DBI-0.61.tar.Z
...
ftp> dir DBD/Oracle
...
-rw-r--r--   1 4098     53          40631 Aug 22 06:03 DBD-Oracle-0.24.tar.Z
...

> Thanks.
> 
> Mike
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <07624-50@lion>;
          Fri, 25 Aug 1995 07:06:59 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 25 Aug 95 00:56:20 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa12388;
          25 Aug 95 1:56 +0100
Received: by gw.home.vix.com id AA10169; Thu, 24 Aug 95 13:31:05 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA10163; Thu, 24 Aug 95 13:31:02 -0700
Received: from nando.net.nando.net (parsifal.nando.net) 
          by merlin.nando.net (4.1/davel-nando/dec93) id AA07753;
          Thu, 24 Aug 95 16:30:33 EDT
Received: by nando.net.nando.net (4.1/SMI-4.1) id AA06882;
          Thu, 24 Aug 95 16:30:38 EDT
Date: Thu, 24 Aug 95 16:30:38 EDT
From: Bhctc2 <bhctc2@nando.net>
Message-Id: <9508242030.AA06882@nando.net.nando.net>
To: perldb-interest@vix.com
Subject: unsubscribe

unsubscribe
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <08341-17@lion>;
          Fri, 25 Aug 1995 07:07:27 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 25 Aug 95 03:15:31 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id ab15316;
          25 Aug 95 4:14 +0100
Received: by gw.home.vix.com id AA14201; Thu, 24 Aug 95 14:16:45 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA14195; Thu, 24 Aug 95 14:16:44 -0700
Received: from centhub ([151.116.23.137]) 
          by uswat.advtech.uswest.com (8.6.12/8.6.12) with SMTP id PAA10518;
          Thu, 24 Aug 1995 15:16:43 -0600
Original-Received: by centhub.mnet.uswest.com (M-Net 
                   Hub.950111)
PP-warning: Illegal Received field on preceding line
Received: from coefmd3 by coefmd3.uswest.com. (5.0/SMI-SVR4) id AA18474;
          Thu, 24 Aug 1995 15:17:01 +0700
Message-Id: <9508242117.AA18474@coefmd3.uswest.com.>
X-Mailer: exmh version 1.6 4/21/95
To: perldb-interest@vix.com
Cc: Tim.Bunce@ig.co.uk
Subject: DBD-Oracle-0.24
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Thu, 24 Aug 1995 15:17:00 -0600
From: John Liptak <jliptak@coefmd3.uswc.uswest.com>
Content-Length: 2389



I know that several things have been happening with bind, but I'm having
problems with the current oraperl emulation.  I don't seem to be able
to get DBI to deal with the following script:

#!/home/jliptak/bin/perl
#
use Oraperl;
$lda = &ora_login('T:coefmd2:stage', '/', '/') || die "Error logging in\n";

$a   = "select TABLE_NAME  \
            from ALL_TABLES  \
        order by TABLE_NAME";

$c   = "select COLUMN_NAME,     \
                 DATA_LENGTH,     \
                 DATA_TYPE,       \
                 DATA_PRECISION,  \
                 DATA_SCALE       \
            from ALL_TAB_COLUMNS  \
           where TABLE_NAME = :1  \
        order by COLUMN_ID";

$b   = &ora_open($lda, $a);
$d   = &ora_open($lda, $c) || die "Can't open second cursor\n";

while ( @table = &ora_fetch($b) )
{
    print "$table[0] \n";
    &ora_bind($d, $table[0]) || die "Can't bind\n";

    while ( @field = &ora_fetch($d) )
    {
	print "@field \n";
    }
}

I get the following errors:


....
IAPCOMMENT 
ERROR EVENT: DBI::st=HASH(0xa311c)->DBI::default_handler:
        1 no statement executing
 at test.pl line 35
IAPFLD 
ERROR EVENT: DBI::st=HASH(0xa311c)->DBI::default_handler:
        1 no statement executing
 at test.pl line 35
IAPMAP 
ERROR EVENT: DBI::st=HASH(0xa311c)->DBI::default_handler:
        1 no statement executing
 at test.pl line 35
IAPSQLTXT 
ERROR EVENT: DBI::st=HASH(0xa311c)->DBI::default_handler:
        1 no statement executing
 at test.pl line 35
IAPTRG 
ERROR EVENT: DBI::st=HASH(0xa311c)->DBI::default_handler:
        1 no statement executing
 at test.pl line 35
IAPTRIGGER 
ERROR EVENT: DBI::st=HASH(0xa311c)->DBI::default_handler:
        1 no statement executing
 at test.pl line 35
INFORMATION_OBJECT 
ERROR EVENT: DBI::st=HASH(0xa311c)->DBI::default_handler:
        1 no statement executing
 at test.pl line 35
INV_ALTERNATE_DESC 
ERROR EVENT: DBI::st=HASH(0xa311c)->DBI::default_handler:
        1 no statement executing
 at test.pl line 35
INV_ALTERNATE_DESC_T 
ERROR EVENT: DBI::st=HASH(0xa311c)->DBI::default_handler:
        1 no statement executing
 at test.pl line 35
.....



John
--




John Liptak - MTS                    U S WEST Communications
WK (303) 624-0140                    931 14TH Street 9TH FL.
PG (303) 820-9284                    Denver, Colorado 80202
j.liptak@ieee.org                    jliptak@coefmd3.mnet.uswest.com

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <18152-11@lion>;
          Fri, 25 Aug 1995 15:59:15 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 25 Aug 95 14:41:00 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa17903;
          25 Aug 95 15:40 +0100
Received: by gw.home.vix.com id AA00665; Fri, 25 Aug 95 01:52:15 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA00660; Fri, 25 Aug 95 01:52:11 -0700
Received: from barbera.inferentia.it (barbera.inferentia.it [151.99.220.61]) 
          by relay.smau.it (8.6.12/8.6.12) with SMTP id KAA26425 
          for <perldb-interest@vix.com>; Fri, 25 Aug 1995 10:51:03 +0200
Posted-Date: Fri, 25 Aug 1995 10:51:03 +0200
Received: by barbera.inferentia.it with Microsoft Mail 
          id <303E0F4B@barbera.inferentia.it>; Fri, 25 Aug 95 10:58:35 PDT
From: Shari <Davide.Migliavacca@inferentia.it>
To: "'perldb-interest@vix.com'" <perldb-interest@vix.com>
Subject: Future of DBI
Date: Fri, 25 Aug 95 10:58:00 PDT
Message-Id: <303E0F4B@barbera.inferentia.it>
Encoding: 125 TEXT
X-Mailer: Microsoft Mail V3.0


I hope this is not going to arouse a flame war.
With the recent announcement (see "BIG NEWS" from Tim Bunce of   
1995/80/23) of the actual chance of having a single interface (ODBC   
3/CLI/DBI) across platforms, maybe the focus should shift towards   
achieving that goal.
I myself am really interested in
In the meantime, the following 20 lines of perl and 20 lines of PL/SQL   
may substitute WOW (notice the use of :p1 insted of ? is mandated by a   
bug which is probably already fixed).
I think this means DBI is really something real.
Notice: this code may not actually work as it is, since it's an UNTESTED   
cut & paste from something which I am right now developing on a contract.   
The "real" sample, anyway, which is complicated by something which has   
nothing to do with the interface to the DB, it does work and you will see   
it soon in production (Tim: see how I care for the ALPHA warnings :-) as   
the english interface to the search engine of MAGELLANO on line   
(http://www.smau.it/magellano).
Having arrays be bound would certainly speed things up. Having complete   
(and efficient) BLOB support would have me happy.
But having a complete and "definitive" DBI spec would make me happy even   
more  (if possible).
One last word before DBI speaks: sorry for the long posting if you have a   
slow link.
 Davide Migliavacca (davide.migliavacca@inferentia.it)

======================= cut here (wow.pl) ======================
#!/usr/bin/perl
# (C) 1995, Davide Migliavacca (davide.migliavacca@inferentia.it)
# Use as you will but please don't let someone pay for this.
# Requires DBI 0,61, DBD::Oracle 0.24

use Oraperl;
use CGI;

$WOW_UID = "some/user\@SOMESID";

$query = new CGI;

$wow_call = substr ($query->path_info, 1);

if ($query->param > 0) {
# query-style call, add an argument and prepare the others
    $wow_call .= '(';
    @params = $query->param;
    for $i (0 .. ($query->param - 1)) {
     $wow_call .= ",@params[$i]=>'" . $query->param(@params[$i]). "'";
 }
    }
    $wow_call .= ')';
}

$lda = ora_login ('', $WOW_UID, '');

ora_do ($lda, "begin $wow_call; dbiWOW.getAllLines; end;") || die;

$cursor_getnum = ora_open ($lda, 'select dbiWOW.numlines from dual');

$cursor_getline = $lda->prepare ('select dbiWOW.line(:p1) from dual');

($num_lines) = ora_fetch ($cursor_getnum);
#print "dbiWOW.numlines == $num_lines\n";

ora_close ($cursor_getnum);

$i = 1;

while ($i <= $num_lines) {
    $cursor_getline->bind_param(':p1', $i);
    $cursor_getline->execute;
    ($line) = ora_fetch ($cursor_getline);
    print "$line\n"; # now this is actually quite unprofessional :-)
    $i++;
}

======================= cut here ======================
accompanied by the following PL/SQL package (very similar to wow.sql)

======================= cut here (dbiwow.sql) =============
Rem  (C) 1995, Davide Migliavacca (davide.migliavacca@inferentia.it)
Rem Use as you will but please don't let someone pay for this.
drop package dbiWOW;
create package dbiWOW as
 w3output dbms_output.chararr;
 rowcount integer := 1;

 procedure getAllLines;
 function line (i integer) return varchar2;
 PRAGMA RESTRICT_REFERENCES(line, WNDS, WNPS, RNDS);
 function numLines return integer;
 PRAGMA RESTRICT_REFERENCES(numlines, WNDS, WNPS, RNDS);

end dbiWOW;
/
show errors;  

create package body dbiWOW is

procedure getAllLines is
 rc integer := 1000000;
 i integer := 0;
begin
 dbms_output.get_lines(w3output,rc);
 rowcount := rc;
end getAllLines;

function line (i integer)
return varchar2
is
begin
 return w3output(i);
end line;

function numLines
return integer
is
begin
 return rowcount;
end numLines;

end dbiWOW;
/
show errors;
=========================== cut here =========================

---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <00364-8@lion>;
          Sat, 26 Aug 1995 13:27:01 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 25 Aug 95 21:00:10 GMT
Received: from gw.home.vix.com by punt2.demon.co.uk id aa13886;
          25 Aug 95 21:58 +0100
Received: by gw.home.vix.com id AA20896; Fri, 25 Aug 95 06:10:23 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA20788; Fri, 25 Aug 95 06:10:13 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa22170;
          25 Aug 95 14:01 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa17232;
          25 Aug 95 13:58 +0100
Received: from ig.co.uk by lion id <14511-0@lion>;
          Fri, 25 Aug 1995 12:43:49 +0100
To: perldb-interest@vix.com, jliptak@coefmd3.uswc.uswest.com
Subject: Re: DBD-Oracle-0.24
Date: Fri, 25 Aug 1995 12:43:49 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508251358.aa17232@post.demon.co.uk>


> From: John Liptak <jliptak@coefmd3.uswc.uswest.com>
> 
> I know that several things have been happening with bind, but I'm having
> problems with the current oraperl emulation.  I don't seem to be able
> to get DBI to deal with the following script:
> 
> ERROR EVENT: DBI::st=HASH(0xa311c)->DBI::default_handler:
>         1 no statement executing

Here's the fix... change code near the end of execute() in Oracle.xs from:

        if (error)
            XSRETURN_UNDEF;     /* dbd_bind_ph already registered error */

to:
        if (error) {
            XSRETURN_UNDEF;     /* dbd_bind_ph already registered error */
        }


> John

Tim.

p.s.

While I'm here I'll quickly mention the fact that it seems that sword
is defined as an int and the SWORDMAXVAL is the same as INT_MAX.

The implication of this is that LONG's in the current release are _not_
limited to 64K bytes on platforms where an int is 4 bytes.

Can those using longs please test this for me. Thanks.

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <00363-24@lion>;
          Sat, 26 Aug 1995 13:28:00 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 25 Aug 95 19:58:15 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa21808;
          25 Aug 95 20:57 +0100
Received: by gw.home.vix.com id AA16211; Fri, 25 Aug 95 05:09:03 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA16204; Fri, 25 Aug 95 05:09:01 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa12550;
          25 Aug 95 12:27 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ac29574;
          25 Aug 95 12:24 +0100
Received: from ig.co.uk by lion id <14266-0@lion>;
          Fri, 25 Aug 1995 12:22:43 +0100
To: perldb-interest@vix.com, Davide.Migliavacca@inferentia.it
Subject: Re: DBD::Oracle 0.24: ORACLE_HOME determination
Date: Fri, 25 Aug 1995 12:22:43 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508251224.ac29574@post.demon.co.uk>


> From: Shari <Davide.Migliavacca@inferentia.it>
> 
> The sub driver in package DBD::Oracle (Oracle.pm 1.19, starting at line   
> 24) does a good job trying to determine where @#$%! is Oracle if   
> ORACLE_HOME is not set.
> I wonder if an additional effort would be worthwhile: getting the   
> "oracle" user home directory.
> I had to patch (add an entry) the code because with the brain-damaged   
> OSF/1 3.2 and Netsite Communication Server 1.0 combination, user nobody   
> with shell sh would never be able to see ORACLE_HOME unless I use the   
> 'eval exec perl -x' hack in the CGI script emulating WOW.

What use is knowing the "oracle" user home directory?

> Of course this is the lowest priority issue I could devise in order to   
> distract you all from hard work.

My deflector shields are up at the moment so I'll say:

	Send me some code and I'll integrate it.

> Bye
>  Davide Migliavacca (davide.migliavacca@inferentia.it)
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <00765-3@lion>;
          Sat, 26 Aug 1995 13:28:05 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 25 Aug 95 20:21:41 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id aa02620;
          25 Aug 95 21:21 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <23491-0@frigate.doc.ic.ac.uk>; Fri, 25 Aug 1995 21:21:26 +0100
Received: by gw.home.vix.com id AA13000; Fri, 25 Aug 95 04:09:54 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA12995; Fri, 25 Aug 95 04:09:52 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa10424;
          25 Aug 95 12:00 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ab25342;
          25 Aug 95 11:58 +0100
Received: from ig.co.uk by lion id <10333-0@lion>;
          Fri, 25 Aug 1995 10:30:45 +0100
To: perldb-interest@vix.com, groenvel@cse.psu.edu
Subject: Re: Proposed "extension": LONG RAW parameters in DBD::Oracle
Date: Fri, 25 Aug 1995 10:30:45 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508251158.ab25342@post.demon.co.uk>


> From: John D Groenveld <groenvel@cse.psu.edu>
> 
> I'm sorry for being vague. I think its critical for DBPerl's success to be able
> to handle all types of objects including binary objects greater than 64k.
> I understand the difficulties with using Oracle's LONG VAR facilities, but 
> even if it is an expensive operation, I would like to see it included.

Me to.

I'll look into it.

> Thanks,
> John
> groenvel@cse.psu.edu
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <00765-13@lion>;
          Sat, 26 Aug 1995 13:29:00 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 25 Aug 95 22:18:28 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa25275;
          25 Aug 95 23:17 +0100
Received: by gw.home.vix.com id AA00197; Fri, 25 Aug 95 01:45:01 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA00184; Fri, 25 Aug 95 01:44:59 -0700
Received: from barbera.inferentia.it (barbera.inferentia.it [151.99.220.61]) 
          by relay.smau.it (8.6.12/8.6.12) with SMTP id KAA21480;
          Fri, 25 Aug 1995 10:42:56 +0200
Posted-Date: Fri, 25 Aug 1995 10:42:56 +0200
Received: by barbera.inferentia.it with Microsoft Mail 
          id <303E0D64@barbera.inferentia.it>; Fri, 25 Aug 95 10:50:28 PDT
From: Shari <Davide.Migliavacca@inferentia.it>
To: "'perldb-interest@vix.com'" <perldb-interest@vix.com>
Cc: 'Tim Bunce' <Tim.Bunce@ig.co.uk>
Subject: DBD::Oracle 0.24: ORACLE_HOME determination
Date: Fri, 25 Aug 95 10:50:00 PDT
Message-Id: <303E0D64@barbera.inferentia.it>
Encoding: 14 TEXT
X-Mailer: Microsoft Mail V3.0


The sub driver in package DBD::Oracle (Oracle.pm 1.19, starting at line   
24) does a good job trying to determine where @#$%! is Oracle if   
ORACLE_HOME is not set.
I wonder if an additional effort would be worthwhile: getting the   
"oracle" user home directory.
I had to patch (add an entry) the code because with the brain-damaged   
OSF/1 3.2 and Netsite Communication Server 1.0 combination, user nobody   
with shell sh would never be able to see ORACLE_HOME unless I use the   
'eval exec perl -x' hack in the CGI script emulating WOW.
Of course this is the lowest priority issue I could devise in order to   
distract you all from hard work.
Bye
 Davide Migliavacca (davide.migliavacca@inferentia.it)
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <00363-39@lion>;
          Sat, 26 Aug 1995 13:29:13 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 25 Aug 95 22:40:30 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa05815;
          25 Aug 95 23:40 +0100
Received: by gw.home.vix.com id AA15464; Fri, 25 Aug 95 11:27:19 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA15458; Fri, 25 Aug 95 11:27:15 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa09972;
          25 Aug 95 17:19 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa24378;
          25 Aug 95 17:16 +0100
Received: from ig.co.uk by lion id <20330-0@lion>;
          Fri, 25 Aug 1995 17:18:47 +0100
To: mhm@austin.ibm.com
Subject: Re: Ok, I'm lost... _prepare(sth,statement)
Cc: perldb-interest@vix.com
Date: Fri, 25 Aug 1995 17:18:47 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508251716.aa24378@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> mhm  writes:
> |> 
> |> Ok, I'm finally to the point where I can start debugging DB2 transactions
> |> and I get an error from SQLPrepare saying
> |> 
> |>    "The numeric literal 0x2007cc50" is not valid."
> |> 
> |> So, I have an SQL error, lets check the args, first argument is corrent,
> |> but the second which is supposed to be a text string contains
> |> 
> |>    "DBI::db=HASH(0x2007cc50)"
> |> 
> 
> Well, I now know how I get the latter string.  When I step into
> 
> {   package DBD::DB2::db; # ====== DATABASE ======
>     use strict;
> 
>     sub prepare {
>     my($dbh, $statement)= @_;    <---- @_ contains 3 arguments and my
>                                   ---- string is arg 3
> 
> Anyone have any ideas as to why?
> Oh well, back to the debugger.
> 
You're probably calling prepare in the wrong way. It should be:

	$dbh->prepare($statement);

> Mike
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <00363-40@lion>;
          Sat, 26 Aug 1995 13:29:17 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 25 Aug 95 22:40:30 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa05670;
          25 Aug 95 23:39 +0100
Received: by gw.home.vix.com id AA04690; Fri, 25 Aug 95 09:11:43 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA04684; Fri, 25 Aug 95 09:11:42 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.11/8.6.11) with SMTP id LAA174184;
          Fri, 25 Aug 1995 11:11:40 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA17012;
          Fri, 25 Aug 1995 11:11:38 -0500
From: mhm@austin.ibm.com
Message-Id: <9508251611.AA17012@dax.austin.ibm.com>
To: Tim.Bunce@ig.co.uk
Cc: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: Ok, I'm lost... _prepare(sth,statement)
In-Reply-To: Your message of Fri, 25 Aug 95 09:39:00 -0500. <9508251439.AA27524@dax.austin.ibm.com>
Date: Fri, 25 Aug 95 11:11:37 -0500


mhm  writes:
|> 
|> Ok, I'm finally to the point where I can start debugging DB2 transactions
|> and I get an error from SQLPrepare saying
|> 
|>    "The numeric literal 0x2007cc50" is not valid."
|> 
|> So, I have an SQL error, lets check the args, first argument is corrent,
|> but the second which is supposed to be a text string contains
|> 
|>    "DBI::db=HASH(0x2007cc50)"
|> 


Well, I now know how I get the latter string.  When I step into

{   package DBD::DB2::db; # ====== DATABASE ======
    use strict;

    sub errstr {
    DBD::DB2::errstr(@_);
    }

    sub prepare {
    my($dbh, $statement)= @_;    <---- @_ contains 3 arguments and my
                                  ---- string is arg 3

    # create a 'blank' dbh

    my $sth = DBI::_new_sth($dbh, {
        'Statement' => $statement,
        });

    DBD::DB2::st::_prepare($sth, $statement)
        or return undef;

    $sth;
    }
}


Anyone have any ideas as to why?

Oh well, back to the debugger.

Mike
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <00765-21@lion>;
          Sat, 26 Aug 1995 13:30:06 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 25 Aug 95 23:57:09 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa09893;
          26 Aug 95 0:56 +0100
Received: by gw.home.vix.com id AA27070; Fri, 25 Aug 95 07:39:06 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA27064; Fri, 25 Aug 95 07:39:04 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.11/8.6.11) with SMTP id JAA168414;
          Fri, 25 Aug 1995 09:39:03 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA27524;
          Fri, 25 Aug 1995 09:39:01 -0500
From: mhm@austin.ibm.com
Message-Id: <9508251439.AA27524@dax.austin.ibm.com>
To: Tim.Bunce@ig.co.uk
Cc: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Ok, I'm lost... _prepare(sth,statement)
Date: Fri, 25 Aug 95 09:39:00 -0500


Ok, I'm finally to the point where I can start debugging DB2 transactions
and I get an error from SQLPrepare saying

   "The numeric literal 0x2007cc50" is not valid."

So, I have an SQL error, lets check the args, first argument is corrent,
but the second which is supposed to be a text string contains

   "DBI::db=HASH(0x2007cc50)"

which appears to be some form of DBI magic which has me totally 
confused.   Where did this magic occur? Why?

Thanks.
Mike


------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <13150-12@lion>;
          Mon, 28 Aug 1995 07:03:11 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 26 Aug 95 20:04:31 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa14591;
          26 Aug 95 21:04 +0100
Received: by gw.home.vix.com id AA23781; Sat, 26 Aug 95 12:05:03 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA23772; Sat, 26 Aug 95 12:04:58 -0700
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id VAA24274;
          Sat, 26 Aug 1995 21:04:13 +0200
Date: Sat, 26 Aug 1995 21:04:13 +0200
Message-Id: <199508261904.VAA24274@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: Tim.Bunce@ig.co.uk
Cc: perldb-interest@vix.com
In-Reply-To: <9508261842.af01059@post.demon.co.uk> (message from Tim Bunce on Sat, 26 Aug 1995 18:41:26 +0100)
Subject: Re: Announce: DBI-0.62 and DBD-Oracle-0.25
Reply-To: andreas.koenig@mind.de

  >Available from ftp.demon.co.uk:/pub/perl/db/... as usual.

Aslo at

ftp://ftp.pasteur.fr/pub/Perl/CPAN/pml/byauthor/TIMB/DBI-0.62.tar.Z
ftp://ftp.pasteur.fr/pub/Perl/CPAN/pml/byauthor/TIMB/DBD-Oracle-0.25.tar.Z


andreas
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <13150-18@lion>;
          Mon, 28 Aug 1995 07:03:50 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 26 Aug 95 21:01:44 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa06939;
          26 Aug 95 22:01 +0100
Received: by gw.home.vix.com id AA20438; Sat, 26 Aug 95 11:06:38 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA20433; Sat, 26 Aug 95 11:06:35 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa08760;
          26 Aug 95 18:44 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id af01059;
          26 Aug 95 18:42 +0100
Received: from ig.co.uk by lion id <06784-0@lion>;
          Sat, 26 Aug 1995 18:41:26 +0100
To: perldb-interest@vix.com
Subject: Announce: DBI-0.62 and DBD-Oracle-0.25
Date: Sat, 26 Aug 1995 18:41:26 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508261842.af01059@post.demon.co.uk>

Available from ftp.demon.co.uk:/pub/perl/db/... as usual.

Current DBI Implementation Notes:

        $ary_ref = $sth->fetch; currently always returns the same array ref.
        This may be a feature that stays, then again it may not.


Changes in DBI 0.62,    26 Aug 1995

        Added method redirection method $h->func(..., $method_name).
        This is now the official way to call private driver methods
        that are not part of the DBI standard.  E.g.:
            @ary = $sth->func('ora_types');
        It can also be used to call existing methods. Has very low cost. 
 
        $sth->bind_col columns now start from 1 (not 0) to match SQL.
        $sth->bind_columns now takes a leading attribute parameter (or undef),
        e.g., $sth->bind_columns($attribs, \$col1 [, \$col2 , ...]);
 
        Added handy DBD_ATTRIBS_CHECK macro to vet attribs in XS.
        Added handy DBD_ATTRIB_GET_SVP, DBD_ATTRIB_GET_BOOL and
        DBD_ATTRIB_GET_IV macros for handling attributes.
 
        Fixed STORE for NUM_OF_FIELDS and NUM_OF_PARAMS.
        Added FETCH for NUM_OF_FIELDS and NUM_OF_PARAMS.
 
        Dispatch no longer bothers to call _untie().
        Faster startup via install_method/_add_dispatch changes.


Changes in DBD::Oracle 0.25, 26 Aug 1995:

        User visible changes:

        Fixed bug in parsing '?' style placeholders.
        $sth->bind_param now checks for a too long LONG type string.
        $sth->prepare now takes attributes:
                ora_parse_lang  => 0 | 1 | 2  (v6, auto v6/v7, v7)
                ora_parse_defer => 0 | 1      (control defered parsing)
 
        Other changes to be propogated to other drivers:
 
        Added usage of new DBD_ATTRIB_* macros to XS and C code.
        dbd_bind_ph return value inverted to make it consistent.
        Added braces around XSRETURN_UNDEF in execute.
        Checked for describe failure in FETCH.
        Removed NumParams since it's now called NUM_OF_PARAMS in DBI.
        Updated NEED_DBIXS_VERSION in Oracle.h

Enjoy.

Current plans (in no particular order - and with no promises :-) ...

	Implement DBD::Ingres.
	Implement a row cache for DBD::Oracle.
	Upgrade Oraperl emulation to beta status!

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <18444-3@lion>;
          Tue, 29 Aug 1995 07:01:48 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 28 Aug 95 20:42:13 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa23823;
          28 Aug 95 21:41 +0100
Received: by gw.home.vix.com id AA03662; Mon, 28 Aug 95 02:23:06 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA03641; Mon, 28 Aug 95 02:22:20 -0700
Received: from indigo.UUCP by actcom.co.il with UUCPindigo (8.6.12/actcom-0.1) 
          id LAA00463;
          Mon, 28 Aug 1995 11:07:21 +0300 (rfc931-sender: uucp@localhost)
Received: from sparc1a.Indigo.co.il by Indigo.co.il (4.1/SMI-4.1) id AA20919;
          Mon, 28 Aug 95 10:45:14 IDT
Received: from swamp.indigo.co.il. by sparc1a.Indigo.co.il (4.1/SMI-4.1) 
          id AA03402; Mon, 28 Aug 95 10:50:12 IDT
Received: by swamp.indigo.co.il. (5.x/SMI-SVR4) id AA00664;
          Mon, 28 Aug 1995 10:46:40 +0300
Date: Mon, 28 Aug 1995 10:46:40 +0300
From: Peter Gordon <peter.gordon@indigo.co.il>
Message-Id: <9508280746.AA00664@swamp.indigo.co.il.>
To: distribution:;, see end of body <Indigo.co.il@vix.com>
MMDF-Warning: Parse error in original version of preceding line at 
              punt.demon.co.uk
Subject: Perl5 Places of Interest


A couple of months ago I asked for information regarding where various modules could be found.
I compiled the following list which I post from time to time.

Could you have a quick look to see if anything is amiss, and then I will ask Randall to post it.

Thanks

Peter


Some FTP Archives for Perl Modules:

   Upload to: ftp://ftp.cis.ufl.edu/pub/incoming ?
   Notify:    spp@temples.syrinx.com (Stephen P Potter)

   Upload to: ftp://ftp.demon.co.uk/incoming
   Notify:    uploads@demon.net



News::NNTPClient.pm 
    ftp://metronet.com/pub/perl/perl5/extensions/NNTPClient-0.17
    or send mail at rodger@mail.boi.hp.com with the body of the message beginning with:
          send nntpclient

PERL script that would write Lotus spreadsheets 
  ftp://ftp.cis.ufl.edu/pub/perl/scripts/db/formats/

For any database + perl look under 
    ftp.demon.co.uk:/pub/perl/db
    ftp.demon.co.uk:/pub/perl/db/mod/Sybase/sybperl-2b2.tar.gz

An interface between Postgres-4.2 and Perl5
    ftp.demon.co.uk:pub/perl/db/mod/pgperl5-1.1.tar.gz

Fortran::NameList  - still in alpha
  requests by email to gelato@oort.ap.sissa.it (Sergio Gelato)
  or list mailto:gelato@sissa.it

DBZ_File - will remain alpha indefinitely for lack of interest
  requests by email to ian@pipex.net (Ian Phillipps)

Font::AFM and URI::URL modules
     http://www.oslonett.no/home/aas/perl/
     http://pubweb.nexor.co.uk/public/perl/contrib/lib/URI/URL.html

pgperl
   ftp.ast.cam.ac.uk:/pub/kgb/pgperl/     (United Kingdom)
   linux.nrao.edu:/pub/packages/pgperl/   (United States)
   http://www.ast.cam.ac.uk/~kgb/pgperl.html

   Directory    Size 1291290 Jul  5 17:37 pgplot5.0.2.tar.Z

pgperl_formdemo.pg Example of pgperl
  Basically this is a Web Form which lets the user type in a mathematical
  function which is then plotted and returned as a GIF by a pgperl CGI
  script.
  http://www.ast.cam.ac.uk/cgi-bin/pgperl_formdemo.pg



DBD:db2
  Not ready

SGMLS                                     David Megginson  
  A Post-Processor for SGMLS and NSGMLS
  ftp://aix1.uottawa.ca/pub/dmeggins/
  pointers to the online docs http://www.uottawa.ca/~dmeggins/Index.html

HTML::Base alpha rev 0.6
  ftp://ftp.acoates.com/perl/HTML_0.6.tar.gz

DBI
  Not ready

RCS and RCE
  Waiting approval for release rjray@lookout.ecte.uswc.uswest.com


AddINC                            (by Graham Barr)
AlarmCall
CallerItem
Date::GetDate                     (by Graham Barr)
Domainname
DumpStack
EventDrivenServer
GL
InitializeServer
Installing.general
IPC_SysV
JACKS.html
Language::Prolog                  (by Jack Shirazi)
Mail::RFC822                      (by Graham Barr)
MailTools
MathPari
Net-FTP                           (by Spider Boardman)
Net-ext                           (by Spider Boardman)
NetTools
Prolog-alpha
SelfLoader
SelfStubber
Socket
Statistics::Descriptive           (by Jason Kastner)
UNIVERSAL
Usage                             (by Jack Shirazi)
   ftp://ftp.icnet.uk/icrf-public/biu/perlmods


GD.pm
   http://www-genome.wi.mit.edu/ftp/pub/software/WWW/GD.html
     for creating and manipulating GIF files

Sys::AlarmCall                    (by Jack Shirazi)
  ftp://ftp.icnet.uk/icrf-public/biu/perlmods/AlarmCall-1.1.tar.gz



DoWhatIWant                       (by Water Mellon)
   mailto:A.Koenig@franz.ww.tu-berlin.de

DoWhatIWant+                      (by Water Mellon)
   mailto:A.Koenig@franz.ww.tu-berlin.de

File::Attrib                      (by Tye McQueen)
File::KGlob                       (by Tye McQueen)
   http://www.metronet.com/~tye/

Ioctl                             (by Kenneth Albanowski)
Term::Control                     (by Kenneth Albanowski)
Term::Info                        (by Kenneth Albanowski)
Term::ReadKey                     (by Kenneth Albanowski)
   ftp://numeric.adr.com/pub/perl/modules
   http://numeric.adr.com/Perl/Perl5Modules.html

MD5                               (by Neil Winton)
   ftp://ftp.khoros.unm.edu/pub/perl/extensions/MD5-1.1.tar.gz

Math::Pari                        (by Ilya Zakharevich)
ExtUtils-Peek-0.3.tar.Z
FreezeThaw-0.1buggy.tar.Z
MathPari_a3.tar.gz
Term-Gnuplot-0.2.tar.Z
Term-ReadLine-0.6.tar.Z
Text-Trie-0.2.tar.Z
cperl-mode.el 
perldb-rendesvous.zip
perldb-kit-0.5.tar.gz <--A _really_ good debugger for perl5 - Dumps structures and other wonders
   ftp://ftp.math.ohio-state.edu/pub/users/ilya/perl

Msql                              (by Andreas Koumlnig)
    ftp://franz.ww.tu-berlin.de/pub/perl

News::NNTPClient                  (by Rodger Anderson)
   ftp://metronet.com/pub/perl/perl5/extensions/NNTPClient-0.17

   Also, send mailto:rodger@boi.hp.com to the author and ask for it.  
   Put send nntpclient as the first thing in the body of the message.

SGI::FM                           (by Amos Shapira)
SGI::GL                           (by Amos Shapira)
SGI::SysCalls                     (by Amos Shapira)
   ftp://ftp.huji.ac.il/users/amoss/SGI-*-0.1.tar.gz


Sx                                (by Frederic Chauveau)
   ftp://ftp.pasteur.fr/pub/Perl

Tcl::Tk                             (by Malcolm Beattie)
   ftp://ftp.ox.ac.uk/pub/perl/Tcl-b1.tar.gz> Tcl-b1.tar.gz

Text::TeX                         (by Ilya Zakharevich)
Text::Trie                        (by Ilya Zakharevich)
   ftp://ftp.math.ohio-state.edu/pub/users/ilya/perl

WAIS                              (by Ulrich Pfeifer)
   ftp://ls6-www.informatik.uni-dortmund.de/pub/wais/waisperl*tar.gz


URI::URL 3.02
lwp-0.01.tar.gz 
  http://www.oslonett.no/home/aas/perl/www/
  http://pubweb.nexor.co.uk/public/perl/contrib/lib/URI/URL.html
  http://www-genome.wi.mit.edu/ftp/distribution/software/WWW/ On line manual for URL

netcdf
  http://www.unidata.ucar.edu/packages/netcdf-perl/ 

Perl 4 routines for converting between the various representations of Japanese
  ftp://ftp.ora.com/pub/examples/nutshell/ujip/perl

Tk-b8 
  ftp.wpi.edu:perl5/Tk-b8.tar.gz

PerlVision
  ftp://netropolis.org/pub/users/hash/perlvision.tgz

Other stuff
  http://www.wg.omron.co.jp/~jfriedl/perl/

Interesting Perl Home Pages
  http://www.gov.nb.ca/hotlist/perl.htm


trans    Tim Freeman tsf@netcom.com
   Implements atomic transactions on Unix files in
   Perl.  The package can ensure that consistent changes are made to a
   set of files, even in the presence of power failures, concurrent use,
   and errors.   
   ftp://ftp.netcom.com/pub/ts/tsf/trans.tar.gz

WebPH.pl     Otis Gospodnetic     otisg@cobalt.middlebury.edu
    ftp://cobalt.middlebury.edu/pub/WWW/WebPH/
    http://www.middlebury.edu/cgi-bin/WebPH.pl


HTML info
   http://www.ncsa.uiuc.edu/demoweb/html-primer.html
   http://uts.cc.utexas.edu/~churchh/htmlchek.html
   http://hoohoo.ncsa.uiuc.edu/webmonitor/

NT Perl 5.001l, by hip communications / Microsoft:
	ftp://ntperl.hip.com/ntperl

NT Perl 4.036, by Intergraph:
	ftp://ftp.intergraph.com/pub/win32/perl

ftp tools
 http://www.ee.ryerson.ca:8080/~elf/xapps/ftptools.shar

menu.pl
  ftp://ftp.iastate.edu/pub/perl/perlmenu.v3.2.tar.Z

Online PERL FAQ
  http://pubweb.nexor.co.uk/public/perl/faq/intro.html

Disk Monitor
  I have a Perl/Tk TCP client/server app to do this, using df results.
  Monitored machine/filesystems are categorized into 5 severity levels
  and displayed as colored bar graphs, updated once/minute.  Even allows  
  some primitive load-leveling of user home directories among
  filesystems (no AFS at this time).
  ftp.Lehigh.EDU:pub/monds/monds-2.0.tar.gz
  Requires Perl 5.001m and Tk-b8 extension.

MIME::Base64 
MIME::QuotedPrintable are available from:
   http://www.oslonett.no/home/aas/perl/MIME.tar.gz

Why Perl.
    ftp://mox.perl.com/pub/perl/versus/java
    ftp://mox.perl.com/pub/perl/versus/python
    ftp://mox.perl.com/pub/perl/versus/tcl-discussion
    ftp://mox.perl.com/pub/perl/versus/tcl-complaints


SAFE Perl
    ftp://mox.perl.com/pub/perl/ext/README.Safe
    ftp://mox.perl.com/pub/perl/ext/Safe-b1.tar.gz

%%% overflow headers %%%
To: descarte@mcqueen.com, ajs@ajs.com, amoss@cs.huji.ac.il,
        awilcox@world.std.com, k@otto.ww.TU-Berlin.DE, asherman@world.std.com,
        P.B.Schuller@cuci.nl, bbum@friday.com, petheram@acm.org,
        bailey@HMIVAX.HUMGEN.UPENN.EDU, CGI-perl@webstorm.com,
        perldb-interest@vix.com, dmeggins@aix1.uottawa.ca, darrylo@sr.hp.com,
        roehrich@cray.com, eay@mincom.oz.au, Eric.Arnold@Corp.Sun.COM,
        fmc@pasteur.fr, aas@oslonett.no, greg@ftp.netgate.net,
        bossert@hardees.Rutgers.EDU, Graham.Barr@tiuk.ti.com,
        gsar@engin.umich.edu, gmarzot@baynetworks.com, spaf@cs.purdue.edu,
        ian@pipex.net, ilya@math.ohio-state.edu, js@biu.icnet.uk,
        Jarkko.Hietaniemi@hut.fi, jason@wagner.com, jeffrey@best.com,
        jv@inter.NL.net, jwatson@cnj.digex.net, kgb@ast.cam.ac.uk,
        kjahds@kjahds.com, karl@it.kth.se, lstein@genome.wi.mit.edu,
        lenst@lysator.liu.se, lwall@netlabs.com, libwww-perl@ics.uci.edu,
        mab@wdl.loral.com, Marc.Paquette@crim.ca, mpeppler@itf.ch,
        emergl@stgl.sel.alcatel.de, hedlund@best.com, mhm@austin.ibm.com,
        mbeattie@sable.ox.ac.uk, mrg@mame.mu.oz.au, shields@tembel.org,
        nik@tiuk.ti.com, nwinton@axion.bt.co.uk, ozawa@prince.pe.u-tokyo.ac.jp,
        pat@bronco.advance.com, peter@zditr1.arcs.ac.at,
        pmarquess@bfsec.bt.co.uk, perl5-porters@nicoh.com, guenther@gac.edu,
        pvision@netropolis.org, olson@mcs.anl.gov, rik.harris@fulcrum.com.au,
        rjray@lookout.ecte.uswc.uswest.com, rodger@boi.hp.com,
        S.E.Brenner@bioc.cam.ac.uk, support@unidata.ucar.edu,
        gelato@oort.ap.sissa.it, skunz@iastate.edu, spider@orb.nashua.nh.us,
        ptk@wpi.edu, T.L.Priest@LaRC.NASA.GOV, tchrist@mox.perl.com,
        tom@ssd.csd.harris.com, Tim.Bunce@ig.co.uk, tye@metronet.com,
        pfeifer@woodstock.informatik.uni-dortmund.de, William_Setzer@ncsu.edu,
        wscott@ichips.intel.com, Wei-Yuen_Tan@hip.com, ylu@mail.utexas.edu
%%% end overflow headers %%%
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <18421-24@lion>;
          Tue, 29 Aug 1995 07:04:34 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 29 Aug 95 03:18:29 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa22896;
          29 Aug 95 4:18 +0100
Received: by gw.home.vix.com id AA15498; Mon, 28 Aug 95 17:17:53 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA15492; Mon, 28 Aug 95 17:17:49 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.11/8.6.11) with SMTP id TAA77586;
          Mon, 28 Aug 1995 19:17:45 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA23606;
          Mon, 28 Aug 1995 19:17:43 -0500
From: mhm@austin.ibm.com
Message-Id: <9508290017.AA23606@dax.austin.ibm.com>
To: Tim.Bunce@ig.co.uk
Cc: perldb-interest@vix.com
Subject: DB2perl is minimally working.....
Date: Mon, 28 Aug 95 19:17:42 -0500


Well, I finally have DB2perl working on a minimal level.  :-)  To be
precise, it works as long as the SQL does not contain parameters.
Hence, the foundation for my question, I am trying to use the
DBIc_NUM_FIELDS(sth) macro without success.  

From within my version of int dbd_st_prepare(SV *sth, char *statement)
I think I am calling DBIc_NUM_FIELDS(x) with the wrong argument, while
the num_fields member of the dbih_stc_t structure gets set, it is only
set in the local instance of the structure.  

Currently, the code does the following

int
dbd_st_prepare(sth, statement)
    SV *sth;
    char *statement;
{
    D_imp_sth(sth);
    D_imp_dbh_from_sth;
    short params =0;
    .....
    SQLNumParams(imp_sth->phstmt,&params); /* returns # of parameters */
    .....
    DBIc_NUM_PARAMS(imp_sth) = params;
	DBIc_IMPSET_on(imp_sth);
    return 1;
}

Yet, after I return from said function the value of $sth->{'NUMPARAMS'}
is undefined.  Am I missing something intuitively obvious?

Mike

------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03684-1@lion>;
          Wed, 30 Aug 1995 10:50:17 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 29 Aug 95 16:39:53 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa28746;
          29 Aug 95 17:39 +0100
Received: by gw.home.vix.com id AA15441; Tue, 29 Aug 95 00:48:41 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA15425; Tue, 29 Aug 95 00:47:32 -0700
Received: from padington.ic.uva.nl (paddington.ic.uva.nl) by mail.ic.uva.nl 
          with SMTP id AA12278 (5.67b/IDA-1.4.4 for perldb-interest@vix.com);
          Tue, 29 Aug 1995 09:46:52 +0200
Message-Id: <199508290746.AA12278@mail.ic.uva.nl>
Date: Tue, 29 Aug 1995 09:53:30 (MET)
From: ks@ic.uva.nl, s@ic.uva.nl
MMDF-Warning: Parse error in original version of preceding line at 
              punt.demon.co.uk
Subject: Happy birthday DBperl!
To: perldb-interest@vix.com
Cc: 
X-Mailer: WSBeeper 2.6

As Tim Bunce <Tim.Bunce@ig.co.uk> wrote on Thu, 17 Aug 1995 22:39:06
+0100:
>
> For those too young to remember, the DBperl effort will have its
> third birthday on September 29th. It would be kind'a nice to have
> something to show for it after three years :-)
>

              ^  ^  ^
              |  |  |
             --------
            ==========
           \----------/

It's a small cake for me but a big one for mankind Tim!

Regards,
Karel Sprenger <ks@ic.uva.nl>

Informatiseringscentrum                     | phone: +31-20-525 2302
Universiteit van Amsterdam                  |        +31-20-525 2741
Turfdraagsterpad 9, NL-1012 XT  AMSTERDAM   | fax  : +31-20-525 2084
*** PGP Public Key available on servers *** | home : +31-20-675 0989

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03895-22@lion>;
          Wed, 30 Aug 1995 10:53:07 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 29 Aug 95 20:18:13 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa24993;
          29 Aug 95 21:17 +0100
Received: by gw.home.vix.com id AA28507; Tue, 29 Aug 95 10:02:16 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA28499; Tue, 29 Aug 95 10:02:15 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa04878;
          29 Aug 95 17:11 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id af26976;
          29 Aug 95 17:09 +0100
Received: from ig.co.uk by lion id <27220-0@lion>;
          Tue, 29 Aug 1995 13:42:09 +0100
To: Davide.Migliavacca@inferentia.it
Subject: Re: (Unimportant) Patch to dbdimp.c
Cc: perldb-interest@vix.com
Date: Tue, 29 Aug 1995 13:42:09 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508291709.af26976@post.demon.co.uk>


> From: Shari <Davide.Migliavacca@inferentia.it>
>
> To avoid core dumps in AIX where the query is long:
>
> Davide Migliavacca (davide.migliavacca@inferentia.it)
>
> *** dbdimp.c  Sat Aug 26 19:39:17 1995
> --- dbdimp.c.new      Mon Aug 28 12:11:39 1995

> !     char msg[99];
>       if (oparse_defer == 0)  /* was actually parsed now      */
> !         sprintf(msg,"possibly parse error at character %d of %d in '%s'",

> --- 311,319 ----

> !     char msg[200];
>       if (oparse_defer == 0)  /* was actually parsed now      */
> !         sprintf(msg,"possibly parse error at character %d of %d in '%.140s'",
Yes, thanks. I'd meant to do this awhile back (I think someone else sent
me a similar patch ages ago).

Here's my new version which you could try out for me:

    if (oparse(imp_sth->cda, (text*)imp_sth->statement, (sb4)-1,
                (sword)oparse_defer, (ub4)oparse_lng)) {
        SV  *msgsv;
        char msg[99];
        sprintf(msg,"possibly parse error at character %d of %d in '",
            imp_sth->cda->peo+1, (int)strlen(imp_sth->statement));
        msgsv = sv_2mortal(newSVpv(msg,0));
        sv_catpv(msgsv, imp_sth->statement);
        sv_catpv(msgsv, "'");
        ora_error(sth, imp_sth->cda, imp_sth->cda->rc, SvPV(msgsv,na));
        oclose(imp_sth->cda);   /* close the cursor     */
        return 0;
    }

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03895-32@lion>;
          Wed, 30 Aug 1995 10:54:04 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 29 Aug 95 22:16:12 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa25250;
          29 Aug 95 23:15 +0100
Received: by gw.home.vix.com id AA28472; Tue, 29 Aug 95 10:01:37 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA28466; Tue, 29 Aug 95 10:01:36 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id ab04844;
          29 Aug 95 17:11 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ab26976;
          29 Aug 95 17:08 +0100
Received: from ig.co.uk by lion id <26743-0@lion>;
          Tue, 29 Aug 1995 12:43:10 +0100
To: mhm@austin.ibm.com
Subject: Re: DB2perl is minimally working.....
Cc: perldb-interest@vix.com
Date: Tue, 29 Aug 1995 12:43:10 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508291708.ab26976@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Well, I finally have DB2perl working on a minimal level.  :-)

Great.

> To be precise, it works as long as the SQL does not contain parameters.
> Hence, the foundation for my question, I am trying to use the
> DBIc_NUM_FIELDS(sth) macro without success.  
> 
> >From within my version of int dbd_st_prepare(SV *sth, char *statement)
> I think I am calling DBIc_NUM_FIELDS(x) with the wrong argument, while
> the num_fields member of the dbih_stc_t structure gets set, it is only
> set in the local instance of the structure.  
> 
> Currently, the code does the following
> 
Umm, the comments above say 'DBIc_NUM_FIELDS', the code below says
'DBIc_NUM_PARAMS'.

> int
> dbd_st_prepare(sth, statement)
>     SV *sth;
>     char *statement;
> {
>     D_imp_sth(sth);
>     D_imp_dbh_from_sth;
>     short params =0;
>     .....
>     SQLNumParams(imp_sth->phstmt,&params); /* returns # of parameters */
>     .....
>     DBIc_NUM_PARAMS(imp_sth) = params;
> 	DBIc_IMPSET_on(imp_sth);
>     return 1;
> }
> 
> Yet, after I return from said function the value of $sth->{'NUMPARAMS'}
> is undefined.  Am I missing something intuitively obvious?
> 
I presume $sth->{'NUMPARAMS'} should be $sth->{'NUM_OF_PARAMS'} since
'NUM_OF_PARAMS' is the attribute name that the DBI recognises.

I'd appreciate a snapshot of your work-so-far Mike at some point Mike.
Given the closeness of the DB2 interface and SQLCLI/ODBC It'll be
interesting for me.

> Mike
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03684-51@lion>;
          Wed, 30 Aug 1995 10:54:37 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 30 Aug 95 00:06:13 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa17390;
          30 Aug 95 1:06 +0100
Received: by gw.home.vix.com id AA28587; Tue, 29 Aug 95 10:03:14 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA28579; Tue, 29 Aug 95 10:03:12 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa04880;
          29 Aug 95 17:11 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ag26976;
          29 Aug 95 17:09 +0100
Received: from ig.co.uk by lion id <27381-0@lion>;
          Tue, 29 Aug 1995 13:55:06 +0100
To: Davide.Migliavacca@inferentia.it
Subject: Re: Error building DBI 0.62 on AIX 3.2.5
Cc: perldb-interest@vix.com
Date: Tue, 29 Aug 1995 13:55:06 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508291709.ag26976@post.demon.co.uk>


> From: Shari <Davide.Migliavacca@inferentia.it>
> 
> uname -a
> AIX sauternes 2 3 002021417600
> 
> Only warning during build:
> 
>  cc -c -D_ALL_SOURCE -O  -I/usr/local/lib/perl5/aix/CORE   DBI.c
> "DBI.c", line 1049.19: 1506-152 (W) Operands are pointers to different   
> types.
> 
Should be harmless (just add an (AV*) cast on the corresponding .xs line).

> But: make test produces
> 
> Can't locate DBI object method "0" via package "DBD::Switch::dr" at   
> t/min.t line 19.

Umm, perhaps that cast problem is not so harmless on AIX. This looks like
the line:

	$h->debug(0);

is being treated as

	$h->0();

which would happen if the debug method had been given the IMA_FUNC_REDIRECT
attribute.

Add the cast and let me know if that fixes it or not.

> Davide Migliavacca (davide.migliavacca@inferentia.it)
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <04955-0@lion>;
          Wed, 30 Aug 1995 10:55:31 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 30 Aug 95 04:24:53 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa01153;
          30 Aug 95 5:24 +0100
Received: by gw.home.vix.com id AA27340; Tue, 29 Aug 95 15:58:17 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA27328; Tue, 29 Aug 95 15:58:14 -0700
Received: from alma.mcqueen.com (alma.mcqueen.com [193.133.160.249]) 
          by fruitbat.mcqueen.com (8.6.12/8.6.12) with ESMTP id XAA24381;
          Tue, 29 Aug 1995 23:52:34 +0100
From: descarte@mcqueen.com
Received: (from descarte@localhost) by alma.mcqueen.com (8.6.12/8.6.12) 
          id XAA13444; Tue, 29 Aug 1995 23:58:24 +0100
Message-Id: <199508292258.XAA13444@alma.mcqueen.com>
Subject: DBD::mSQL driver *New release*
To: perldb-interest@vix.com, msql-list@bond.edu.au
Date: Tue, 29 Aug 1995 23:58:23 +0100 (BST)
Cc: k@anna.mind.de, Tim.Bunce@ig.co.uk
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 606

Hi.

Just a quick note to say that the newest release of the mSQL driver for
perl5 has been released on:

	ftp://ftp.mcqueen.com/pub/languages/perl5/DBPerl

at version 0.60pl0. This release has been kicked out quickly to see how
well it build on machines other than mine.

The upgrades have been due to upheaval in the DBI interface.

Some bug fixing from previous releases has been done, and there are a few more 
to come by the end of the week.

Not all the mSQL API has been implemented yet, but the major stuff is there!

Let me know how it goes!

A.

-- 
Alligator Descartes	|
descarte@mcqueen.com	| 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <19286-23@lion>;
          Thu, 31 Aug 1995 07:03:10 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 30 Aug 95 20:24:05 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa21715;
          30 Aug 95 21:23 +0100
Received: by gw.home.vix.com id AA27355; Wed, 30 Aug 95 06:31:06 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA27344; Wed, 30 Aug 95 06:31:04 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id ab11844;
          30 Aug 95 13:11 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ag27772;
          30 Aug 95 13:08 +0100
Received: from ig.co.uk by lion id <07300-0@lion>;
          Wed, 30 Aug 1995 12:36:55 +0100
To: perldb-interest@vix.com, ks@ic.uva.nl, s@ic.uva.nl
Subject: Re: Happy birthday DBperl!
Date: Wed, 30 Aug 1995 12:36:55 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508301308.ag27772@post.demon.co.uk>


> From: ks@ic.uva.nl, s@ic.uva.nl
> 
> As Tim Bunce <Tim.Bunce@ig.co.uk> wrote on Thu, 17 Aug 1995 22:39:06 +0100:
> >
> > For those too young to remember, the DBperl effort will have its
> > third birthday on September 29th. It would be kind'a nice to have
> > something to show for it after three years :-)
> >
> 
>               ^  ^  ^
>               |  |  |
>              --------
>             ==========
>            \----------/
> 
> It's a small cake for me but a big one for mankind Tim!
> 
Hey, thanks!

(It'll also double as a rather good steam ship :-)

Can I be gready and ask for another one on the September 29th...

> Regards,
> Karel Sprenger <ks@ic.uva.nl>
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <19286-25@lion>;
          Thu, 31 Aug 1995 07:03:22 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 30 Aug 95 20:42:06 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa01198;
          30 Aug 95 21:41 +0100
Received: by gw.home.vix.com id AA20304; Wed, 30 Aug 95 04:52:31 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA20299; Wed, 30 Aug 95 04:52:29 -0700
Message-Id: <9508301152.AA20299@gw.home.vix.com>
Received: from mip.lasc.lockheed.com by netserve.lasc.lockheed.com 
          with SMTP (1.37.109.4/16.2) id AA12937; Wed, 30 Aug 95 07:52:13 -0400
Received: by mip.lasc.lockheed.com (1.38.193.4/16.2) id AA10718;
          Wed, 30 Aug 1995 07:52:00 -0400
Date: Wed, 30 Aug 1995 07:52:00 -0400
From: Terry Greenlaw <z50816@mip.lasc.lockheed.com>
Apparently-To: perldb-interest@vix.com

Tim, I'm trying to install DBI 0.62, and get the following message during "make test".
The "perl Makefile.PL" and "make" went okay. I tried this before and after a "make install".
Shouldn't it be trying _install_method instead of _install_me ?
Any ideas?

TIA,

tog



Mip> make test
        /usr/bin/perl -I./blib -I./blib -I/disk3/perl5/lib/perl5/hpux -I/disk3/perl5/lib/perl5
 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/min...............Can't locate auto/DBI/_install_me.al in @INC at blib/DBI.pm line 100
FAILED on test 1
Failed 1 test, 0.00% okay.
Files=1,  Tests=6,  1 secs ( 0.30 cusr  0.06 csys =  0.36 cpu)
        /usr/bin/perl -I./blib -I./blib -I/disk3/perl5/lib/perl5/hpux -I/disk3/perl5/lib/perl5
 test.pl
test.pl
DBI test application $Revision: 1.12 $
Can't locate auto/DBI/_install_me.al in @INC at DBI.pm line 100
BEGIN failed--compilation aborted at test.pl line 18.
*** Error code 2

Stop.

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <19286-33@lion>;
          Thu, 31 Aug 1995 07:04:01 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 30 Aug 95 22:11:34 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa17259;
          30 Aug 95 23:10 +0100
Received: by gw.home.vix.com id AA10727; Wed, 30 Aug 95 09:37:50 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA10718; Wed, 30 Aug 95 09:37:49 -0700
Message-Id: <9508301637.AA10718@gw.home.vix.com>
Received: from mip.lasc.lockheed.com by netserve.lasc.lockheed.com 
          with SMTP (1.37.109.4/16.2) id AA13908; Wed, 30 Aug 95 12:37:34 -0400
Received: by mip.lasc.lockheed.com (1.38.193.4/16.2) id AA02210;
          Wed, 30 Aug 1995 12:37:21 -0400
Date: Wed, 30 Aug 1995 12:37:21 -0400
From: Terry Greenlaw <z50816@mip.lasc.lockheed.com>
To: perldb-interest@vix.com
Subject: DBI not compiling

Oops,
An addendum to the last message.

DBI.bs is zero length. Hmmmmm.

tog
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <19286-35@lion>;
          Thu, 31 Aug 1995 07:04:13 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 30 Aug 95 22:13:49 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa18510;
          30 Aug 95 23:13 +0100
Received: by gw.home.vix.com id AA27350; Wed, 30 Aug 95 06:31:06 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA27345; Wed, 30 Aug 95 06:31:05 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa11849;
          30 Aug 95 13:11 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ah27772;
          30 Aug 95 13:08 +0100
Received: from ig.co.uk by lion id <07351-0@lion>;
          Wed, 30 Aug 1995 12:42:04 +0100
To: Davide.Migliavacca@inferentia.it
Subject: RE: Error building DBI 0.62 on AIX 3.2.5
Cc: perldb-interest@vix.com
Date: Wed, 30 Aug 1995 12:42:04 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508301308.ah27772@post.demon.co.uk>


> From: Shari <Davide.Migliavacca@inferentia.it>
> 
> Nope.
> What I have done:
> Modified line 980 in DBI.xs
> 
>   if (atype == SVt_PVAV) {
> !            ima_usage_av = (AV *)SvRV(attribs);
>         }
> 
> adding the cast as (I think) you've said.

That's right.

> Make now doesn't complain an hitch.
> Anyway, make test results in exactly the same error.
> Anything I can do?

Since I can't reproduce it you'll have to debug it yourself.
Things to consider:

	Run with PERL_DBI_DEBUG=3
	Is it the first method call that goes through the dispatch function?
	Check the value of ima->flags in the dispatch function.

Is anyone else having this problem?

>  Davide
>
Tim.
 
>  ----------
> 
> > But: make test produces
> >
> > Can't locate DBI object method "0" via package "DBD::Switch::dr" at
> > t/min.t line 19.
> 
> Umm, perhaps that cast problem is not so harmless on AIX. This looks like
> the line:
> 
>         $h->debug(0);
> 
> is being treated as
> 
>         $h->0();
> 
> which would happen if the debug method had been given the   
> IMA_FUNC_REDIRECT
> attribute.
> 
> Add the cast and let me know if that fixes it or not.
> 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <19286-40@lion>;
          Thu, 31 Aug 1995 07:04:42 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 30 Aug 95 22:53:58 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa09072;
          30 Aug 95 23:52 +0100
Received: by gw.home.vix.com id AA27343; Wed, 30 Aug 95 06:31:02 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA27334; Wed, 30 Aug 95 06:30:57 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa11859;
          30 Aug 95 13:11 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ak27772;
          30 Aug 95 13:08 +0100
Received: from ig.co.uk by lion id <07828-0@lion>;
          Wed, 30 Aug 1995 13:07:15 +0100
To: z50816@mip.lasc.lockheed.com
Subject: _install_me.al
Cc: perldb-interest@vix.com
Date: Wed, 30 Aug 1995 13:07:15 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508301308.ak27772@post.demon.co.uk>


> From: Terry Greenlaw <z50816@mip.lasc.lockheed.com>
> 
> Tim, I'm trying to install DBI 0.62, and get the following message during "make test".
> The "perl Makefile.PL" and "make" went okay. I tried this before and after a
> "make install".
> Shouldn't it be trying _install_method instead of _install_me ?
> Any ideas?
> 
> Mip> make test
>         /usr/bin/perl -I./blib -I./blib -I/disk3/perl5/lib/perl5/hpux -I/disk3/perl5/lib/perl5
>  -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
> t/min...............Can't locate auto/DBI/_install_me.al in @INC at blib/DBI.pm line 100
> FAILED on test 1

_install_method used to be defined in DBI.pm, it's now defined in DBI.xs.

The auto/DBI/_install_me.al error is simply a symptom of _install_method not
being found and the AutoLoader doing its best to find one (the shortened name
is a last ditch attempt to deal with filesystems which don't support long names).

The real question is why did perl not see the _install_method in DBI.xs?

Make sure that DBI.c, DBI.o and DBI.so get built and DBI.so gets copied into
./blib. If so then try again with PERL_DL_DEBUG=2 and check that the DynaLoader
is loading the right .so file.

Has anyone else had this problem?

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <19286-45@lion>;
          Thu, 31 Aug 1995 07:05:16 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 30 Aug 95 23:34:43 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa29604;
          31 Aug 95 0:34 +0100
Received: by gw.home.vix.com id AA10464; Wed, 30 Aug 95 09:32:16 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA10452; Wed, 30 Aug 95 09:32:14 -0700
Message-Id: <9508301632.AA10452@gw.home.vix.com>
Received: from mip.lasc.lockheed.com by netserve.lasc.lockheed.com 
          with SMTP (1.37.109.4/16.2) id AA13893; Wed, 30 Aug 95 12:31:59 -0400
Received: by mip.lasc.lockheed.com (1.38.193.4/16.2) id AA01670;
          Wed, 30 Aug 1995 12:31:47 -0400
Date: Wed, 30 Aug 1995 12:31:47 -0400
From: Terry Greenlaw <z50816@mip.lasc.lockheed.com>
To: perldb-interest@vix.com
Subject: Re: _install_me.al

> From <@post.demon.co.uk,@ignite.demon.co.uk:Tim.Bunce@ig.co.uk> Wed Aug 30 09:30 EDT 1995
> Received: from marble.litc.lockheed.com by mip.lasc.lockheed.com with SMTP
> 	(1.38.193.4/16.2) id AA17088; Wed, 30 Aug 1995 09:30:23 -0400
> Return-Path: <@post.demon.co.uk,@ignite.demon.co.uk:Tim.Bunce@ig.co.uk>
> Received: from disperse.demon.co.uk (disperse.demon.co.uk [158.152.1.77]) by marble.litc.lockheed.com (8.6.12/8.6.9) with SMTP id GAA04937 for <z50816@mip.lasc.lockheed.com>; Wed, 30 Aug 1995 06:34:37 -0700
> Received: from post.demon.co.uk by disperse.demon.co.uk id aa11859;
>           30 Aug 95 13:11 +0100
> Received: from ignite.demon.co.uk by post.demon.co.uk id ak27772;
>           30 Aug 95 13:08 +0100
> Received: from ig.co.uk by lion id <07828-0@lion>;
>           Wed, 30 Aug 1995 13:07:15 +0100
> To: z50816@mip.lasc.lockheed.com
> Subject: _install_me.al
> Cc: perldb-interest@vix.com
> Date: Wed, 30 Aug 1995 13:07:15 +0100
> From: Tim Bunce <Tim.Bunce@ig.co.uk>
> Sender: Tim.Bunce@ig.co.uk
> Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
> Message-Id:  <9508301308.ak27772@post.demon.co.uk>
> Status: RO


> The real question is why did perl not see the _install_method in DBI.xs?

> Make sure that DBI.c, DBI.o and DBI.so get built and DBI.so gets copied into
> ./blib. If so then try again with PERL_DL_DEBUG=2 and check that the DynaLoader
> is loading the right .so file.

> Has anyone else had this problem?

> Tim.

I have DBI.sl and DBI.xs under ./blib/auto/DBI.

SO and DLEXT are both set to sl

LD_RUN_PATH="" ls -o ./blib/auto/DBI/DBI.sl -b DBI.o 
   looks a little suspicious, though


The STDERR output from make test PERL_DL_DEBUG=2:

DynaLoader.pm loaded (/lib/pa1.1 /lib /usr/lib /usr/local/lib)
Can't locate auto/DBI/_install_me.al in @INC at blib/DBI.pm line 100
Failed 1 test, 0.00% okay.
DynaLoader.pm loaded (/lib/pa1.1 /lib /usr/lib /usr/local/lib)
Can't locate auto/DBI/_install_me.al in @INC at DBI.pm line 100
BEGIN failed--compilation aborted at test.pl line 18.

Stop.


Help......

tog

Terry Greenlaw (on-site @ Lockheed)                      Encompass Technologies
z50816@mip.lasc.lockheed.com                             terry@encompass.is.net
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <19286-49@lion>;
          Thu, 31 Aug 1995 07:05:47 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 31 Aug 95 00:53:21 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id ad02915;
          31 Aug 95 1:52 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <12526-0@frigate.doc.ic.ac.uk>; Wed, 30 Aug 1995 21:57:12 +0100
Received: by gw.home.vix.com id AA03819; Wed, 30 Aug 95 08:09:18 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA03814; Wed, 30 Aug 95 08:09:17 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.11/8.6.11) with SMTP id KAA158161;
          Wed, 30 Aug 1995 10:09:16 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for mhm@austin.ibm.com at austin.ibm.com; id AA26346;
          Wed, 30 Aug 1995 10:09:13 -0500
From: mhm@austin.ibm.com
Message-Id: <9508301509.AA26346@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: mhm@austin.ibm.com, perldb-interest@vix.com
Subject: Re: DB2perl is minimally working.....
In-Reply-To: Your message of Wed, 30 Aug 95 14:44:29 +0100. <9508301508.ac17339@post.demon.co.uk>
Date: Wed, 30 Aug 95 10:09:12 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|> > |> 'NUM_OF_PARAMS' is the attribute name that the DBI recognises.
|> > 
|> > Hmmmmm, could have sworn my copy of DBI.pm said "NUMPARAMS".
|> 
|> Don't trust the text at the end of DBI.pm. It's not been updated much.
|> Trust the code.

Reminder posted in painfully obvious place on monitor :-)

|> > I did just try it with the correct attribute "NUM_OF_PARAMS" without
|> > success.  It gets set locally but not globally.
|> > 
|> Does your .xs code for FETCH look like this:
|> 
|> void
|> FETCH(sth, keysv)
|>     SV *        sth
|>     SV *        keysv
|>     CODE:
|>     SV *valuesv = dbd_st_FETCH(sth, keysv);
|>     if (!valuesv)
|>         valuesv = DBIS->get_attr(sth, keysv);
|>     ST(0) = valuesv;    /* dbd_st_FETCH did sv_2mortal  */
|> 
|> The hand-off to DBIS->get_attr is a recent addition. It's DBIS->get_attr
|> that knows about NUM_* and so the hand-off is required (unless your own
|> dbd_st_FETCH is willing to supply a value).
|> 
|> You should be able to write your DB2.xs file something like this:
|> 
|> 	sed -e 's/Oracle/DB2/g' < ../Oracle/Oracle.xs > DB2.xs
|> 
|> I strongly recommend this approach since it'll make it *much* easier
|> to keep up with interface changes.

At this point, the only things I'm changing are the guts of dbdimp.[c,h],
and a few Oracle references in Oracle/DB2.pm, nothing has changed in any
DBI file or any *.xs file.

Well, then it looks like I have some form of linking/interface problem
as FETCH never gets called when I envoke DBIc_NUM_PARAMS(imp_sth).  In
fact, it behaves as if it were an assignment macro -- with out a function
call.

Are you sure that invoking DBIc_NUM_PARAMS(imp_sth) should cause 
FETCH(sth,keysv) to be called? 

From DBIXS.h:

#define _imp2com(p,f)       ((p)->com.f)
#define DBIc_NUM_PARAMS(imp)    _imp2com(imp, num_params)


Implies to me that only an assigment is taking place, not a function call.

|> > 
|> > P.S.  Where are you announcing the release of newer versions of DBI/DBD?
|> >       I have not seen any announcements in a while.  Yet, everytime I
|> >       check ftp.demon.co.uk there is a new version.
|> >
|> They've all been announced to perldb-interest. Are you still getting
|> perldb-interest messages? I'll send copies of the announcements to you.
|> 

Well, I was subscribed and I have not asked to be unsubscribed.  Maybe
I'll try resubscribing.

Mike Moran
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <19286-50@lion>;
          Thu, 31 Aug 1995 07:05:55 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 31 Aug 95 00:53:23 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id ae02915;
          31 Aug 95 1:52 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <12705-0@frigate.doc.ic.ac.uk>; Wed, 30 Aug 1995 22:04:34 +0100
Received: by gw.home.vix.com id AA21764; Wed, 30 Aug 95 05:17:50 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA21759; Wed, 30 Aug 95 05:17:48 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.11/8.6.11) with SMTP id HAA66600;
          Wed, 30 Aug 1995 07:17:46 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for mhm@austin.ibm.com at austin.ibm.com; id AA17694;
          Wed, 30 Aug 1995 07:17:44 -0500
From: mhm@austin.ibm.com
Message-Id: <9508301217.AA17694@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: mhm@austin.ibm.com, perldb-interest@vix.com
Subject: Re: DB2perl is minimally working.....
In-Reply-To: Your message of Tue, 29 Aug 95 12:43:10 +0100. <9508291708.ab26976@post.demon.co.uk>
Date: Wed, 30 Aug 95 07:17:43 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|> > To be precise, it works as long as the SQL does not contain
|> > parameters.
|> > Hence, the foundation for my question, I am trying to use the
|> > DBIc_NUM_FIELDS(sth) macro without success.  
|> > 
|> > >From within my version of int dbd_st_prepare(SV *sth, char
|> > *statement)
|> > I think I am calling DBIc_NUM_FIELDS(x) with the wrong argument, while
|> > the num_fields member of the dbih_stc_t structure gets set, it is only
|> > set in the local instance of the structure.  
|> > 
|> > Currently, the code does the following
|> > 
|> Umm, the comments above say 'DBIc_NUM_FIELDS', the code below says
|> 'DBIc_NUM_PARAMS'.

Well, actually either one.  I tried both DBIc_NUM_FIELDS and 
DBIc_NUM_PARAMS, both show the same behavior.  Too much cut & paste while
my wife was attempting to talk to me......

|> > 
|> > Yet, after I return from said function the value of
|> > $sth->{'NUMPARAMS'}
|> > is undefined.  Am I missing something intuitively obvious?
|> > 
|> I presume $sth->{'NUMPARAMS'} should be $sth->{'NUM_OF_PARAMS'} since
|> 'NUM_OF_PARAMS' is the attribute name that the DBI recognises.

Hmmmmm, could have sworn my copy of DBI.pm said "NUMPARAMS".  I did just
try it with the correct attribute "NUM_OF_PARAMS" without success.  It
gets set locally but not globally.

At this point, I'm assuming that I am calling DBIc_NUM_PARAMS with the
wrong argument, but so far I don't have a clue as to the correct argument.

dbd_st_prepare(SV *sth, char *statement, SV *attribs)
{
    D_imp_sth(sth);
    D_imp_dbh_from_sth;
 ....
    DBIc_NUM_PARAMS(imp_sth) = params;
}

where imp_sth is derived from the incomming sth, from my current 
understanding is correct......but from imperical evidence, it is not
correct.

|> I'd appreciate a snapshot of your work-so-far Mike at some point Mike.
|> Given the closeness of the DB2 interface and SQLCLI/ODBC It'll be
|> interesting for me.

Aside from figuring out what you are doing in the DBI/DBD::Oracle, my
second largest problem is getting through all red tape and bureaucratic
B*llSh*t to be able to release this on the net.  Unfortunately, at this
time I can't release it under penalty of my job.  On the brightside, we
have convinced at least one lawyer that it should be done :-)


Mike


P.S.  Where are you announcing the release of newer versions of DBI/DBD?
      I have not seen any announcements in a while.  Yet, everytime I
      check ftp.demon.co.uk there is a new version.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <20080-20@lion>;
          Thu, 31 Aug 1995 07:07:14 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 31 Aug 95 01:21:15 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa14221;
          31 Aug 95 2:20 +0100
Received: by gw.home.vix.com id AA23600; Wed, 30 Aug 95 12:03:15 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA23595; Wed, 30 Aug 95 12:03:14 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.11/8.6.11) with SMTP id OAA56749;
          Wed, 30 Aug 1995 14:03:12 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA17452;
          Wed, 30 Aug 1995 14:03:06 -0500
From: mhm@austin.ibm.com
Message-Id: <9508301903.AA17452@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com
Subject: Any problems with DBI::Dispatch
Date: Wed, 30 Aug 95 14:03:06 -0500


Next problem an error message from the dispatch routine in DBI

DBI DBI::db=HASH(0x200a9ef0): invalid number of parameters: handle + -1
Usage: $h->DBI::db=HASH(0x200a9ef0)() at builddb line 32.

which comes from DBI.xs:

    if (ima->flags & IMA_HAS_USAGE) {
        char *err = NULL;
        char msg[200];

        if (ima->minargs && (items < ima->minargs
                || (ima->maxargs>0 && items > ima->maxargs))) {
        /* the error reporting is a little tacky here */
        sprintf(msg,
            "DBI %s: invalid number of parameters: handle + %ld\n",
            meth_name, items-1);
        err = msg;
        }
        /* arg type checking could be added here later */
        if (err) {
        croak("%sUsage: %s->%s(%s)", err, "$h", meth_name,
            (ima->usage) ? ima->usage : "...?");
        }
    }


In the above where is items comming from?  In my current case, the call
which generates this error is
 
   $dbh->commit();

which is currently not being dispatched to dbd_db_commit(dbh);

Thanks.

Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <19286-59@lion>;
          Thu, 31 Aug 1995 07:08:05 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 31 Aug 95 01:58:26 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa29214;
          31 Aug 95 2:57 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id ab24238;
          31 Aug 95 0:00 GMT-60:00
Received: by gw.home.vix.com id AA03113; Wed, 30 Aug 95 07:59:39 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA03108; Wed, 30 Aug 95 07:59:38 -0700
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id JAA11993; Wed, 30 Aug 1995 09:59:37 -0500
Date: Wed, 30 Aug 1995 09:59:37 -0500 (CDT)
From: Ben A Lindstrom <mouring@netnet.net>
Cc: perldb-interest@vix.com
Subject: New to DBI.
In-Reply-To: <9508301308.ah27772@post.demon.co.uk>
Message-Id: <Pine.SUN.3.91.950830095502.11589C-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I'm new to DBI and I'm just in the process of setting up my machine to do
developement of a QuickBase perl module.

My question is how stable/finished is v06 of the specs?   And how far along
is Oracle?

If DBI is not far enought along I might have to write my own interface 
for the meantime.

BTW, I read part of the specs and I seem to be missing something...Is there
a developer's spec for implementing the database drivers.

Thanks.

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <19286-61@lion>;
          Thu, 31 Aug 1995 07:08:17 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 31 Aug 95 02:13:59 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa05452;
          31 Aug 95 3:13 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id ab23832;
          30 Aug 95 23:58 GMT-60:00
Received: by gw.home.vix.com id AA01375; Wed, 30 Aug 95 07:33:53 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA01370; Wed, 30 Aug 95 07:33:49 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa24265;
          30 Aug 95 15:10 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ac17339;
          30 Aug 95 15:08 +0100
Received: from ig.co.uk by lion id <09024-0@lion>;
          Wed, 30 Aug 1995 14:44:29 +0100
To: mhm@austin.ibm.com
Subject: Re: DB2perl is minimally working.....
Cc: perldb-interest@vix.com
Date: Wed, 30 Aug 1995 14:44:29 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508301508.ac17339@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> |> > To be precise, it works as long as the SQL does not contain
> |> > parameters.
> |> > Hence, the foundation for my question, I am trying to use the
> |> > DBIc_NUM_FIELDS(sth) macro without success.  
> |> > 
> |> > >From within my version of int dbd_st_prepare(SV *sth, char
> |> > *statement)
> |> > I think I am calling DBIc_NUM_FIELDS(x) with the wrong argument, while
> |> > the num_fields member of the dbih_stc_t structure gets set, it is only
> |> > set in the local instance of the structure.  
> |> > 
> |> > Currently, the code does the following
> |> > 
> |> Umm, the comments above say 'DBIc_NUM_FIELDS', the code below says
> |> 'DBIc_NUM_PARAMS'.
> 
> Well, actually either one.  I tried both DBIc_NUM_FIELDS and 
> DBIc_NUM_PARAMS, both show the same behavior.  Too much cut & paste while
> my wife was attempting to talk to me......
> 
:-)

> |> > 
> |> > Yet, after I return from said function the value of
> |> > $sth->{'NUMPARAMS'}
> |> > is undefined.  Am I missing something intuitively obvious?
> |> > 
> |> I presume $sth->{'NUMPARAMS'} should be $sth->{'NUM_OF_PARAMS'} since
> |> 'NUM_OF_PARAMS' is the attribute name that the DBI recognises.
> 
> Hmmmmm, could have sworn my copy of DBI.pm said "NUMPARAMS".

Don't trust the text at the end of DBI.pm. It's not been updated much.
Trust the code.

> I did just try it with the correct attribute "NUM_OF_PARAMS" without
> success.  It gets set locally but not globally.
> 
Does your .xs code for FETCH look like this:

void
FETCH(sth, keysv)
    SV *        sth
    SV *        keysv
    CODE:
    SV *valuesv = dbd_st_FETCH(sth, keysv);
    if (!valuesv)
        valuesv = DBIS->get_attr(sth, keysv);
    ST(0) = valuesv;    /* dbd_st_FETCH did sv_2mortal  */

The hand-off to DBIS->get_attr is a recent addition. It's DBIS->get_attr
that knows about NUM_* and so the hand-off is required (unless your own
dbd_st_FETCH is willing to supply a value).

You should be able to write your DB2.xs file something like this:

	sed -e 's/Oracle/DB2/g' < ../Oracle/Oracle.xs > DB2.xs

I strongly recommend this approach since it'll make it *much* easier
to keep up with interface changes.

> At this point, I'm assuming that I am calling DBIc_NUM_PARAMS with the
> wrong argument, but so far I don't have a clue as to the correct argument.
> 
> dbd_st_prepare(SV *sth, char *statement, SV *attribs)
> {
>     D_imp_sth(sth);
>     D_imp_dbh_from_sth;
>  ....
>     DBIc_NUM_PARAMS(imp_sth) = params;
> }
> 
> where imp_sth is derived from the incomming sth, from my current 
> understanding is correct......but from imperical evidence, it is not
> correct.
> 
It looks just fine to me.

> |> I'd appreciate a snapshot of your work-so-far Mike at some point Mike.
> |> Given the closeness of the DB2 interface and SQLCLI/ODBC It'll be
> |> interesting for me.
> 
> Aside from figuring out what you are doing in the DBI/DBD::Oracle, my
> second largest problem is getting through all red tape and bureaucratic
> B*llSh*t to be able to release this on the net.  Unfortunately, at this
> time I can't release it under penalty of my job.  On the brightside, we
> have convinced at least one lawyer that it should be done :-)
> 
Sigh.

> Mike
> 
> P.S.  Where are you announcing the release of newer versions of DBI/DBD?
>       I have not seen any announcements in a while.  Yet, everytime I
>       check ftp.demon.co.uk there is a new version.
>
They've all been announced to perldb-interest. Are you still getting
perldb-interest messages? I'll send copies of the announcements to you.

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <21380-2@lion>;
          Thu, 31 Aug 1995 07:10:37 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 31 Aug 95 03:39:46 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa05350;
          31 Aug 95 4:39 +0100
Received: by gw.home.vix.com id AA09069; Wed, 30 Aug 95 15:05:11 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA09064; Wed, 30 Aug 95 15:05:09 -0700
Received: by disperse.demon.co.uk id ak02955; 30 Aug 95 21:53 +0100
Received: from post.demon.co.uk by disperse.demon.co.uk id ab14060;
          30 Aug 95 18:13 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ab20582;
          30 Aug 95 18:11 +0100
Received: from ig.co.uk by lion id <13599-0@lion>;
          Wed, 30 Aug 1995 18:06:17 +0100
To: mhm@austin.ibm.com
Subject: Re: DB2perl is minimally working.....
Cc: perldb-interest@vix.com
Date: Wed, 30 Aug 1995 18:06:17 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508301811.ab20582@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> |> > |> 'NUM_OF_PARAMS' is the attribute name that the DBI recognises.
> |> > 
> |> > Hmmmmm, could have sworn my copy of DBI.pm said "NUMPARAMS".
> |> 
> |> Don't trust the text at the end of DBI.pm. It's not been updated much.
> |> Trust the code.
> 
> Reminder posted in painfully obvious place on monitor :-)
> 
:-)

> |> > I did just try it with the correct attribute "NUM_OF_PARAMS" without
> |> > success.  It gets set locally but not globally.
> |> > 
> |> Does your .xs code for FETCH look like this:
> |> 
> |> void
> |> FETCH(sth, keysv)
> |>     SV *        sth
> |>     SV *        keysv
> |>     CODE:
> |>     SV *valuesv = dbd_st_FETCH(sth, keysv);
> |>     if (!valuesv)
> |>         valuesv = DBIS->get_attr(sth, keysv);
> |>     ST(0) = valuesv;    /* dbd_st_FETCH did sv_2mortal  */
> |> 
> |> The hand-off to DBIS->get_attr is a recent addition. It's DBIS->get_attr
> |> that knows about NUM_* and so the hand-off is required (unless your own
> |> dbd_st_FETCH is willing to supply a value).
> |> 
> |> You should be able to write your DB2.xs file something like this:
> |> 
> |> 	sed -e 's/Oracle/DB2/g' < ../Oracle/Oracle.xs > DB2.xs
> |> 
> |> I strongly recommend this approach since it'll make it *much* easier
> |> to keep up with interface changes.
> 
> At this point, the only things I'm changing are the guts of dbdimp.[c,h],
> and a few Oracle references in Oracle/DB2.pm, nothing has changed in any
> DBI file or any *.xs file.
> 
Great.

> Well, then it looks like I have some form of linking/interface problem
> as FETCH never gets called when I envoke DBIc_NUM_PARAMS(imp_sth).  In
> fact, it behaves as if it were an assignment macro -- with out a function
> call.
> 
Er, FETCH gets called when you do $sth->{NUM_OF_PARAMS}. See below...

> Are you sure that invoking DBIc_NUM_PARAMS(imp_sth) should cause 
> FETCH(sth,keysv) to be called? 
> 
Er, wrong way round. Look at the code and text above, FETCH calls dbd_st_FETCH
and if that returns NULL it then calls DBIS->get_attr. DBIS->get_attr (in the DBI)
recognises the NUM_* attribute name and calls DBIc_NUM_PARAMS(imp_sth) for you.

> |> > P.S.  Where are you announcing the release of newer versions of DBI/DBD?
> |> >       I have not seen any announcements in a while.  Yet, everytime I
> |> >       check ftp.demon.co.uk there is a new version.
> |> >
> |> They've all been announced to perldb-interest. Are you still getting
> |> perldb-interest messages? I'll send copies of the announcements to you.
> 
> Well, I was subscribed and I have not asked to be unsubscribed.  Maybe
> I'll try resubscribing.
> 
> Mike Moran
> mhm@austin.ibm.com
> 
Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <03959-0@lion>;
          Thu, 31 Aug 1995 19:18:38 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 31 Aug 95 18:17:42 GMT
Received: from gw.home.vix.com by punt2.demon.co.uk id aa24007;
          31 Aug 95 19:16 +0100
Received: by gw.home.vix.com id AA07895; Wed, 30 Aug 95 22:07:19 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA07890; Wed, 30 Aug 95 22:07:17 -0700
Received: by alta.COM (4.1/SMI-4.1+TAS1.10) id AA19336;
          Wed, 30 Aug 95 22:07:06 PDT
From: Damian Martinez <krak@alta.com>
Message-Id: <9508310507.AA19336@alta.COM>
Subject: Oracle v0.25 problems on SunOS
To: perldb-interest@vix.com
Date: Wed, 30 Aug 1995 22:07:05 -0700 (PDT)
Cc: Tim.Bunce@ig.co.uk
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 9170

Hey all,

I downloaded the latest versions of the DBI (0.62)
and the Oracle DBD (0.25) and tried to make them both
on a sun...

The DBI made fine, tested fine, but the Oracle module
had compilation problems...
I successfully built both of these on a different machine
(sun4m with a newer gcc: 2.6.0)

****************************************************
****************************************************

INFORMATION:
uname -a: SunOS basalt 4.1.3_U1 4 sun4c
gcc --version: 2.5.8
oracle version: (how do I find this? The cdrom says 7.1.4 Production...)
		If there are newer sources/patches etc, how do I get them?
		Someone else purchased/installed the Oracle stuff, so 
		I'm not sure what the procedure is for getting patches...
****************************************************

perl Makefile.PL:
| 
| Configuring DBD::Oracle version 0.25...
| Remember to actually read the README file!
|
| $ORACLE_HOME not defined. Searching for Oracle...
| Using Oracle in /usr/oracle
| Oracle sysliblist: -lm
| Using /usr/oracle/proc/lib/proc.mk version 1.16
| System: perl5.001 sunos basalt 4.1.3_u1 4 sun4c  sun4-sunos dl_dlopen.xs
| Compiler: gcc -O -DDEBUGGING
| Oracle proc.mk would have used these values but we override them:
|   CC:       /usr/5bin/cc
|   CFLAGS:   -I. -O
|   LDFLAGS:  -Bdynamic -L$(LIBHOME)
|
| Checking if your kit is complete...
| Looks good
| Writing Makefile for DBD::Oracle
****************************************************

make: (this is as far as it got...)
| mkdir ./blib
| mkdir ./blib/DBD
| mkdir ./blib/auto
| mkdir ./blib/auto/DBD
| mkdir ./blib/auto/DBD/Oracle
| /usr/local/bin/perl -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 /usr/local/lib/perl5/ExtUtils/xsubpp -typemap /usr/local/lib/perl5/ExtUtils/typemap Oracle.xs >Oracle.tc && mv Oracle.tc Oracle.c
| gcc -c -DDEBUGGING -O -fpic -I/usr/local/lib/perl5/sun4-sunos/CORE -Wall -pedantic -Wno-comment -Wpointer-arith -Wcast-align -Wconversion -Wtraditional -Wpointer-arith -Wbad-function-cast -Wcast-qual -I/usr/oracle/rdbms/demo -I/usr/local/lib/perl5/sun4-sunos/DBI Oracle.c
| In file included from /usr/local/lib/perl5/sun4-sunos/CORE/perl.h:238,
|                  from /usr/local/lib/perl5/sun4-sunos/DBI/DBIXS.h:13,
|                  from Oracle.h:14,
|                  from Oracle.c:19:
| /usr/include/sys/time.h:64: warning: text following `#endif' violates ANSI standard
| cc1: Invalid option `-Wbad-function-cast'
| In file included from Oracle.h:43,
|                  from Oracle.c:19:
| dbdimp.h:20: redefinition of `imp_fbh_t'
| /usr/local/lib/perl5/sun4-sunos/DBI/DBIXS.h:122: `imp_fbh_t' previously declared here
| dbdimp.h:23: parse error before `dbih_drc_t'
| dbdimp.h:23: warning: no semicolon at end of struct or union
| dbdimp.h:24: warning: ANSI C does not allow extra `;' outside of a function
| dbdimp.h:28: parse error before `dbih_dbc_t'
| dbdimp.h:28: warning: no semicolon at end of struct or union
| dbdimp.h:32: parse error before `}'
| dbdimp.h:32: warning: ANSI C does not allow extra `;' outside of a function
| dbdimp.h:37: parse error before `dbih_stc_t'
| dbdimp.h:37: warning: no semicolon at end of struct or union
| dbdimp.h:52: parse error before `}'
| dbdimp.h:52: warning: ANSI C does not allow extra `;' outside of a function
| Oracle.c: In function `XS_DBD__Oracle_errstr':
| Oracle.c:38: warning: implicit declaration of function `D_imp_xxh'
| Oracle.c:40: warning: implicit declaration of function `DBIc_ERRSTR'
| Oracle.c:40: `imp_xxh' undeclared (first use this function)
| Oracle.c:40: (Each undeclared identifier is reported only once
| Oracle.c:40: for each function it appears in.)
| Oracle.c:40: warning: passing arg 1 of `sv_mortalcopy' makes pointer from integer without a cast
| Oracle.c: In function `XS_DBD__Oracle__dr_disconnect_all':
| Oracle.c:56: `dbihcom' undeclared (first use this function)
| Oracle.c:58: warning: implicit declaration of function `DBIc_ERR'
| Oracle.c:58: warning: passing arg 1 of `sv_setiv' makes pointer from integer without a cast
| Oracle.c:60: warning: function `DBIc_ERRSTR' was previously declared within a block
| Oracle.c:62: warning: passing arg 1 of `sv_setpv' makes pointer from integer without a cast
| Oracle.c:66: warning: passing arg 4 makes pointer from integer without a cast
| Oracle.c:66: warning: passing arg 5 makes pointer from integer without a cast
| Oracle.c: In function `XS_DBD__Oracle__db_STORE':
| Oracle.c:162: structure has no member named `set_attr'
| Oracle.c: In function `XS_DBD__Oracle__db_FETCH':
| Oracle.c:183: structure has no member named `get_attr'
| Oracle.c: In function `XS_DBD__Oracle__db_disconnect':
| Oracle.c:199: `dbihcom' undeclared (first use this function)
| Oracle.c:201: warning: implicit declaration of function `DBIc_ACTIVE'
| Oracle.c:203: warning: implicit declaration of function `DBIc_WARN'
| Oracle.c:217: warning: implicit declaration of function `DBIc_KIDS'
| Oracle.c:217: warning: function `DBIc_WARN' was previously declared within a block
| Oracle.c: In function `XS_DBD__Oracle__db_DESTROY':
| Oracle.c:239: `dbihcom' undeclared (first use this function)
| Oracle.c:243: warning: implicit declaration of function `DBIc_IMPSET'
| Oracle.c:245: warning: function `DBIc_WARN' was previously declared within a block
| Oracle.c:255: warning: function `DBIc_ACTIVE' was previously declared within a block
| Oracle.c:257: warning: function `DBIc_WARN' was previously declared within a block
| Oracle.c: In function `XS_DBD__Oracle__st__prepare':
| Oracle.c:287: warning: implicit declaration of function `DBD_ATTRIBS_CHECK'
| Oracle.c: In function `XS_DBD__Oracle__st_bind_param':
| Oracle.c:326: warning: function `DBD_ATTRIBS_CHECK' was previously declared within a block
| Oracle.c: In function `XS_DBD__Oracle__st_execute':
| Oracle.c:342: `dbihcom' undeclared (first use this function)
| Oracle.c:352: warning: implicit declaration of function `DBIc_NUM_PARAMS'
| Oracle.c: In function `XS_DBD__Oracle__st_fetchrow':
| Oracle.c:411: `dbihcom' undeclared (first use this function)
| Oracle.c:415: warning: implicit declaration of function `DBIc_COMPAT'
| Oracle.c:421: warning: implicit declaration of function `DBIc_NUM_FIELDS'
| Oracle.c:437: warning: cast increases required alignment of target type
| Oracle.c: In function `XS_DBD__Oracle__st_STORE':
| Oracle.c:501: structure has no member named `set_attr'
| Oracle.c: In function `XS_DBD__Oracle__st_FETCH':
| Oracle.c:522: structure has no member named `get_attr'
| Oracle.c: In function `XS_DBD__Oracle__st_finish':
| Oracle.c:538: `dbihcom' undeclared (first use this function)
| Oracle.c:540: `D_imp_dbh_from_sth' undeclared (first use this function)
| Oracle.c:542: warning: function `DBIc_ACTIVE' was previously declared within a block
| Oracle.c:542: `imp_dbh' undeclared (first use this function)
| Oracle.c: In function `XS_DBD__Oracle__st_DESTROY':
| Oracle.c:576: `dbihcom' undeclared (first use this function)
| Oracle.c:580: warning: function `DBIc_IMPSET' was previously declared within a block
| Oracle.c:582: warning: function `DBIc_WARN' was previously declared within a block
| Oracle.c:592: warning: function `DBIc_ACTIVE' was previously declared within a block
| Oracle.c:594: warning: function `DBIc_WARN' was previously declared within a block
| Oracle.c: In function `boot_DBD__Oracle':
| Oracle.c:645: warning: implicit declaration of function `DBI_IMP_SIZE'
| Oracle.c:645: sizeof applied to an incomplete type
| Oracle.c:647: sizeof applied to an incomplete type
| Oracle.c:649: sizeof applied to an incomplete type
| *** Error code 1
| make: Fatal error: Command failed for target `Oracle.o'
| 
****************************************************

perl -v
| This is perl, version 5.001
|
|         Unofficial patchlevel 1m.
****************************************************

perl -e 'use Config; print Config::myconfig()'
| Summary of my perl5 (patchlevel 1) configuration:
|   Platform:
|     osname=sunos, osver=4.1.3_u1, archname=sun4-sunos
|     uname='sunos basalt 4.1.3_u1 4 sun4c '
|     hint=recommended
|   Compiler:
|     cc='gcc', optimize='-O'
|     cppflags='-DDEBUGGING'
|     ccflags ='-DDEBUGGING'
|     ldflags =''
|     stdchar='unsigned char', d_stdstdio=define, usevfork=true
|     voidflags=15, castflags=0, d_casti32=define, d_castneg=define
|     intsize=4, alignbytes=8, usemymalloc=y, randbits=31
|   Libraries:
|     so=so
|     libpth=/lib /usr/lib /usr/ucblib /usr/local/lib
|     libs=-ldbm -ldl -lm -lc -lposix
|     libc=/usr/lib/libc.so.1.9.1
|   Dynamic Linking:
|     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
|     cccdlflags='-fpic', ccdlflags=' ', lddlflags='-assert nodefinitions'
| 
****************************************************


On previous versions, I took out the -Wbad-function-cast compiler option
and it compiled okay, but when I did that for this one, the only
difference was that it didn't complain about the unknown option (!)

Like I said, Both the DBI and Oracle DBD compiled fine on another machine
and I don't think we have the resources to install a newer version of
gcc...can anyone help me tweak these files into compiling?

Thanks,

Damian Martinez











---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <07012-5@lion>;
          Fri, 1 Sep 1995 07:23:54 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 31 Aug 95 22:57:55 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa25117;
          31 Aug 95 23:57 +0100
Received: by gw.home.vix.com id AA01640; Thu, 31 Aug 95 03:34:27 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA01635; Thu, 31 Aug 95 03:34:24 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id ab18130;
          31 Aug 95 11:09 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ae26149;
          31 Aug 95 11:07 +0100
Received: from ig.co.uk by lion id <24299-0@lion>;
          Thu, 31 Aug 1995 11:08:11 +0100
To: perldb-interest@vix.com, z50816@mip.lasc.lockheed.com
Subject: Re: _install_me.al
Date: Thu, 31 Aug 1995 11:08:11 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508311107.ae26149@post.demon.co.uk>


> From: Terry Greenlaw <z50816@mip.lasc.lockheed.com>
> 
> > The real question is why did perl not see the _install_method in DBI.xs?
> 
> > Make sure that DBI.c, DBI.o and DBI.so get built and DBI.so gets copied into
> > ./blib. If so then try again with PERL_DL_DEBUG=2 and check that the DynaLoader
> > is loading the right .so file.
> 
> > Has anyone else had this problem?
> 
> I have DBI.sl and DBI.xs under ./blib/auto/DBI.
> SO and DLEXT are both set to sl
> 
> LD_RUN_PATH="" ls -o ./blib/auto/DBI/DBI.sl -b DBI.o 
>    looks a little suspicious, though
> 
Why?

> The STDERR output from make test PERL_DL_DEBUG=2:
> 
> DynaLoader.pm loaded (/lib/pa1.1 /lib /usr/lib /usr/local/lib)
> Can't locate auto/DBI/_install_me.al in @INC at blib/DBI.pm line 100

Why doesn't the DynaLoader log show

	DynaLoader::bootstrap(DBI)

Umm, perhaps you've got an old DBI statically linked into your perl.

Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <07015-8@lion>;
          Fri, 1 Sep 1995 07:25:18 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 31 Aug 95 22:59:39 GMT
Received: from gw.home.vix.com by punt2.demon.co.uk id aa09346;
          31 Aug 95 23:58 +0100
Received: by gw.home.vix.com id AA03676; Thu, 31 Aug 95 11:01:38 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA03671; Thu, 31 Aug 95 11:01:36 -0700
Received: from cst.com (sao486.cst.com [198.179.25.2]) 
          by svcs1.digex.net (8.6.12/8.6.12) with SMTP id OAA17910 
          for <perldb-interest@vix.com>; Thu, 31 Aug 1995 14:01:29 -0400
Received: by sao486.cst.com id aa23287; 31 Aug 95 14:01 EDT
From: "Steve A. Olson" <solson@cst.com>
To: perldb-interest@vix.com
Subject: Help w/ Oracle Makefiles
X-Mailer: ScoMail 1.0
Date: Thu, 31 Aug 1995 12:49:15 -0400 (EDT)
Message-Id: <9508311249.aa23044@sao486.cst.com>


I've been lurking on this list for some time now, and have a somewhat
tangential question related to Oracle OCI and relinking an executable
on different Operating Systems and Oracle Versions.

Here's my goal:
	Generate a "makefile" (using perl or whatever) that links
	one C-Source code file which contains Oracle OCI calls and 
	additional object and header files into an executable on, ideally,
	any platform (Hardware/OS combination) for any Oracle Version.
	
	The makefile should be able to link the executable without user
	modification of the makefile.

The main issues are OS portability and Oracle Versions.

I'm looking for ideas, opinions, and experiences.  I'll post a follup
summary if I get more that a couple of responses.  Thanks!

---A-I-T---------------------------------
   Applied Information Technologies, Inc.

   Steve A. Olson
   Vice President

   410-917-4171 (Cellular)
   410-796-5862 (FAX/VoiceMail)
   410-379-5287 (HomeOffice)
   Steve.Olson@ait.cst.com (Internet)
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <07013-8@lion>;
          Fri, 1 Sep 1995 07:25:24 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 31 Aug 95 22:59:46 GMT
Received: from gw.home.vix.com by punt2.demon.co.uk id aa09494;
          31 Aug 95 23:59 +0100
Received: by gw.home.vix.com id AA01618; Thu, 31 Aug 95 03:33:16 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA01613; Thu, 31 Aug 95 03:33:15 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa18108;
          31 Aug 95 11:09 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ad26149;
          31 Aug 95 11:06 +0100
Received: from ig.co.uk by lion id <23727-0@lion>;
          Thu, 31 Aug 1995 10:59:48 +0100
To: perldb-interest@vix.com, krak@alta.com
Mmdf-Warning: Unable to confirm address in preceding line at 
              disperse.demon.co.uk
Subject: Re: Oracle v0.25 problems on SunOS
Date: Thu, 31 Aug 1995 10:59:48 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508311106.ad26149@post.demon.co.uk>


> From: Damian Martinez <krak@alta.com>
> 
> Hey all,
> 
> I downloaded the latest versions of the DBI (0.62) and the
> Oracle DBD (0.25) and tried to make them both on a sun...
> 
> The DBI made fine, tested fine, but the Oracle module
> had compilation problems...

> I successfully built both of these on a different machine
> (sun4m with a newer gcc: 2.6.0)
> 
> gcc --version: 2.5.8

GCC 2.5.8 is ancient! I recommend GCC 2.6.3 as a very stable version or
2.7.x if you're feeling adventurous.

> | dbdimp.h:20: redefinition of `imp_fbh_t'
> | /usr/local/lib/perl5/sun4-sunos/DBI/DBIXS.h:122: `imp_fbh_t' previously declared here

This looks like you've not actually installed the DBI since 0.62 DBIXS.h
doesn't have _anything_ to do with imp_fbh_t in it.

> Thanks,
> 
> Damian Martinez
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <07012-9@lion>;
          Fri, 1 Sep 1995 07:25:42 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 01 Sep 95 00:42:56 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id aa18789;
          1 Sep 95 1:42 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <04194-0@frigate.doc.ic.ac.uk>; Fri, 1 Sep 1995 00:50:06 +0100
Received: by gw.home.vix.com id AA09782; Thu, 31 Aug 95 12:10:30 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA09663; Thu, 31 Aug 95 12:10:19 -0700
Received: from yquem.inferentia.it (yquem.inferentia.it [151.99.220.17]) 
          by relay.inferentia.it (8.6.12/8.6.12) with SMTP id VAA22443;
          Thu, 31 Aug 1995 21:09:04 +0200
Posted-Date: Thu, 31 Aug 1995 21:09:04 +0200
Received: by yquem.inferentia.it with Microsoft Mail 
          id <01BA77E7.958B6040@yquem.inferentia.it>;
          Thu, 31 Aug 1995 21:20:23 +-200
Message-Id: <01BA77E7.958B6040@yquem.inferentia.it>
From: Davide Migliavacca <davide.migliavacca@relay.inferentia.it>
To: 'Tim Bunce' <Tim.Bunce@ig.co.uk>
Cc: "'perldb-interest@vix.com'" <perldb-interest@vix.com>
Subject: RE: Error building DBI 0.62 on AIX 3.2.5
Date: Thu, 31 Aug 1995 21:20:21 +-200
Mime-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Well, it seems safemalloc is not that safe; I mean, if "safe" was what =
I'd expect. It doesn't initialize memory for sure.
Many many thanks to Mike that found the solution to its problem (and so =
indirectly for mine also). Isn't it interesting we're both working on =
IBM hardware ((:-))
Yes, do memset and everything's OK.
The good thing is, I have taken a good look at DBI internals :-)

The patch:
(Notice, I have yet to understand why, but if you place the memset line =
right after the safemalloc, where it belongs, my xlc 1.0.0.38 declares a =
syntax error. Beats me - maybe too many macros around)

*** DBI.xs	Sat Aug 26 19:23:46 1995=0A=
--- DBI.xs.new	Thu Aug 31 20:56:36 1995=0A=
***************=0A=
*** 977,982 ****=0A=
  	CvXSUBANY(cv).any_ptr =3D ima;=0A=
  =0A=
  	if (atype =3D=3D SVt_PVAV) {=0A=
! 	    ima_usage_av =3D SvRV(attribs);=0A=
  	}=0A=
  	else if (atype =3D=3D SVt_PVHV) {=0A=
--- 977,984 ----=0A=
  	CvXSUBANY(cv).any_ptr =3D ima;=0A=
  =0A=
+ 	memset(ima,0,sizeof(*ima));=0A=
+ =0A=
  	if (atype =3D=3D SVt_PVAV) {=0A=
! 	    ima_usage_av =3D (AV *)SvRV(attribs);=0A=
  	}=0A=
  	else if (atype =3D=3D SVt_PVHV) {=0A=



----------
From: 	Tim Bunce[SMTP:Tim.Bunce@ig.co.uk]
Sent: 	gioved=EC 31 agosto 1995 12.49
To: 	Davide.Migliavacca@relay.inferentia.it
Subject: 	RE: Error building DBI 0.62 on AIX 3.2.5

----------
X-Sun-Data-Type: text
X-Sun-Data-Description: text
X-Sun-Data-Name: text
X-Sun-Content-Lines: 20


> From: Shari <Davide.Migliavacca@inferentia.it>
> =20

> install_method DBI::db::debug, DBI.pm
> method:  =20
> DBI::db::debug has ima->(minargs 1, maxargs 2, usage '[$debug_level]', =
 =20
> flags 1)

> install_method DBI::dr::debug, DBI.pm
> method:  =20
> DBI::dr::debug has ima->(minargs 1, maxargs 2, usage '[$debug_level]', =
 =20
> flags 6163)

Umm.

I don't know why that's happening but try this patch for me.

Tim.

----------
X-Sun-Data-Type: default
X-Sun-Data-Name: xs.patch1
X-Sun-Content-Lines: 110

diff -c2 DBI.xs.old DBI.xs
*** DBI.xs.old	Thu Aug 31 11:47:21 1995
--- DBI.xs	Thu Aug 31 11:45:43 1995
***************
*** 751,754 ****
--- 751,757 ----
  	    PUTBACK;
  	    --items;
+ 	    if (!SvPOK(meth_name_sv) || SvNIOK(meth_name_sv))
+ 		croak("%s->%s() invalid redirect method name '%s'",
+ 			SvPV(h,na), meth_name, SvPV(meth_name_sv, na));
  	    meth_name =3D SvPV(meth_name_sv, na);
  	}
***************
*** 961,969 ****
      CODE:
      {
!     /* install another method name/interface for the dispatcher */
!     CV *cv =3D newXS(meth_name, XS_DBI_dispatch, file);
!     if (dbis->debug >=3D 3)
! 	fprintf(DBILOGFP,"install_method %s,\t%s\n", meth_name, file);
 =20
      if (strnNE(meth_name, "DBI::", 5))	/* XXX m/^DBI::\w+::\w+$/	*/
  	croak("install_method: invalid name '%s'", meth_name);
--- 964,977 ----
      CODE:
      {
!     /* install another method name/interface for the DBI dispatcher	*/
!     int debug =3D (dbis->debug >=3D 3);
!     CV *cv;
!     SV **svp;
!     dbi_ima_t *ima =3D NULL;
!     class =3D class;		/* avoid 'unused variable' warning	*/
 =20
+     if (debug)
+ 	fprintf(DBILOGFP,"install_method %s\t", meth_name);
+=20
      if (strnNE(meth_name, "DBI::", 5))	/* XXX m/^DBI::\w+::\w+$/	*/
  	croak("install_method: invalid name '%s'", meth_name);
***************
*** 970,992 ****
 =20
      if (attribs && SvROK(attribs)) {
! 	/* store method attributes in a fast access form */
! 	SV **svp;
  	svtype atype =3D SvTYPE(SvRV(attribs));
! 	dbi_ima_t *ima =3D (dbi_ima_t*)safemalloc(sizeof(*ima));
! 	AV *ima_usage_av =3D Nullav;
! 	CvXSUBANY(cv).any_ptr =3D ima;
 =20
! 	if (atype =3D=3D SVt_PVAV) {
! 	    ima_usage_av =3D SvRV(attribs);
! 	}
! 	else if (atype =3D=3D SVt_PVHV) {
! 	    DBD_ATTRIB_GET_IV(attribs, "O",1, svp, ima->flags);
! 	    if ( (svp=3DDBD_ATTRIB_GET_SVP(attribs, "U",1)) !=3D NULL)
! 		ima_usage_av =3D (AV*)SvRV(*svp);
! 	}
! 	else croak("install_method %s: bad attribs", meth_name);
 =20
! 	if (ima_usage_av) {
! 	    AV *av =3D ima_usage_av;
  	    ima->minargs=3D         SvIV(*av_fetch(av, 0, 1));
  	    ima->maxargs=3D         SvIV(*av_fetch(av, 1, 1));
--- 978,992 ----
 =20
      if (attribs && SvROK(attribs)) {
! 	/* convert and store method attributes in a fast access form	*/
  	svtype atype =3D SvTYPE(SvRV(attribs));
! 	ima =3D (dbi_ima_t*)safemalloc(sizeof(*ima));
 =20
! 	if (atype !=3D SVt_PVHV)
! 	    croak("install_method %s: bad attribs", meth_name);
!=20
! 	DBD_ATTRIB_GET_IV(attribs, "O",1, svp, ima->flags);
 =20
! 	if ( (svp=3DDBD_ATTRIB_GET_SVP(attribs, "U",1)) !=3D NULL) {
! 	    AV *av =3D (AV*)SvRV(*svp);
  	    ima->minargs=3D         SvIV(*av_fetch(av, 0, 1));
  	    ima->maxargs=3D         SvIV(*av_fetch(av, 1, 1));
***************
*** 994,1002 ****
  	    ima->usage  =3D savepv( (svp) ? SvPV(*svp,na) : "");
  	    ima->flags |=3D IMA_HAS_USAGE;
  	}
 =20
!     }else if (attribs && SvOK(attribs)) {
  	croak("install_method %s: attributes not a ref", meth_name);
      }
      ST(0) =3D &sv_yes;
      }
--- 994,1011 ----
  	    ima->usage  =3D savepv( (svp) ? SvPV(*svp,na) : "");
  	    ima->flags |=3D IMA_HAS_USAGE;
+ 	    if (dbis->debug >=3D 3)
+ 		fprintf(DBILOGFP,"    usage: min %d, max %d, '%s'",
+ 			ima->minargs, ima->maxargs, ima->usage);
  	}
+ 	if (debug)
+ 	    fprintf(DBILOGFP,", flags 0x%x", ima->flags);
 =20
!     } else if (attribs && SvOK(attribs)) {
  	croak("install_method %s: attributes not a ref", meth_name);
      }
+     cv =3D newXS(meth_name, XS_DBI_dispatch, file);
+     CvXSUBANY(cv).any_ptr =3D ima;
+     if (debug)
+ 	fprintf(DBILOGFP,"\n");
      ST(0) =3D &sv_yes;
      }



---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <09041-0@lion>;
          Fri, 1 Sep 1995 08:02:23 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 01 Sep 95 07:00:32 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa28545;
          1 Sep 95 7:59 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id ab17230;
          31 Aug 95 19:29 GMT-60:00
Received: by gw.home.vix.com id AA01118; Thu, 31 Aug 95 03:22:47 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA01113; Thu, 31 Aug 95 03:22:46 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa18087;
          31 Aug 95 11:09 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa26149;
          31 Aug 95 11:06 +0100
Received: from ig.co.uk by lion id <22864-0@lion>;
          Thu, 31 Aug 1995 10:30:13 +0100
To: mhm@austin.ibm.com
Subject: Re: Any problems with DBI::Dispatch
Cc: perldb-interest@vix.com
Date: Thu, 31 Aug 1995 10:30:13 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508311106.aa26149@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Next problem an error message from the dispatch routine in DBI
> 
> DBI DBI::db=HASH(0x200a9ef0): invalid number of parameters: handle + -1
> Usage: $h->DBI::db=HASH(0x200a9ef0)() at builddb line 32.
> 
> In the above where is items comming from?

items is defined by the dXSARGS macro at the top of XS_DBI_dispatch.
It holds the number of parameters.

> In my current case, the call which generates this error is
>    $dbh->commit();
> which is currently not being dispatched to dbd_db_commit(dbh);

Note that the error message shows 'DBI::db=HASH(0x200a9ef0)' as the name
of the function and -1 as the number of parameters. This implies that the
real problem is still with the if (ima->flags & IMA_FUNC_REDIRECT) test
which is before the IMA_HAS_USAGE test.

For some reason (ima->flags & IMA_FUNC_REDIRECT) is true when it should not be.
Focus your attention on that.

> Thanks.
> 
> Mike
> mhm@austin.ibm.com
>
Tim. 
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <10775-0@lion>;
          Fri, 1 Sep 1995 10:55:42 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 01 Sep 95 07:31:10 GMT
Received: from gate.demon.co.uk by punt2.demon.co.uk id aa05356;
          1 Sep 95 8:30 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa20061;
          31 Aug 95 19:51 GMT-60:00
Received: by gw.home.vix.com id AA00637; Thu, 31 Aug 95 03:15:06 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA00632; Thu, 31 Aug 95 03:15:05 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa18095;
          31 Aug 95 11:09 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ab26149;
          31 Aug 95 11:06 +0100
Received: from ig.co.uk by lion id <23033-0@lion>;
          Thu, 31 Aug 1995 10:38:14 +0100
To: mouring@netnet.net
Subject: Re: New to DBI.
Cc: perldb-interest@vix.com
Date: Thu, 31 Aug 1995 10:38:14 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508311106.ab26149@post.demon.co.uk>


> From: Ben A Lindstrom <mouring@netnet.net>
> 
> I'm new to DBI and I'm just in the process of setting up my machine to do
> developement of a QuickBase perl module.
> 
What is QuickBase? Does it support SQL?

> My question is how stable/finished is v06 of the specs?

That's actually not a very significant issue right now. Just treat the
DBI code as the application interface spec and the DBD::Oracle code as
the driver interface spec :-)  The notes at the end of DBI.pm are useful.

> And how far along is Oracle?
> 
Far enough to be very useful.

> If DBI is not far enought along I might have to write my own interface 
> for the meantime.
>
Please don't do that. I'll help you with any problems you may have.
 
> BTW, I read part of the specs and I seem to be missing something...Is there
> a developer's spec for implementing the database drivers.
>
Yes, the DBD::Oracle module :-). Basically study the DBD::Oracle .xs file
and hack the dbdimp.c file as needed.

> Thanks.
> 
Tim. 
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <10775-1@lion>;
          Fri, 1 Sep 1995 10:56:00 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 01 Sep 95 07:33:53 GMT
Received: from gate.demon.co.uk by punt2.demon.co.uk id aa06828;
          1 Sep 95 8:33 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa20376;
          31 Aug 95 19:53 GMT-60:00
Received: by gw.home.vix.com id AA04047; Thu, 31 Aug 95 04:19:10 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA04042; Thu, 31 Aug 95 04:19:09 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa18568;
          31 Aug 95 11:12 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa26784;
          31 Aug 95 11:09 +0100
Received: from ig.co.uk by lion id <24991-0@lion>;
          Thu, 31 Aug 1995 11:12:16 +0100
To: buzz@bear.com
Subject: Re: Happy birthday DBperl!
Cc: perldb-interest@vix.com
Date: Thu, 31 Aug 1995 11:12:16 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9508311109.aa26784@post.demon.co.uk>


> From: Buzz Moschetti <buzz@bear.com>
> 
> Tim Bunce writes:
>  > > > For those too young to remember, the DBperl effort will have its
>  > > > third birthday on September 29th. It would be kind'a nice to have
>  > > > something to show for it after three years :-)
> 
> Close.  The original mail went out Mon, 28 Sep 92 9:08:31
> 
:-)

Duly noted.

(I was actually going by the first 'Happy Birthday!' message you
posted on 29 Sep 93 saying 'The DBperl effort is one year old today.'
Anyway, what's a day either way between old friends :-)

Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <01550-4@lion>;
          Mon, 4 Sep 1995 07:25:14 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 01 Sep 95 21:57:26 GMT
Received: from gw.home.vix.com by punt2.demon.co.uk id aa06311;
          1 Sep 95 22:56 +0100
Received: by gw.home.vix.com id AA01773; Fri, 1 Sep 95 07:36:15 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA01768; Fri, 1 Sep 95 07:36:13 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa19523;
          1 Sep 95 14:22 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa06160;
          1 Sep 95 14:20 +0100
Received: from ig.co.uk by lion id <14894-0@lion>;
          Fri, 1 Sep 1995 14:22:49 +0100
To: perldb-interest@vix.com
Subject: Announce: DBI-0.63
Date: Fri, 1 Sep 1995 14:22:49 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509011420.aa06160@post.demon.co.uk>

Available from the usual place.

Current DBI Implementation Notes:

    $ary_ref = $sth->fetch; currently always returns the same array ref.
    This may be a feature that stays, then again it may not.

    $sth->bind_param currently takes a variable value not a reference.
    That may change later.


Changes in DBI 0.63,    1 Sep 1995

    Minor update. Fixed uninitialised memory bug in method
    attribute handling and streamlined processing and debugging.
    Revised usage definitions for bind_* methods and readblob.

Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <01550-5@lion>;
          Mon, 4 Sep 1995 07:25:34 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 01 Sep 95 22:16:19 GMT
Received: from gw.home.vix.com by punt2.demon.co.uk id aa17498;
          1 Sep 95 23:15 +0100
Received: by gw.home.vix.com id AA00295; Fri, 1 Sep 95 07:12:37 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA00290; Fri, 1 Sep 95 07:12:36 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa19301;
          1 Sep 95 14:20 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ab05531;
          1 Sep 95 14:17 +0100
Received: from ig.co.uk by lion id <13617-0@lion>;
          Fri, 1 Sep 1995 13:12:16 +0100
To: gbalfanz@netcom.com
Subject: Re: Perl5 and Informix?
Cc: perldb-interest@vix.com, descarte@mcqueen.com
Date: Fri, 1 Sep 1995 13:12:16 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509011417.ab05531@post.demon.co.uk>


> From: Greg Balfanz <gbalfanz@netcom.com>
> 
> Tim,
> 
> I am despretly looking for a perl5 informix interface. I assume the 
> usub isqlperl will only work w/perl4?
> 
Yes.

> It does not have to be DBI:: or odbc compatible,  good old 
> propietary informix would suffice.
> 
> Is the perl5 XS conceivable for a moderatly skilled programmer to
> interface to informix?
> 
> Any pointers?
> 
Anyone with enough skill to do it has enough to do it as a DBI driver.

Alligator Descartes <descarte@mcqueen.com> has expressed an interest
in doing an Informix interface. He's currently doing the DBD::mSQL driver.

Hopefully he could either do it for you or give you a kick start and
help you along.

I hope you're on the perldb-interest mailing list. If not join straigh
away by sending mail to perldb-interest-request@vix.com. Catchup with
current work by browsing ftp.demon.co.uk:/pub/perl/db/ in the DBI
and DBD/Oracle directories.

> Thanks in advance for your time.
> 
> Greg

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <01517-10@lion>;
          Mon, 4 Sep 1995 07:25:58 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 01 Sep 95 22:03:57 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa09387;
          1 Sep 95 23:03 +0100
Received: by gw.home.vix.com id AA19732; Fri, 1 Sep 95 11:00:18 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA19709; Fri, 1 Sep 95 11:00:16 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.11/8.6.11) with SMTP id NAA122511;
          Fri, 1 Sep 1995 13:00:11 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for davide.migliavacca@relay.inferentia.it at austin.ibm.com;
          id AA17982; Fri, 1 Sep 1995 13:00:04 -0500
From: mhm@austin.ibm.com
Message-Id: <9509011800.AA17982@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: davide.migliavacca@relay.inferentia.it, perldb-interest@vix.com
Subject: Re: Error building DBI 0.62 on AIX 3.2.5
In-Reply-To: Your message of Fri, 01 Sep 95 10:50:48 +0100. <9509011053.aa26832@post.demon.co.uk>
Date: Fri, 01 Sep 95 13:00:03 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> 
> > Isn't it interesting we're both working on IBM hardware ((:-))
> 
> You have my sympathies ;-)

Better than working on Sun hardware ;-)

> > Yes, do memset and everything's OK.
> 
> I'll probably use Larry's Newz macro.
> 
> > The good thing is, I have taken a good look at DBI internals :-)
> >
> Great, maybe you can tell me how it works! :-))

Give a few more passes through the DBI in the debugger and maybe
I'll be able to answer your questions......

Mike Moran
Commercial Performance 
IBM Austin
mhm@austin.ibm.com
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <01550-9@lion>;
          Mon, 4 Sep 1995 07:26:32 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 02 Sep 95 20:07:55 GMT
Received: from gate.demon.co.uk by punt2.demon.co.uk id aa29859;
          2 Sep 95 21:07 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa08121;
          31 Aug 95 21:58 GMT-60:00
Received: by gw.home.vix.com id AA07768; Thu, 31 Aug 95 05:26:27 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA07762; Thu, 31 Aug 95 05:26:25 -0700
Message-Id: <9508311226.AA07762@gw.home.vix.com>
Received: from mip.lasc.lockheed.com by netserve.lasc.lockheed.com 
          with SMTP (1.37.109.4/16.2) id AA16542; Thu, 31 Aug 95 08:26:08 -0400
Received: by mip.lasc.lockheed.com (1.38.193.4/16.2) id AA09452;
          Thu, 31 Aug 1995 08:26:00 -0400
Date: Thu, 31 Aug 1995 08:26:00 -0400
From: Terry Greenlaw <z50816@mip.lasc.lockheed.com>
To: perldb-interest@vix.com
Subject: Re: _install_me.al

> From <@post.demon.co.uk,@ignite.demon.co.uk:Tim.Bunce@ig.co.uk> Wed Aug 30 09:30 EDT 1995
> Received: from marble.litc.lockheed.com by mip.lasc.lockheed.com with SMTP
> 	(1.38.193.4/16.2) id AA17088; Wed, 30 Aug 1995 09:30:23 -0400
> Return-Path: <@post.demon.co.uk,@ignite.demon.co.uk:Tim.Bunce@ig.co.uk>
> Received: from disperse.demon.co.uk (disperse.demon.co.uk [158.152.1.77]) by marble.litc.lockheed.com (8.6.12/8.6.9) with SMTP id GAA04937 for <z50816@mip.lasc.lockheed.com>; Wed, 30 Aug 1995 06:34:37 -0700
> Received: from post.demon.co.uk by disperse.demon.co.uk id aa11859;
>           30 Aug 95 13:11 +0100
> Received: from ignite.demon.co.uk by post.demon.co.uk id ak27772;
>           30 Aug 95 13:08 +0100
> Received: from ig.co.uk by lion id <07828-0@lion>;
>           Wed, 30 Aug 1995 13:07:15 +0100
> To: z50816@mip.lasc.lockheed.com
> Subject: _install_me.al
> Cc: perldb-interest@vix.com
> Date: Wed, 30 Aug 1995 13:07:15 +0100
> From: Tim Bunce <Tim.Bunce@ig.co.uk>
> Sender: Tim.Bunce@ig.co.uk
> Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
> Message-Id:  <9508301308.ak27772@post.demon.co.uk>
> Status: RO


> > From: Terry Greenlaw <z50816@mip.lasc.lockheed.com>
> > 
> > Tim, I'm trying to install DBI 0.62, and get the following message during "make test".
> > The "perl Makefile.PL" and "make" went okay. I tried this before and after a
> > "make install".
> > Shouldn't it be trying _install_method instead of _install_me ?
> > Any ideas?
> > 
> > Mip> make test
> >         /usr/bin/perl -I./blib -I./blib -I/disk3/perl5/lib/perl5/hpux -I/disk3/perl5/lib/perl5
> >  -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
> > t/min...............Can't locate auto/DBI/_install_me.al in @INC at blib/DBI.pm line 100
> > FAILED on test 1

> _install_method used to be defined in DBI.pm, it's now defined in DBI.xs.

> The auto/DBI/_install_me.al error is simply a symptom of _install_method not
> being found and the AutoLoader doing its best to find one (the shortened name
> is a last ditch attempt to deal with filesystems which don't support long names).

> The real question is why did perl not see the _install_method in DBI.xs?

> Make sure that DBI.c, DBI.o and DBI.so get built and DBI.so gets copied into
> ./blib. If so then try again with PERL_DL_DEBUG=2 and check that the DynaLoader
> is loading the right .so file.

> Has anyone else had this problem?

> Tim.

Tim,
You were right about having a static version of DBI already linked into Perl.
When I rebuilt and reinstalled perl the DBI build was easy. I built DBI
dynamically at first, but a statically built DBD/Oracle doesn't get along
well with a dynamic DBI. Building them both statically fixed the problem.

There is (supposedly) a patch from HP for ld that will solve the "illegal
loader fixup needed" problem, allowing Oracle to finally load dynamically
on HP/UX 9. If anyone knows the patch number, could they please post it?

Thanks for the info...

tog

Terry Greenlaw (on-site @ Lockheed)                      Encompass Technologies
z50816@mip.lasc.lockheed.com                             terry@encompass.is.net

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <01517-14@lion>;
          Mon, 4 Sep 1995 07:26:47 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 01 Sep 95 23:17:27 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa23636;
          2 Sep 95 0:17 +0100
Received: by gw.home.vix.com id AA25826; Fri, 1 Sep 95 06:07:24 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA25821; Fri, 1 Sep 95 06:07:23 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.11/8.6.11) with SMTP id IAA52731;
          Fri, 1 Sep 1995 08:07:21 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA23994;
          Fri, 1 Sep 1995 08:07:18 -0500
From: mhm@austin.ibm.com
Message-Id: <9509011307.AA23994@dax.austin.ibm.com>
To: Tim.Bounce@ig.co.uk
Cc: perldb-interest@vix.com
Subject: Building the %attribs for bind_param ?
Date: Fri, 01 Sep 95 08:07:18 -0500


The question boils down to what is the best way to build the %attribs
hash-ref for bind_param and bind-col.  Given the number of possible 
things that a DB2 user might want to bind to a parameter or in binding 
the incoming data to a host variable, I think I need to supply a 
function which builds and returns the %attribs hash-ref.

Would it be better to define it as an XSUB routine or in the pm file
under DBD::DB2::st?   I currently leaning towards doing it in perl in
the pm file.

Any comments, anything else I need to consider?

Mike 

------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <01550-17@lion>;
          Mon, 4 Sep 1995 07:29:16 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 03 Sep 95 17:56:41 GMT
Received: from gate.demon.co.uk by punt2.demon.co.uk id aa29087;
          3 Sep 95 18:54 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id ab12399;
          31 Aug 95 22:35 GMT-60:00
Received: by gw.home.vix.com id AA15122; Thu, 31 Aug 95 07:10:53 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA15117; Thu, 31 Aug 95 07:10:51 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.11/8.6.11) with SMTP id JAA34735;
          Thu, 31 Aug 1995 09:10:49 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for mhm@austin.ibm.com at austin.ibm.com; id AA22494;
          Thu, 31 Aug 1995 09:10:47 -0500
From: mhm@austin.ibm.com
Message-Id: <9508311410.AA22494@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: mhm@austin.ibm.com, perldb-interest@vix.com
Subject: Re: Any problems with DBI::Dispatch
In-Reply-To: Your message of Thu, 31 Aug 95 10:30:13 +0100. <9508311106.aa26149@post.demon.co.uk>
Date: Thu, 31 Aug 95 09:10:46 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|> 
|> Note that the error message shows 'DBI::db=HASH(0x200a9ef0)' as the 
|> name of the function and -1 as the number of parameters. This 
|> implies that the real problem is still with the 
|> if (ima->flags & IMA_FUNC_REDIRECT) test which is before the
|> IMA_HAS_USAGE test.
|> 
|> For some reason (ima->flags & IMA_FUNC_REDIRECT) is true when it 
|> should not be.
|> Focus your attention on that.


Found the problem, in DBI.xs - install_method asssumes at time of
creation that newly created ima structure will contain all zeros or nulls.
In my case, this is not true.

On the installation of the "db::commit" method everything in the
structure is zero/null except the last field -- flags, so I end up with
both IMA_HAS_USAGE and IMA_FUNC_REDIRECT, plus quite a few others 
we haven't even thought of.   :-)

Quick solution is to memset the allocated structure or call calloc.

Mike 
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <01517-20@lion>;
          Mon, 4 Sep 1995 07:29:26 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 02 Sep 95 00:53:06 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa13533;
          2 Sep 95 1:52 +0100
Received: by gw.home.vix.com id AA00284; Fri, 1 Sep 95 07:12:03 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA00279; Fri, 1 Sep 95 07:12:02 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa19304;
          1 Sep 95 14:19 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ac05531;
          1 Sep 95 14:17 +0100
Received: from ig.co.uk by lion id <13626-0@lion>;
          Fri, 1 Sep 1995 13:13:48 +0100
To: mhm@austin.ibm.com
Subject: Re: Problem with definition of %DBI_IF {bind_param}
Cc: perldb-interest@vix.com
Date: Fri, 1 Sep 1995 13:13:48 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509011417.ac05531@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Tim, 
> 
>   In DBI.pm, 
> 
>  my %DBI_IF = (  # Define the DBI Interface:
>     bind_param =>   { U =>[2,3,'\\$var [, \%attribs]'] },
>  }
> 
> Shouldn't it be   
>   
>  bind_param =>   { U =>[3,4,'\\$parameter,\\$var [, \%attribs]'] },
> 
> Since you must specify which parameter, the variable to use and
> possibly the attributes...that makes argmin = 3 and argmax = 4 once
> you include the statement handle.
> 
> or am I totally lost and confused?
> 
Nope, you're right. Thanks. Actually $var is curently not a reference.
I'm not sure about about that yet.

Umm, bind_col and bind_columns are also wrong!

> Mike Moran
> mhm@austin.ibm.com
> 
Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <01569-1@lion>;
          Mon, 4 Sep 1995 07:29:26 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 03 Sep 95 18:28:10 GMT
Received: from gate.demon.co.uk by punt2.demon.co.uk id aa16492;
          3 Sep 95 19:26 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa22973;
          1 Sep 95 0:07 GMT-60:00
Received: by gw.home.vix.com id AA07675; Thu, 31 Aug 95 11:47:24 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA07670; Thu, 31 Aug 95 11:47:23 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.11/8.6.11) with SMTP id NAA71630;
          Thu, 31 Aug 1995 13:47:22 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA20932;
          Thu, 31 Aug 1995 13:47:21 -0500
From: mhm@austin.ibm.com
Message-Id: <9508311847.AA20932@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com
Subject: Problem with definition of %DBI_IF {bind_param}
Date: Thu, 31 Aug 95 13:47:20 -0500


Tim, 

  In DBI.pm, 

 my %DBI_IF = (  # Define the DBI Interface:
    bind_param =>   { U =>[2,3,'\\$var [, \%attribs]'] },
 }


Shouldn't it be   
  
 bind_param =>   { U =>[3,4,'\\$parameter,\\$var [, \%attribs]'] },

Since you must specify which parameter, the variable to use and
possibly the attributes...that makes argmin = 3 and argmax = 4 once
you include the statement handle.

or am I totally lost and confused?

Mike Moran
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <01549-13@lion>;
          Mon, 4 Sep 1995 07:30:13 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 02 Sep 95 01:59:21 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa09396;
          2 Sep 95 2:58 +0100
Received: by gw.home.vix.com id AA11590; Fri, 1 Sep 95 15:10:46 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA11585; Fri, 1 Sep 95 15:10:44 -0700
Received: from alma.mcqueen.com (alma.mcqueen.com [193.133.160.249]) 
          by fruitbat.mcqueen.com (8.6.12/8.6.12) with ESMTP id XAA12241;
          Fri, 1 Sep 1995 23:04:59 +0100
From: descarte@mcqueen.com
Received: (from descarte@localhost) by alma.mcqueen.com (8.6.12/8.6.12) 
          id XAA20814; Fri, 1 Sep 1995 23:10:55 +0100
Message-Id: <199509012210.XAA20814@alma.mcqueen.com>
Subject: Re: perl5 and informix?
To: Greg Balfanz <gbalfanz@netcom.com>
Date: Fri, 1 Sep 1995 23:10:54 +0100 (BST)
Cc: perldb-interest@vix.com, Tim.Bunce@ig.co.uk
In-Reply-To: <199509011701.KAA11095@netcom20.netcom.com> from "Greg Balfanz" at Sep 1, 95 10:01:07 am
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 443


> Tim Bounce said you might have a perl5 informix or even DBI?
> 
> I'm trying to find one, any help would be appreciated.

Well, it's under rapid development at the moment. I'll have more details on
it on Monday or Tuesday, since I'm trying to get about 6 different projects
completed all at the same time just now!

It's rudimentarily working. I just need to tidy things a little.

> Greg

-- 
Alligator Descartes	|
descarte@mcqueen.com	| 
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <01516-24@lion>;
          Mon, 4 Sep 1995 07:30:25 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 03 Sep 95 20:02:30 GMT
Received: from gate.demon.co.uk by punt2.demon.co.uk id aa02785;
          3 Sep 95 20:59 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id ab20396;
          1 Sep 95 20:47 GMT-60:00
Received: by gw.home.vix.com id AA25766; Fri, 1 Sep 95 06:05:19 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA25761; Fri, 1 Sep 95 06:05:17 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa06976;
          1 Sep 95 12:04 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa06723;
          1 Sep 95 12:02 +0100
Received: from ig.co.uk by lion id <12535-0@lion>;
          Fri, 1 Sep 1995 11:47:06 +0100
To: yp@gr.osf.org
Subject: Re: perl5 interface for postgres95 beta 0.003
Cc: perldb-interest@vix.com
Date: Fri, 1 Sep 1995 11:47:06 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509011202.aa06723@post.demon.co.uk>


> From: Yves Paindaveine <yp@gr.osf.org>
> 
> Tim,
> 
> >Yves, your Pg95 module is not a Perl 5 DBI module compatible driver.
> >Have you considered writing a DBD module from Postgres95?
> 
> I thought you were using acronyms (DBI for DB interface) but not
> talking about projects. It was so fuzzy about what's going on or still
> in activity that I decided to make the simplest. But I may be
> interested in writing more portable code, can you possibly explain me
> the goals and differences between DBI and DBD (or attach a document)?
> 
Please have a browse through ftp.demon.co.uk:/pub/perl/db/.
Especially the DBI directory (grab README, dbispec.v06.Z, DBI-0.62.tar.Z
and perldb-interest/perldb-i.v06[gh]) and grab DBD-Oracle-0.25.tar.Z
from the DBD/Oracle directory.

In overview:

    Read (the out of date) dbispec.v06 to get the flavor of things.
    Unpack, build, test and install the DBI module.
    Unpack the DBD::Oracle module and s/Oracle/Pg95/g in Oracle.xs
    Hack out the guts of dbdimp.c and replace with pg95 code.

This is a gross simplification but should get you going.

> >Are you on the perldb-interest mailing list?
> 
> No. I started a week ago with perl and database, along with httpd
> management and cgi writing. I went to perl due to cgi... Please send
> me the address where to register. Are there other groups/news
> which may be of interest?
> 
Send a request to perldb-interest-request@vix.com. If you have any queries
before you're subscription gets processed just email your message to the
list: perldb-interest@vix.com

Good luck.

> I've seen in a later mail that you put the package in perl/mod.  Do
> you know that my previously uploaded package (before you told me not
> to do so) is in another place (/perl I think).
> 
Thanks. I'll look into it.

> -yp
> 
Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <01550-24@lion>;
          Mon, 4 Sep 1995 07:31:00 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 03 Sep 95 22:40:50 GMT
Received: from gate.demon.co.uk by punt2.demon.co.uk id aa22374;
          3 Sep 95 23:39 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa16271;
          2 Sep 95 0:21 GMT-60:00
Received: by gw.home.vix.com id AA20943; Fri, 1 Sep 95 05:00:44 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA20938; Fri, 1 Sep 95 05:00:42 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id ab00700;
          1 Sep 95 10:56 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ab26832;
          1 Sep 95 10:53 +0100
Received: from ig.co.uk by lion id <10691-0@lion>;
          Fri, 1 Sep 1995 10:52:25 +0100
To: mhm@austin.ibm.com
Subject: Re: Any problems with DBI::Dispatch
Cc: perldb-interest@vix.com
Date: Fri, 1 Sep 1995 10:52:25 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509011053.ab26832@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> |> 
> |> Note that the error message shows 'DBI::db=HASH(0x200a9ef0)' as the 
> |> name of the function and -1 as the number of parameters. This 
> |> implies that the real problem is still with the 
> |> if (ima->flags & IMA_FUNC_REDIRECT) test which is before the
> |> IMA_HAS_USAGE test.
> |> 
> |> For some reason (ima->flags & IMA_FUNC_REDIRECT) is true when it 
> |> should not be.
> |> Focus your attention on that.
> 
> Found the problem, in DBI.xs - install_method asssumes at time of
> creation that newly created ima structure will contain all zeros or nulls.
> In my case, this is not true.
> 
> On the installation of the "db::commit" method everything in the
> structure is zero/null except the last field -- flags, so I end up with
> both IMA_HAS_USAGE and IMA_FUNC_REDIRECT, plus quite a few others 
> we haven't even thought of.   :-)
> 
> Quick solution is to memset the allocated structure or call calloc.
> 
Thanks Mike. I'm sorry you've had to spend time finding my bug.
Expect a new release shortly.

> Mike 
> mhm@austin.ibm.com
>
Tim. 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <01549-22@lion>;
          Mon, 4 Sep 1995 07:31:59 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 02 Sep 95 04:01:16 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id am15491;
          2 Sep 95 5:00 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <23093-0@frigate.doc.ic.ac.uk>; Fri, 1 Sep 1995 21:16:35 +0100
Received: by gw.home.vix.com id AA20577; Fri, 1 Sep 95 04:59:40 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA20572; Fri, 1 Sep 95 04:59:38 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa00661;
          1 Sep 95 10:55 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa26832;
          1 Sep 95 10:53 +0100
Received: from ig.co.uk by lion id <10664-0@lion>;
          Fri, 1 Sep 1995 10:50:48 +0100
To: davide.migliavacca@relay.inferentia.it
Subject: RE: Error building DBI 0.62 on AIX 3.2.5
Cc: perldb-interest@vix.com
Date: Fri, 1 Sep 1995 10:50:48 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509011053.aa26832@post.demon.co.uk>


> From: Davide Migliavacca <davide.migliavacca@relay.inferentia.it>
> 
> Well, it seems safemalloc is not that safe; I mean, if "safe" was what
> I'd expect. It doesn't initialize memory for sure.

The safe in safemalloc means that it'll never return a NULL pointer.

> Many many thanks to Mike that found the solution to its problem (and so
> indirectly for mine also).

Yes, thanks Mike. I'll check through the code for any similar problems.

> Isn't it interesting we're both working on IBM hardware ((:-))

You have my sympathies ;-)

> Yes, do memset and everything's OK.

I'll probably use Larry's Newz macro.

> The good thing is, I have taken a good look at DBI internals :-)
>
Great, maybe you can tell me how it works! :-))
 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <01568-7@lion>;
          Mon, 4 Sep 1995 07:32:04 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 02 Sep 95 04:01:17 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id an15491;
          2 Sep 95 5:00 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <24359-0@frigate.doc.ic.ac.uk>; Fri, 1 Sep 1995 22:17:49 +0100
Received: by gw.home.vix.com id AA00429; Fri, 1 Sep 95 07:16:43 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA00421; Fri, 1 Sep 95 07:16:41 -0700
Received: from alma.mcqueen.com (alma.mcqueen.com [193.133.160.249]) 
          by fruitbat.mcqueen.com (8.6.12/8.6.12) with ESMTP id PAA09914;
          Fri, 1 Sep 1995 15:13:05 +0100
From: descarte@mcqueen.com
Received: (from descarte@localhost) by alma.mcqueen.com (8.6.12/8.6.12) 
          id PAA17338; Fri, 1 Sep 1995 15:18:59 +0100
Message-Id: <199509011418.PAA17338@alma.mcqueen.com>
Subject: Re: Perl5 and Informix?
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Date: Fri, 1 Sep 1995 15:18:59 +0100 (BST)
Cc: perldb-interest@vix.com
In-Reply-To: <9509011417.ab05531@post.demon.co.uk> from "Tim Bunce" at Sep 1, 95 01:12:16 pm
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 784


> > It does not have to be DBI:: or odbc compatible,  good old 
> > propietary informix would suffice.
> > 
> > Is the perl5 XS conceivable for a moderatly skilled programmer to
> > interface to informix?
> > 
> > Any pointers?
> > 
> Anyone with enough skill to do it has enough to do it as a DBI driver.
> 
> Alligator Descartes <descarte@mcqueen.com> has expressed an interest
> in doing an Informix interface. He's currently doing the DBD::mSQL driver.
> 
> Hopefully he could either do it for you or give you a kick start and
> help you along.

I'm actually on this right this minute. I've got no estimation of the time
it'll take, but hopefully there'll be an alpha mid next week as long as I
get some more diskspace!

> Tim.

-- 
Alligator Descartes	|
descarte@mcqueen.com	| 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <01549-23@lion>;
          Mon, 4 Sep 1995 07:32:04 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 02 Sep 95 04:01:17 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id al15491;
          2 Sep 95 5:00 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <22916-0@frigate.doc.ic.ac.uk>; Fri, 1 Sep 1995 21:13:12 +0100
Received: by gw.home.vix.com id AA01802; Fri, 1 Sep 95 07:36:55 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA01795; Fri, 1 Sep 95 07:36:52 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.11/8.6.11) with SMTP id JAA124617;
          Fri, 1 Sep 1995 09:36:50 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for mhm@austin.ibm.com at austin.ibm.com; id AA23992;
          Fri, 1 Sep 1995 09:35:33 -0500
From: mhm@austin.ibm.com
Message-Id: <9509011435.AA23992@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: mhm@austin.ibm.com, perldb-interest@vix.com
Subject: Re: Problem with definition of %DBI_IF {bind_param}
In-Reply-To: Your message of Fri, 01 Sep 95 13:13:48 +0100. <9509011417.ac05531@post.demon.co.uk>
Date: Fri, 01 Sep 95 09:35:32 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> 
> Umm, bind_col and bind_columns are also wrong!
> 

I hadn't gotten that far....yet, still struggling with DB2 parameter
binding.  :-(

Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <01568-19@lion>;
          Mon, 4 Sep 1995 07:33:49 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 03 Sep 95 01:49:19 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa29509;
          3 Sep 95 2:49 +0100
Received: by gw.home.vix.com id AA10298; Sat, 2 Sep 95 15:31:02 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA10293; Sat, 2 Sep 95 15:31:00 -0700
Received: by deathstar.kersur.net (Linux Smail3.1.29.1 #16) id m0sp15B-0001aVC;
          Sat, 2 Sep 95 18:30 EDT
Message-Id: <m0sp15B-0001aVC@deathstar.kersur.net>
Date: Sat, 2 Sep 95 18:30 EDT
From: root <root@kersur.net>
To: perldb-interest@vix.com
Subject: DBI build failure

cc: Tim.Bunce@ig.co.uk

Tried installing and testing DBI on my Linux system.  The test suite
failed.  Enclosed is the debugging information requested:

---------------------------------------------------------------------------

deathstar:/usr/src/DBI# perl Makefile.PL 

    Build, TEST and INSTALL Perl 5 first. Use version 5.001m or later.

    DO NOT build the DBI under the Perl source tree.

    Use 'make test' to execute self tests.

MakeMaker
	NAME => 'DBI'
	VERSION => '0.62'
Using header files found in /usr/local/lib/perl5/i586-linux/CORE
Looking for perl 5 by these names: 
miniperl perl, 
in these dirs:
/usr/local/bin /usr/bin /bin /usr/local/sbin /usr/sbin /sbin /usr/X11R6/bin /usr/X11R5/bin /usr/games /usr/local/adm/bin . /usr/bin
Executing /usr/local/bin/perl
Writing Makefile for DBI
deathstar:/usr/src/DBI# make
mkdir /usr/src/DBI/blib
mkdir /usr/src/DBI/blib/auto
mkdir /usr/src/DBI/blib/auto/DBI
/usr/local/bin/perl /usr/local/lib/perl5/ExtUtils/xsubpp -typemap /usr/local/lib/perl5/ExtUtils/typemap DBI.xs >DBI.tc && mv DBI.tc DBI.c
cc -c -Dbool=char -DHAS_BOOL -O2     -I/usr/local/lib/perl5/i586-linux/CORE   DBI.c
DBI.c: In function `XS_DBI__install_method':
DBI.c:1016: warning: assignment from incompatible pointer type
Running mkbootstrap for DBI ()
Writing DBI.bs
ld -o /usr/src/DBI/blib/auto/DBI/DBI.o -r DBI.o   
cp DBI.bs /usr/src/DBI/blib/auto/DBI/DBI.bs
mkdir /usr/src/DBI/blib/DBI
cp DBIXS.h /usr/src/DBI/blib/DBI/DBIXS.h
mkdir /usr/src/DBI/blib/DBD
cp lib/DBD/ExampleP.pm /usr/src/DBI/blib/DBD/ExampleP.pm
cp lib/DBD/NullP.pm /usr/src/DBI/blib/DBD/NullP.pm
cp DBI.pm /usr/src/DBI/blib/DBI.pm
deathstar:/usr/src/DBI# make test
/usr/local/bin/perl -I/usr/src/DBI/blib -I/usr/src/DBI/blib -I/usr/local/lib/perl5/i586-linux -I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/min...............ok
All tests successful.
Files=1,  Tests=6,  1 secs ( 0.74 cusr  0.17 csys =  0.91 cpu)
/usr/local/bin/perl -I/usr/src/DBI/blib -I/usr/src/DBI/blib -I/usr/local/lib/perl5/i586-linux -I/usr/local/lib/perl5 test.pl
test.pl 
DBI test application $Revision: 1.12 $
Switch: DBI Switch by Tim Bunce, 1.44 
DebugDispatch: 0
Available Drivers: ExampleP, NullP
Read DBI special variables (expect 0, 99, 99):
err:    0
err:    99
errstr: 99
Attempt to modify DBI special variables.
Expect a 'Can't modify' error message:
Can't modify $DBI::&rows special variable at test.pl line 59

Driver installed as DBI::dr=HASH(0xe4e88)
Connected as DBI::db=HASH(0x102e94)

Test error handling: prepare invalid query.
Expect an ERROR EVENT message:
ERROR EVENT: DBI::db=HASH(0x102e70)->DBI::default_handler:
	Unknown field names: unknown_field_name
 at /usr/src/DBI/blib/DBD/ExampleP.pm line 63
prepare returned UNDEF. $DBI::err=0

Cursor prepare'd as DBI::st=HASH(0x102fd8)
Prepared as DBI::st=HASH(0x6d0c0)
Number of fields: 3
Data type of first field: 1
Driver name: ExampleP

Fetching data from both cursors.
Expect several rows of data:
fetchrow scalar context problem at test.pl line 124.
make: *** [test] Error 2
deathstar:/usr/src/DBI# make test TEST_VERBOSE=1
/usr/local/bin/perl -I/usr/src/DBI/blib -I/usr/src/DBI/blib -I/usr/local/lib/perl5/i586-linux -I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose=1; runtests @ARGV;' t/*.t
t/min...............1..6
ok 1
ok 2
ok 3
ok 4
ok 4
ok 5
ok 6
ok
All tests successful.
Files=1,  Tests=6,  1 secs ( 0.75 cusr  0.16 csys =  0.91 cpu)
/usr/local/bin/perl -I/usr/src/DBI/blib -I/usr/src/DBI/blib -I/usr/local/lib/perl5/i586-linux -I/usr/local/lib/perl5 test.pl
test.pl 
DBI test application $Revision: 1.12 $
Switch: DBI Switch by Tim Bunce, 1.44 
DebugDispatch: 0
Available Drivers: ExampleP, NullP
Read DBI special variables (expect 0, 99, 99):
err:    0
err:    99
errstr: 99
Attempt to modify DBI special variables.
Expect a 'Can't modify' error message:
Can't modify $DBI::&rows special variable at test.pl line 59

Driver installed as DBI::dr=HASH(0xe4e94)
Connected as DBI::db=HASH(0x102ea0)

Test error handling: prepare invalid query.
Expect an ERROR EVENT message:
ERROR EVENT: DBI::db=HASH(0x102e7c)->DBI::default_handler:
	Unknown field names: unknown_field_name
 at /usr/src/DBI/blib/DBD/ExampleP.pm line 63
prepare returned UNDEF. $DBI::err=0

Cursor prepare'd as DBI::st=HASH(0x102fe4)
Prepared as DBI::st=HASH(0x6d0cc)
Number of fields: 3
Data type of first field: 1
Driver name: ExampleP

Fetching data from both cursors.
Expect several rows of data:
fetchrow scalar context problem at test.pl line 124.
make: *** [test] Error 2
deathstar:/usr/src/DBI# perl -e 'use Config; print Config::myconfig()'
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=linux, osver=1, archname=i586-linux
    uname='linux deathstar 1.2.9 #18 tue jul 11 19:35:44 edt 1995 i586 '
    hint=recommended
  Compiler:
    cc='cc', optimize='-O2'
    cppflags='-Dbool=char -DHAS_BOOL'
    ccflags ='-Dbool=char -DHAS_BOOL'
    ldflags =''
    stdchar='char', d_stdstdio=, usevfork=false
    voidflags=15, castflags=0, d_casti32=, d_castneg=define
    intsize=4, alignbytes=4, usemymalloc=n, randbits=31
  Libraries:
    so=sa
    libpth=/lib /usr/lib /usr/local/lib
    libs=-ldbm -ldld -lm -lc -lbsd
    libc=/usr/lib/libc.sa
  Dynamic Linking:
    dlsrc=dl_dld.xs, dlext=o, d_dlsymun=
    cccdlflags='', ccdlflags='', lddlflags='-r'

deathstar:/usr/src/DBI#


---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <01618-9@lion>;
          Mon, 4 Sep 1995 07:35:38 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 03 Sep 95 18:27:50 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa03046;
          3 Sep 95 19:27 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id ab23337;
          1 Sep 95 0:09 GMT-60:00
Received: by gw.home.vix.com id AA00420; Thu, 31 Aug 95 10:23:21 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA00415; Thu, 31 Aug 95 10:23:20 -0700
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id MAA29720; Thu, 31 Aug 1995 12:23:18 -0500
Date: Thu, 31 Aug 1995 12:23:18 -0500 (CDT)
From: Ben A Lindstrom <mouring@netnet.net>
Cc: perldb-interest@vix.com
Subject: Re: New to DBI.
In-Reply-To: <9508311106.ab26149@post.demon.co.uk>
Message-Id: <Pine.SUN.3.91.950831122025.29509A-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Thu, 31 Aug 1995, Tim Bunce wrote:

> 
> > From: Ben A Lindstrom <mouring@netnet.net>
> > 
> > I'm new to DBI and I'm just in the process of setting up my machine to do
> > developement of a QuickBase perl module.
> > 
> What is QuickBase? Does it support SQL?
> 
Yes, QuickBaseis a NeXTStep  database written by the people at Object World.
Currently it's not a 100% ansi-sql, but close enought. =-)

> > If DBI is not far enought along I might have to write my own interface 
> > for the meantime.
> >
> Please don't do that. I'll help you with any problems you may have.
>  
I  really did not perfer to do this anyways.  =-)

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <01616-16@lion>;
          Mon, 4 Sep 1995 07:36:00 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 03 Sep 95 20:18:06 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa00526;
          3 Sep 95 21:17 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id ab26866;
          1 Sep 95 21:40 GMT-60:00
Received: by gw.home.vix.com id AA21088; Fri, 1 Sep 95 05:07:02 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA21081; Fri, 1 Sep 95 05:07:00 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa01022;
          1 Sep 95 10:58 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa27162;
          1 Sep 95 10:55 +0100
Received: from ig.co.uk by lion id <10977-0@lion>;
          Fri, 1 Sep 1995 10:57:12 +0100
To: perldb-interest@vix.com, solson@cst.com
Subject: Re: Help w/ Oracle Makefiles
Date: Fri, 1 Sep 1995 10:57:12 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509011055.aa27162@post.demon.co.uk>


> From: "Steve A. Olson" <solson@cst.com>
> 
> I've been lurking on this list for some time now, and have a somewhat
> tangential question related to Oracle OCI and relinking an executable
> on different Operating Systems and Oracle Versions.
> 
> Here's my goal:
> 	Generate a "makefile" (using perl or whatever) that links
> 	one C-Source code file which contains Oracle OCI calls and 
> 	additional object and header files into an executable on, ideally,
> 	any platform (Hardware/OS combination) for any Oracle Version.
> 	
> 	The makefile should be able to link the executable without user
> 	modification of the makefile.
> 
> The main issues are OS portability and Oracle Versions.
> 
> I'm looking for ideas, opinions, and experiences.  I'll post a follup
> summary if I get more that a couple of responses.  Thanks!
> 
I don't think it's possible to have one makefile for Oracle on many
platforms.  The best approach seems to be to supply a script which
write a makefile using a chunk of the Oracle proc.mk firl for that
platform.

You're welcome to use the DBD::Oracle module Makefile.PL code for this.

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <01618-13@lion>;
          Mon, 4 Sep 1995 07:36:05 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 03 Sep 95 22:29:45 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa08892;
          3 Sep 95 23:29 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id ab09874;
          1 Sep 95 23:25 GMT-60:00
Received: by gw.home.vix.com id AA21802; Fri, 1 Sep 95 11:23:35 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA21797; Fri, 1 Sep 95 11:23:34 -0700
Received: from isye.isye.gatech.edu by gatech.edu with SMTP 
          id AA02162 (5.65c/Gatech-10.0-IDA for <perldb-interest@vix.com>);
          Fri, 1 Sep 1995 14:26:28 -0400
Received: from gemini.gatech.edu by isye.isye.gatech.edu (4.1/SMI-4.1) 
          id AA00385; Fri, 1 Sep 95 14:23:31 EDT
Received: by gemini.gatech.edu (4.1/SMI-4.1) id AA05368;
          Fri, 1 Sep 95 14:23:29 EDT
Date: Fri, 1 Sep 1995 14:23:28 -0400 (EDT)
From: Jennifer Anne Turns <jennifer@chmsr.isye.gatech.edu>
X-Sender: jennifer@gemini
To: perldb-interest@vix.com
Subject: Subscribe Request
Message-Id: <Pine.SUN.3.91.950901142147.5306A@gemini>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

If this is the right place, please subscribe me.

SUBSCRIBE Jennifer Turns jennifer@isye.isye.gatech.edu

Thanks.

-------------------------------------------------------------------------
Jennifer Turns			Center for Human-Machine Systems Research
jennifer@chmsr.gatech.edu	School of Industrial and Systems Engineering
voice: (404) 894-4318		Georgia Institute of Technology	
fax:   (404) 894-2301		765 Ferst Drive, Atlanta, GA 30332-0205

"As far as the laws of mathematics refer to reality, they are not
certain;  and as far as they are certain, they do not refer to reality"
-- Albert Einstein
-------------------------------------------------------------------------

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <23491-7@lion>;
          Tue, 5 Sep 1995 07:22:20 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 04 Sep 95 19:46:39 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa24845;
          4 Sep 95 20:45 +0100
Received: by gw.home.vix.com id AA03102; Mon, 4 Sep 95 07:25:07 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA03097; Mon, 4 Sep 95 07:25:05 -0700
Received: from alma.mcqueen.com (alma.mcqueen.com [193.133.160.249]) 
          by fruitbat.mcqueen.com (8.6.12/8.6.12) with ESMTP id PAA20799;
          Mon, 4 Sep 1995 15:16:46 +0100
From: descarte@mcqueen.com
Received: (from descarte@localhost) by alma.mcqueen.com (8.6.12/8.6.12) 
          id PAA13240; Mon, 4 Sep 1995 15:22:47 +0100
Message-Id: <199509041422.PAA13240@alma.mcqueen.com>
Subject: ANNOUNCE: DBD::mSQL-0.60pl1 released
To: perldb-interest@vix.com, msql-list@bond.edu.au
Date: Mon, 4 Sep 1995 15:22:47 +0100 (BST)
Cc: Tim.Bunce@ig.co.uk, k@anna.mind.de
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 186


Available from:

	ftp://ftp.mcqueen.com/pub/languages/perl5/DBPerl/

Let me know how things go.

Many bug fixes. Now supports DELETE!

-- 
Alligator Descartes	|
descarte@mcqueen.com	| 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <23491-18@lion>;
          Tue, 5 Sep 1995 07:25:20 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 04 Sep 95 21:31:19 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa15479;
          4 Sep 95 22:30 +0100
Received: by gw.home.vix.com id AA12178; Mon, 4 Sep 95 09:41:51 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA12171; Mon, 4 Sep 95 09:41:48 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa29059;
          4 Sep 95 17:20 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa11340;
          4 Sep 95 17:18 +0100
Received: from ig.co.uk by lion id <09840-0@lion>;
          Mon, 4 Sep 1995 14:38:05 +0100
To: gbalfanz@netcom.com, descarte@mcqueen.com
Subject: Re: perl5 and informix?
Cc: perldb-interest@vix.com
Date: Mon, 4 Sep 1995 14:38:05 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509041718.aa11340@post.demon.co.uk>


> From: descarte@mcqueen.com
> 
> > Tim Bounce

Boing!

> >            said you might have a perl5 informix or even DBI?
> > I'm trying to find one, any help would be appreciated.
> 
> Well, it's under rapid development at the moment. I'll have more details on
> it on Monday or Tuesday, since I'm trying to get about 6 different projects
> completed all at the same time just now!
> 
> It's rudimentarily working. I just need to tidy things a little.
> 
Wonderful!

> Alligator Descartes	|
> descarte@mcqueen.com	| 
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <23491-26@lion>;
          Tue, 5 Sep 1995 07:27:03 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 04 Sep 95 23:07:12 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa00692;
          5 Sep 95 0:06 +0100
Received: by gw.home.vix.com id AA20506; Mon, 4 Sep 95 11:48:30 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA20498; Mon, 4 Sep 95 11:48:26 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa10796;
          4 Sep 95 19:44 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ac06907;
          4 Sep 95 19:42 +0100
Received: from ig.co.uk by lion id <20306-0@lion>;
          Mon, 4 Sep 1995 18:25:52 +0100
To: root@kersur.net
Subject: Re: DBI 0.62 on Linux
Cc: perldb-interest@vix.com
Date: Mon, 4 Sep 1995 18:25:52 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509041942.ac06907@post.demon.co.uk>


> From: root <root@kersur.net>
> 
> 
> Tried installing and testing DBI on my Linux system.  The test suite
> failed.  Enclosed is the debugging information requested:
> 
> ---------------------------------------------------------------------------
> 
> deathstar:/usr/src/DBI# make test
> [...]
> Expect several rows of data:
> fetchrow scalar context problem at test.pl line 124.
> make: *** [test] Error 2

> deathstar:/usr/src/DBI# perl -e 'use Config; print Config::myconfig()'
> Summary of my perl5 (patchlevel 1) configuration:
>   Platform:
>     osname=linux, osver=1, archname=i586-linux
>     uname='linux deathstar 1.2.9 #18 tue jul 11 19:35:44 edt 1995 i586 '
>   Compiler:
>     cc='cc', optimize='-O2'
>     cppflags='-Dbool=char -DHAS_BOOL'

This is a problem I've only seen with Perl's built with -DDEBUGGING.
I've not got to the bottom of it yet (I've not actually spent much
time looking).

Does 'perl -Dx -e 0' say 'Recompile perl with -DDEBUGGING ...' for you?

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <23491-37@lion>;
          Tue, 5 Sep 1995 07:28:22 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 05 Sep 95 00:43:57 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa09900;
          5 Sep 95 1:43 +0100
Received: by gw.home.vix.com id AA27421; Mon, 4 Sep 95 13:33:22 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA27416; Mon, 4 Sep 95 13:33:19 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa29108;
          4 Sep 95 17:21 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ah11340;
          4 Sep 95 17:18 +0100
Received: from ig.co.uk by lion id <11035-0@lion>;
          Mon, 4 Sep 1995 15:46:03 +0100
To: fon@iinet.com.au
Subject: Re: URGENT! I need a database
Cc: perldb-interest@vix.com
Date: Mon, 4 Sep 1995 15:46:03 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509041718.ah11340@post.demon.co.uk>


> From: Surmani <ozi@yarrow.wt.com.au>
> [...]
>
> I've been using mSqlPerl on Linux, but now find it too limited for
> my application (a web search engine).
> 
> Please give me some advice on which database I should use. Commercial is
> OK, but I would prefer to run it on Linux with a perl interface (DBI ?).
> If it does SQL then even better.
> 
> Please send me an URGENT response on this,
> to the email address below:
> 
> Adrian Smith
> fon@iinet.com.au
> 
I've heard that Oracle 7 runs on Linux (but it's unsupported).

Since I'm not familiar with Linux I'll copy to the list for others to
make suggestions (and no doubt quiz you about why mSQL is too limited
for your application :-)

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <23491-39@lion>;
          Tue, 5 Sep 1995 07:28:41 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 05 Sep 95 01:34:59 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa24371;
          5 Sep 95 2:34 +0100
Received: by gw.home.vix.com id AA05018; Mon, 4 Sep 95 15:35:29 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA05005; Mon, 4 Sep 95 15:35:26 -0700
Received: from eur.ericsson.se by rome (8.6.12/EUR) id PAA10705;
          Mon, 4 Sep 1995 15:35:12 -0700
Received: from ops by eur.ericsson.se (8.6.12/EUR-Dublin) id PAA07507;
          Mon, 4 Sep 1995 15:35:11 -0700
Received: from navajo.raynet.com by ops (4.1/SMI-4.1) id AA26696;
          Sun, 3 Sep 95 15:41:07 PDT
Received: from localhost by navajo.raynet.com (4.1/SMI-4.1) id AA08554;
          Sun, 3 Sep 95 15:41:05 PDT
Message-Id: <9509032241.AA08554@navajo.raynet.com>
From: Yary Hluchan <yhluchan@ops.raynet.com>
To: perldb-interest@vix.com
Subject: new guy ignores labor day, goes to work and gripes
X-Mailer: exmh version 1.4.1 7/21/94
Date: Sun, 03 Sep 1995 15:41:04 -0700

I hate it when my machine crashes with unsaved work. That's what happens when 
your xterm is a Mac... or is that what happens when you use computers...

Let's try again


 d) Multiple SQL statements may not be combined in a single statement
    handle, e.g., a single $sh. This restriction has most impact upon
    Sybase users. An alternative approach may be possible later.
 
 e) Non-sequential record reads are not supported in this version of the
    DBperl API. E.g., records can only be fetched in the order that the
    database returned them and once fetched they are forgotten.
 
 f) Positioned updates and deletes are not currently supported by
    DBperl. E.g., it is not possible to execute a select query, fetch a
    number of rows and then update or delete the 'current row' before
    fetching more rows.  All cursors are assumed to be read-only and
    unnamed. This may change in the future.


Restrictions are made to keep people from doing what they want to do, ususally 
for the greater good. In this case I suppose you're saving work for the DBD 
implementors- I guess the tradeoff is DBI spec complexity vs. module 
usefulness... anyway I understand not all databases make it easy to implement 
all these features, but most allow at least one of the above. The DBI spec 
should specify a syntax for these, so that an application built to take 
advantage of one engine's select-and-update is portable to a different engine 
that also supports select-and-update. You've already identified that people do 
these things... it can be in the portability section as something no engine 
actually supports, but when people decide they need it, do you really want a 
different interface each time?

 e) Do we need functions to control:
      autocommit -- on / off
      locking -- level=row/page/table, readlocks, timeouts etc
 
 f) Do we need functions to:
      call database procedures
      return space left in/for the database

I'd guess these are like the features denied above- different for each DB- 
well autocommit should be pretty easy (if implemented, is there going to be a 
default enforced?)- as for locking you could reasonably request "this level or 
stricter" as part of the spec...



  Standard DATA_TYPE values:
    'CHARACTER', 'CHARACTER VARYING', 'DECIMAL', 'FLOAT',
    'DOUBLE PRECISION', 'INTEGER', 'NUMERIC', 'REAL', 'SMALLINT',
    'BIT', 'BIT VARYING', 'DATE', 'TIME', 'TIMESTAMP'.

Are there any assumptions as to the lengths of the numerics? I guess there's 
always info_col in case of emergency... NUMERIC_SCALE isn't explicitly defined 
in the doc but I assume that what it's for.


 c) How to handle date and time intervals in a distinct manner from
    absolute dates and times is yet to be defined. It may be ignored.

have native-time-interval functions been proposed? Something like ntint2sec/ 
sec2ntint that convert a number of seconds into a time interval and back.


well that's all for now.
-yary (yary@ops.raynet.com)
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <23491-41@lion>;
          Tue, 5 Sep 1995 07:29:02 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 05 Sep 95 01:35:00 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa24422;
          5 Sep 95 2:34 +0100
Received: by gw.home.vix.com id AA05023; Mon, 4 Sep 95 15:35:32 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA05012; Mon, 4 Sep 95 15:35:28 -0700
Received: from eur.ericsson.se by rome (8.6.12/EUR) id PAA10711;
          Mon, 4 Sep 1995 15:35:13 -0700
Received: from ops by eur.ericsson.se (8.6.12/EUR-Dublin) id PAA07511;
          Mon, 4 Sep 1995 15:35:12 -0700
Received: from navajo.raynet.com by ops (4.1/SMI-4.1) id AA26719;
          Sun, 3 Sep 95 15:46:30 PDT
Received: from localhost by navajo.raynet.com (4.1/SMI-4.1) id AA08571;
          Sun, 3 Sep 95 15:46:28 PDT
Message-Id: <9509032246.AA08571@navajo.raynet.com>
From: Yary Hluchan <yhluchan@ops.raynet.com>
To: perldb-interest@vix.com
Subject: new guy ignores labor day, goes to work and gripes
X-Mailer: exmh version 1.4.1 7/21/94
Date: Sun, 03 Sep 1995 15:46:28 -0700

I hate it when my machine crashes with unsaved work. That's what happens when 
your xterm is a Mac... or is that what happens when you use computers...

Let's try again


 d) Multiple SQL statements may not be combined in a single statement
    handle, e.g., a single $sh. This restriction has most impact upon
    Sybase users. An alternative approach may be possible later.
 
 e) Non-sequential record reads are not supported in this version of the
    DBperl API. E.g., records can only be fetched in the order that the
    database returned them and once fetched they are forgotten.
 
 f) Positioned updates and deletes are not currently supported by
    DBperl. E.g., it is not possible to execute a select query, fetch a
    number of rows and then update or delete the 'current row' before
    fetching more rows.  All cursors are assumed to be read-only and
    unnamed. This may change in the future.


Restrictions are made to keep people from doing what they want to do, ususally 
for the greater good. In this case I suppose you're saving work for the DBD 
implementors- I guess the tradeoff is DBI spec complexity vs. module 
usefulness... anyway I understand not all databases make it easy to implement 
all these features, but most allow at least one of the above. The DBI spec 
should specify a syntax for these, so that an application built to take 
advantage of one engine's select-and-update is portable to a different engine 
that also supports select-and-update. You've already identified that people do 
these things... it can be in the portability section as something no engine 
actually supports, but when people decide they need it, do you really want a 
different interface each time?

 e) Do we need functions to control:
      autocommit -- on / off
      locking -- level=row/page/table, readlocks, timeouts etc
 
 f) Do we need functions to:
      call database procedures
      return space left in/for the database

I'd guess these are like the features denied above- different for each DB- 
well autocommit should be pretty easy (if implemented, is there going to be a 
default enforced?)- as for locking you could reasonably request "this level or 
stricter" as part of the spec...



  Standard DATA_TYPE values:
    'CHARACTER', 'CHARACTER VARYING', 'DECIMAL', 'FLOAT',
    'DOUBLE PRECISION', 'INTEGER', 'NUMERIC', 'REAL', 'SMALLINT',
    'BIT', 'BIT VARYING', 'DATE', 'TIME', 'TIMESTAMP'.

Are there any assumptions as to the lengths of the numerics? I guess there's 
always info_col in case of emergency... NUMERIC_SCALE isn't explicitly defined 
in the doc but I assume that what it's for.


 c) How to handle date and time intervals in a distinct manner from
    absolute dates and times is yet to be defined. It may be ignored.

have native-time-interval functions been proposed? Something like ntint2sec/ 
sec2ntint that convert a number of seconds into a time interval and back.


well that's all for now.
-yary
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <23491-43@lion>;
          Tue, 5 Sep 1995 07:29:22 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 05 Sep 95 01:38:45 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa25307;
          5 Sep 95 2:38 +0100
Received: by gw.home.vix.com id AA20792; Mon, 4 Sep 95 11:50:19 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA20774; Mon, 4 Sep 95 11:50:17 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa10817;
          4 Sep 95 19:45 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ag06907;
          4 Sep 95 19:42 +0100
Received: from ig.co.uk by lion id <20577-0@lion>;
          Mon, 4 Sep 1995 19:37:13 +0100
To: perldb-interest@vix.com, z50816@mip.lasc.lockheed.com
Subject: Re: _install_me.al
Date: Mon, 4 Sep 1995 19:37:13 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509041942.ag06907@post.demon.co.uk>


> From: Terry Greenlaw <z50816@mip.lasc.lockheed.com>
> 
> > The real question is why did perl not see the _install_method in DBI.xs?
> 
> > Make sure that DBI.c, DBI.o and DBI.so get built and DBI.so gets copied into
> > ./blib. If so then try again with PERL_DL_DEBUG=2 and check that the
> > DynaLoader is loading the right .so file.
> 
> Tim,
> You were right about having a static version of DBI already linked into Perl.
> When I rebuilt and reinstalled perl the DBI build was easy. I built DBI
> dynamically at first, but a statically built DBD/Oracle doesn't get along
> well with a dynamic DBI. Building them both statically fixed the problem.
> 
What do you mean by 'doesn't get along well with a dynamic DBI'?
It ought to work.

> There is (supposedly) a patch from HP for ld that will solve the "illegal
> loader fixup needed" problem, allowing Oracle to finally load dynamically
> on HP/UX 9.

That would be great.

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <23491-45@lion>;
          Tue, 5 Sep 1995 07:29:35 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 05 Sep 95 02:08:56 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa03839;
          5 Sep 95 3:08 +0100
Received: by gw.home.vix.com id AA07081; Mon, 4 Sep 95 16:11:50 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA07074; Mon, 4 Sep 95 16:11:46 -0700
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id BAA29541;
          Tue, 5 Sep 1995 01:09:48 +0200
Date: Tue, 5 Sep 1995 01:09:48 +0200
Message-Id: <199509042309.BAA29541@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: yhluchan@ops.raynet.com
Cc: perldb-interest@vix.com
In-Reply-To: <9509012351.AA02775@shawnee.raynet.com> (message from Yary Hluchan on Fri, 01 Sep 1995 16:51:14 -0700)
Subject: Re: Welcome noise
Reply-To: andreas.koenig@mind.de


  >               Just one more hurdle to pass: where does one get the DBI
  >sources? I found out about this list via http://www.metronet.com/perlinfo/perl5
  >/p5.modules.list, which has lots of contact addresses but no ftp sites. Which 
  >is understandable, ideas don't sit in directories.

Welcome to the world of idearectories,

first address is

 ftp://ftp.demon.co.uk/pub/perl/db

completely mirrored at

 ftp://ftp.funet.fi/pub/unix/languages/perl/ports/db

also good:

 ftp://ftp.pasteur.fr/pub/Perl/CPAN/pml/byauthor/TIMB
 ftp://ftp.cs.ruu.nl/pub/PERL/perl5.0/CPAN/pml/byauthor/TIMB


andreas

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <23491-47@lion>;
          Tue, 5 Sep 1995 07:29:48 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 05 Sep 95 02:18:02 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa06128;
          5 Sep 95 3:17 +0100
Received: by gw.home.vix.com id AA05011; Mon, 4 Sep 95 15:35:27 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA04997; Mon, 4 Sep 95 15:35:25 -0700
Received: from eur.ericsson.se by rome (8.6.12/EUR) id PAA10719;
          Mon, 4 Sep 1995 15:35:15 -0700
Received: from ops by eur.ericsson.se (8.6.12/EUR-Dublin) id PAA07522;
          Mon, 4 Sep 1995 15:35:14 -0700
Received: from shawnee.raynet.com by ops (4.1/SMI-4.1) id AA27671;
          Fri, 1 Sep 95 16:51:16 PDT
Received: from localhost by shawnee.raynet.com (4.1/SMI-4.1) id AA02775;
          Fri, 1 Sep 95 16:51:15 PDT
Message-Id: <9509012351.AA02775@shawnee.raynet.com>
From: Yary Hluchan <yhluchan@ops.raynet.com>
To: perldb-interest@vix.com
Subject: Welcome noise
X-Mailer: exmh version 1.4.1 7/21/94
Date: Fri, 01 Sep 1995 16:51:14 -0700

Hello! I managed to find the mailing list and join without posting to the
general group. Just one more hurdle to pass: where does one get the DBI
sources? I found out about this list via http://www.metronet.com/perlinfo/perl5
/p5.modules.list, which has lots of contact addresses but no ftp sites. Which 
is understandable, ideas don't sit in directories.

-y!
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <23491-51@lion>;
          Tue, 5 Sep 1995 07:30:19 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 05 Sep 95 03:08:11 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa18444;
          5 Sep 95 4:07 +0100
Received: by gw.home.vix.com id AA01348; Mon, 4 Sep 95 14:33:18 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA01342; Mon, 4 Sep 95 14:33:16 -0700
Received: from alma.mcqueen.com (alma.mcqueen.com [193.133.160.249]) 
          by fruitbat.mcqueen.com (8.6.12/8.6.12) with ESMTP id WAA23630;
          Mon, 4 Sep 1995 22:29:20 +0100
From: descarte@mcqueen.com
Received: (from descarte@localhost) by alma.mcqueen.com (8.6.12/8.6.12) 
          id WAA01591; Mon, 4 Sep 1995 22:35:21 +0100
Message-Id: <199509042135.WAA01591@alma.mcqueen.com>
Subject: Re: URGENT! I need a database (fwd)
To: perldb-interest@vix.com
Date: Mon, 4 Sep 1995 22:35:21 +0100 (BST)
Cc: fon@iinet.com.au
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 1449


> > I've been using mSqlPerl on Linux, but now find it too limited for
> > my application (a web search engine).
> > 
> > Please give me some advice on which database I should use. Commercial is
> > OK, but I would prefer to run it on Linux with a perl interface (DBI ?).
> > If it does SQL then even better.
> > 
> > Please send me an URGENT response on this,
> > to the email address below:
> > 
> > Adrian Smith
> > fon@iinet.com.au
> > 
> I've heard that Oracle 7 runs on Linux (but it's unsupported).

Yup, completely unsupported! It does run though. I've seen it with my own
eyes. Took me about 3 days to get the bastard thing to work at all, let alone
properly. I wouldn't really recommend it.

Besides, the binaries you get are for the SCO platform ( Satan incarnate )
and you need to run iBCS ( iCBS? ) emulation under the Linux kernel to get it
to run at all. At least, I did.

> Since I'm not familiar with Linux I'll copy to the list for others to
> make suggestions (and no doubt quiz you about why mSQL is too limited
> for your application :-)

Yes, I must say, it sounds a trifle bizarre. Informix may be a better bet
on a Linux platform since it's memory grunginess isn't quite as disgusting
as Oracle. 

Of course, if your web engine's serious then you need something with a bit
more welly than a PC, I'd say. Infoseek runs an 8 CPU Sparc1000 last I heard,
for instance.

> Tim.

-- 
Alligator Descartes	|
descarte@mcqueen.com	| 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <23491-69@lion>;
          Tue, 5 Sep 1995 07:35:26 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 05 Sep 95 04:44:43 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa11479;
          5 Sep 95 5:44 +0100
Received: by gw.home.vix.com id AA05004; Mon, 4 Sep 95 15:35:26 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA04995; Mon, 4 Sep 95 15:35:24 -0700
Received: from eur.ericsson.se by rome (8.6.12/EUR) id PAA10701;
          Mon, 4 Sep 1995 15:35:11 -0700
Received: from ops by eur.ericsson.se (8.6.12/EUR-Dublin) id PAA07503;
          Mon, 4 Sep 1995 15:35:10 -0700
Received: from navajo.raynet.com by ops (4.1/SMI-4.1) id AA26722;
          Sun, 3 Sep 95 15:46:54 PDT
Received: from localhost by navajo.raynet.com (4.1/SMI-4.1) id AA08577;
          Sun, 3 Sep 95 15:46:52 PDT
Message-Id: <9509032246.AA08577@navajo.raynet.com>
From: Yary Hluchan <yhluchan@ops.raynet.com>
To: perldb-interest@vix.com
Subject: erratum
X-Mailer: exmh version 1.4.1 7/21/94
Date: Sun, 03 Sep 1995 15:46:52 -0700

] well that's all for now.
] -yary (yary@ops.raynet.com)

and I signed with the wrong address, sheesh. That's yhluchan@ops.raynet.com

while I'm here, it'd be nice if the perlmod list posted at http:// 
www.metronet.com/perlinfo/perl5/p5.modules.list had ftp addresses as well as 
mailing list addresses... a sentiment I already sent but it hasn't bounced 
back to me yet
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <23491-71@lion>;
          Tue, 5 Sep 1995 07:35:45 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 05 Sep 95 04:45:20 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa11493;
          5 Sep 95 5:44 +0100
Received: by gw.home.vix.com id AA07098; Mon, 4 Sep 95 16:12:37 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA07093; Mon, 4 Sep 95 16:12:36 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa10781;
          4 Sep 95 19:44 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ab06907;
          4 Sep 95 19:41 +0100
Received: from ig.co.uk by lion id <20269-0@lion>;
          Mon, 4 Sep 1995 18:19:51 +0100
To: mhm@austin.ibm.com
Subject: Re: Building the %attribs for bind_param ?
Cc: perldb-interest@vix.com, Jacqui.Caren@ig.co.uk
Date: Mon, 4 Sep 1995 18:19:51 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509041941.ab06907@post.demon.co.uk>


> From: mhm@austin.ibm.com
> To: Tim.Bounce@ig.co.uk
> 
> The question boils down to what is the best way to build the %attribs
> hash-ref for bind_param and bind-col.  Given the number of possible 
> things that a DB2 user might want to bind to a parameter or in binding 
> the incoming data to a host variable, I think I need to supply a 
> function which builds and returns the %attribs hash-ref.
> 
> Would it be better to define it as an XSUB routine or in the pm file
> under DBD::DB2::st?   I currently leaning towards doing it in perl in
> the pm file.
> 
> Any comments, anything else I need to consider?
> 
I don't see any need for this. Could you give me some examples of the
'number of possible things that a DB2 user might want to bind to ...'

> Mike 
> 
Tim.

p.s. Mail to 'Tim.Bounce@ig.co.uk' only reaches me because my mail admin
has a sense of humor! I'm now going to shoot her. Further mail will bounce!
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <12667-8@lion>;
          Wed, 6 Sep 1995 07:34:19 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 06 Sep 95 04:24:21 GMT
Received: from gate.demon.co.uk by punt2.demon.co.uk id aa14316;
          6 Sep 95 5:23 +0100
Received: from frigate.doc.ic.ac.uk by gate.demon.co.uk id ab24724;
          6 Sep 95 0:00 GMT-60:00
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <07848-0@frigate.doc.ic.ac.uk>; Tue, 5 Sep 1995 23:41:07 +0100
Received: by gw.home.vix.com id AA29294; Tue, 5 Sep 95 05:41:10 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA29286; Tue, 5 Sep 95 05:40:59 -0700
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id OAA00941;
          Tue, 5 Sep 1995 14:33:25 +0200
Date: Tue, 5 Sep 1995 14:33:25 +0200
Message-Id: <199509051233.OAA00941@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: descarte@mcqueen.com
Cc: perldb-interest@vix.com, Tim.Bunce@ig.co.uk
In-Reply-To: <199509041422.PAA13240@alma.mcqueen.com> (descarte@mcqueen.com)
Subject: Re: ANNOUNCE: DBD::mSQL-0.60pl1 released
Reply-To: andreas.koenig@mind.de

  >
  >	ftp://ftp.mcqueen.com/pub/languages/perl5/DBPerl/
  >
  >Let me know how things go.


That's how I patched it:


--- mSQL.xs.601	Tue Sep  5 14:16:46 1995
+++ mSQL.xs	Tue Sep  5 14:24:51 1995
@@ -99,7 +99,7 @@
     SV *        dbh
     SV *        keysv
     CODE:
-    SV *valuesv = dbd_db_FETCH(dbh, keysv);
+    SV *valuesv = (SV*)dbd_db_FETCH(dbh, keysv);
     if (!valuesv) {
         /* XXX hand-off to DBI for possible processing  */
         croak("Can't get %s->{%s}: unrecognised attribute",
@@ -264,7 +264,7 @@
     long        len
     SV *        destsv
     CODE:
-    ST(0) = dbd_st_readblob(sth, field, offset, len, destsv);
+    ST(0) = (SV*)dbd_st_readblob(sth, field, offset, len, destsv);
 
 
 void
@@ -286,7 +286,7 @@
     SV *        sth
     SV *        keysv
     CODE:
-    SV *valuesv = dbd_st_FETCH(sth, keysv);
+    SV *valuesv = (SV*)dbd_st_FETCH(sth, keysv);
     if (!valuesv) {
         /* XXX hand-off to DBI for possible processing  */
         croak("Can't get %s->{%s}: unrecognised attribute",




And here is the output of the test script:

Statement handle DBI::st=HASH(0x10014b44) DESTROY ignored - never set up at test2.pl line 96.
Cannot prepare sth (0): 
** Connecting to first instance....

-------------------------------------------------------
MINERVA_DEBUG found. libmsql started with the following:-


-------------------------------------------------------

** Disconnecting from first instance....
** Connecting to second instance.....
**** Trying cursor returning rows as list.....
FUNC!: SELECT
     ReturnRow: 1 Test Guy1
     ReturnRow: 2 Test Guy2
     ReturnRow: 3 Rubbish Guy1
     ReturnRow: 3 Rubbish Guy1
     ReturnRow: 3 Rubbish Guy1
     ReturnRow: 3 Rubbish Guy1
**** Re-doing the cursor but fetching fields separately.....
FUNC!: SELECT
     Id: 1	Name: Test Guy1
     Id: 2	Name: Test Guy2
     Id: 3	Name: Rubbish Guy1
     Id: 3	Name: Rubbish Guy1
     Id: 3	Name: Rubbish Guy1
     Id: 3	Name: Rubbish Guy1
**** Trying an INSERT now.......
FUNC!: INSERT
INSERT present in statement
**** Re-doing the cursor but fetching fields separately.....
FUNC!: SELECT
     Id: 1	Name: Test Guy1
     Id: 2	Name: Test Guy2
     Id: 3	Name: Rubbish Guy1
     Id: 3	Name: Rubbish Guy1
     Id: 3	Name: Rubbish Guy1
     Id: 3	Name: Rubbish Guy1
     Id: 3	Name: Rubbish Guy1
**** Trying a CREATE statement......
FUNC!: CREATE
CREATE present in statement
rc: 0	what: Table "pants3" exists




Hope, that helps,
andreas


---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <12666-34@lion>;
          Wed, 6 Sep 1995 07:39:03 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 06 Sep 95 02:49:49 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id ab29495;
          6 Sep 95 3:48 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <10298-0@frigate.doc.ic.ac.uk>; Wed, 6 Sep 1995 01:40:31 +0100
Received: by gw.home.vix.com id AA03486; Tue, 5 Sep 95 13:08:14 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA03479; Tue, 5 Sep 95 13:08:12 -0700
Received: (thorn@localhost) by amaretto.cc.mcgill.ca (8.6.10/8.6.5) id QAA07596;
          Tue, 5 Sep 1995 16:08:10 -0400
Date: Tue, 5 Sep 1995 16:08:10 -0400 (EDT)
From: Ron Hall <thorn@cc.mcgill.ca>
To: perldb-interest@vix.com
Subject: How does one do this....?
Message-Id: <Pine.SOL.3.91.950905160702.6813O-100000@amaretto.cc.mcgill.ca>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII


Using oraperl2.4 Oracle 7.blah blah blah how does one execute
a stired procedure? Just Curious?


       Ron Hall       | DISCLAIMER: I said it. I must've meant it. There is
       Analyst        |             nobody else to blame.
 <thorn@cc.mcgill.ca> | Clown:n: A man who acts too natural.
   +1 514 398 3718    | "Whenever doubt can be called into question, do so."

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <12666-39@lion>;
          Wed, 6 Sep 1995 07:39:50 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 05 Sep 95 22:19:19 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa11794;
          5 Sep 95 23:19 +0100
Received: by gw.home.vix.com id AA08067; Tue, 5 Sep 95 07:47:32 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA08062; Tue, 5 Sep 95 07:47:31 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.11/8.6.11) with SMTP id JAA157585 
          for <perldb-interest@vix.com>; Tue, 5 Sep 1995 09:47:30 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA19524;
          Tue, 5 Sep 1995 09:47:27 -0500
From: mhm@austin.ibm.com
Message-Id: <9509051447.AA19524@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: hash refs as parameters to bind_param
Date: Tue, 05 Sep 95 09:47:25 -0500


What is the correct way to create the %attribs hash ref for bind_param?

$sth->bind_param($param_index_or_name,\$value[,\%attribs])

Whatever combination of things I try I get the following from 
dbd_bind_ph:

DBI::st=HASH(0x200d5fc8)->bind_param(:p1): invalid attribute parameter at genreq.pl line 15.


which comes from dbd_bind_ph:

   if (!SvROK(attribs) || SvTYPE(SvRV(attribs)) ==  SVt_PVHV)
            croak("%s->bind_param(%s): invalid attribute parameter",
                SvPV(sth,na), name);


It is the "SvTYPE(SvRV(attribs)) == SVt_PVHV" which is not true.

Anybody have some examples?

Thanks.
Mike Moran

------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <12666-56@lion>;
          Wed, 6 Sep 1995 07:44:28 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 06 Sep 95 00:30:50 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa11867;
          6 Sep 95 1:30 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa18509;
          5 Sep 95 23:16 GMT-60:00
Received: by gw.home.vix.com id AA26853; Tue, 5 Sep 95 05:13:47 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA26848; Tue, 5 Sep 95 05:13:46 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.11/8.6.11) with SMTP id HAA126634 
          for <perldb-interest@vix.com>; Tue, 5 Sep 1995 07:13:44 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA20052;
          Tue, 5 Sep 1995 07:13:43 -0500
From: mhm@austin.ibm.com
Message-Id: <9509051213.AA20052@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: Re: Building the %attribs for bind_param ?
In-Reply-To: Your message of Mon, 04 Sep 95 18:19:51 +0100. <9509041941.ab06907@post.demon.co.uk>
Date: Tue, 05 Sep 95 07:13:42 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> 
> > From: mhm@austin.ibm.com
> > To: Tim.Bounce@ig.co.uk
> > 
> > The question boils down to what is the best way to build the %attribs
> > hash-ref for bind_param and bind-col.  Given the number of possible 
> > things that a DB2 user might want to bind to a parameter or in binding 
> > the incoming data to a host variable, I think I need to supply a 
> > function which builds and returns the %attribs hash-ref.
> > 
> > Would it be better to define it as an XSUB routine or in the pm file
> > under DBD::DB2::st?   I currently leaning towards doing it in perl in
> > the pm file.
> > 
> > Any comments, anything else I need to consider?
> > 
> I don't see any need for this. Could you give me some examples of the
> 'number of possible things that a DB2 user might want to bind to ...'
> 

Well, let us see:

1. Specify the incoming host variable type (16 options).
2. Specify the SQL variable type (25 options)
3. Specify precision for numeric, character, and blob types.
4. Specify scale for numeric and time stamp types
5. Specify whether the statement gets evaluated as an input,
   input deferred (stored proceedure), output or output deferred.
6. Specify truncation levels for character and binary types
7. Specify either a host variable to bound or special value to
   a parameter.  (DB2 allows the posting of several special "variables"
   which cause the database to perform a special function, yet typically
   the only result is a positive return code)

Of the above list, I can guarantee that I need to support the first
4 on every statement executed.  Item 5, I can defer until I want/need
to support stored procedures.  As for items 6&7, what I am doing 
currently has no need, but I would guess that folks attempting to 
use DB2perl on existing databases will probably want them fairly quickly.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <12666-62@lion>;
          Wed, 6 Sep 1995 07:45:28 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 06 Sep 95 00:48:09 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa18416;
          6 Sep 95 1:47 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa05929;
          5 Sep 95 21:47 GMT-60:00
Received: by gw.home.vix.com id AA29351; Tue, 5 Sep 95 05:43:44 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA29346; Tue, 5 Sep 95 05:43:41 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id ab20500;
          5 Sep 95 13:37 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa17629;
          5 Sep 95 13:35 +0100
Received: from ig.co.uk by lion id <01337-0@lion>;
          Tue, 5 Sep 1995 13:37:28 +0100
To: perldb-interest@vix.com, yhluchan@ops.raynet.com
Subject: Re: new guy ignores labor day, goes to work and gripes
Date: Tue, 5 Sep 1995 13:37:28 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509051335.aa17629@post.demon.co.uk>


> From: Yary Hluchan <yhluchan@ops.raynet.com>
> 
>  d) Multiple SQL statements may not be combined in a single statement
>     handle, e.g., a single $sh. This restriction has most impact upon
>     Sybase users. An alternative approach may be possible later.
>
Something may be possible for non-selects. It's not a priority.

>  e) Non-sequential record reads are not supported in this version of the
>     DBperl API. E.g., records can only be fetched in the order that the
>     database returned them and once fetched they are forgotten.
>
A FetchScroll function (ala X/Open SQL CLI) is looking more probable now.

>  f) Positioned updates and deletes are not currently supported by
>     DBperl. E.g., it is not possible to execute a select query, fetch a
>     number of rows and then update or delete the 'current row' before
>     fetching more rows.  All cursors are assumed to be read-only and
>     unnamed. This may change in the future.
> 
This is also looking more probable.

> Restrictions are made to keep people from doing what they want to do, ususally 
> for the greater good. In this case I suppose you're saving work for the DBD 
> implementors- I guess the tradeoff is DBI spec complexity vs. module 
> usefulness... anyway I understand not all databases make it easy to implement 
> all these features, but most allow at least one of the above. The DBI spec 
> should specify a syntax for these, so that an application built to take 
> advantage of one engine's select-and-update is portable to a different engine 
> that also supports select-and-update. You've already identified that people do 
> these things... it can be in the portability section as something no engine 
> actually supports, but when people decide they need it, do you really want a 
> different interface each time?
> 
Once more than one driver supports a concept via a private method then
we can talk about a common interface. Till then it's not worth it.

The primary focus remains on the real standards (X/Open SQL CLI).

>  e) Do we need functions to control:
>       autocommit -- on / off
>       locking -- level=row/page/table, readlocks, timeouts etc
>  
>  f) Do we need functions to:
>       call database procedures
>       return space left in/for the database
> 
> I'd guess these are like the features denied above- different for each DB- 
> well autocommit should be pretty easy (if implemented, is there going to be a 
> default enforced?)- as for locking you could reasonably request "this level or 
> stricter" as part of the spec...
> 
'autocommit -- on / off' has arrived quietly as $dbh->{AutoCommit}.
'call database procedures' will probably get addressed when I do DBD::Ingres.

>   Standard DATA_TYPE values:
>     'CHARACTER', 'CHARACTER VARYING', 'DECIMAL', 'FLOAT',
>     'DOUBLE PRECISION', 'INTEGER', 'NUMERIC', 'REAL', 'SMALLINT',
>     'BIT', 'BIT VARYING', 'DATE', 'TIME', 'TIMESTAMP'.
> 
> Are there any assumptions as to the lengths of the numerics? I guess there's 
> always info_col in case of emergency... NUMERIC_SCALE isn't explicitly defined 
> in the doc but I assume that what it's for.
> 
>  c) How to handle date and time intervals in a distinct manner from
>     absolute dates and times is yet to be defined. It may be ignored.
> 
> have native-time-interval functions been proposed? Something like ntint2sec/ 
> sec2ntint that convert a number of seconds into a time interval and back.
> 
Discussed at great length in the archives.

Data type issues will now follow the standards (the earlier version of
(X/Open SQL CLI didn't include DATE / TIME etc).

The bottom line is that the DBI will grow over time and follow whatever
standards are appropriate. (Where no standard is applicable we'll make
something up!)

The 0.6 spec is very dated now. I have recently received the latest
X/Open SQL specs (CLI and SQL) and I'll be talking about the implications
of those once I've had time to consider them. Expect a period of heavy
discussion and rapid change in the not-too-distant future.

> well that's all for now.
> -yary (yary@ops.raynet.com)
>
Tim. 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <12666-70@lion>;
          Wed, 6 Sep 1995 07:46:46 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 06 Sep 95 02:30:24 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa23446;
          6 Sep 95 3:29 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa21183;
          5 Sep 95 20:08 GMT-60:00
Received: by gw.home.vix.com id AA10292; Tue, 5 Sep 95 01:39:37 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA10287; Tue, 5 Sep 95 01:39:34 -0700
Received: from yquem.inferentia.it (yquem.inferentia.it [151.99.220.17]) 
          by relay.inferentia.it (8.6.12/8.6.12) with SMTP id KAA21545;
          Tue, 5 Sep 1995 10:38:30 +0200
Posted-Date: Tue, 5 Sep 1995 10:38:30 +0200
Received: by yquem.inferentia.it with Microsoft Mail 
          id <01BA7B7C.E11F5C80@yquem.inferentia.it>;
          Tue, 5 Sep 1995 10:46:38 +-200
Message-Id: <01BA7B7C.E11F5C80@yquem.inferentia.it>
From: Davide Migliavacca <davide.migliavacca@relay.inferentia.it>
To: "'perldb-interest@vix.com'" <perldb-interest@vix.com>
Cc: 'Tim Bunce' <Tim.Bunce@ig.co.uk>
Subject: DBI at work
Date: Tue, 5 Sep 1995 10:46:37 +-200
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

DBI 0.62 and DBD::Oracle 0.25, with a wowperl-like wrapper, are now at =
REAL work on
		http://www.smau.it

You can access the search engine using
		http://www.smau.it/magellano/ricerche/gsearch.shtml (italian)
		http://www.smau.it/magellano/english/ricerche/gsearch.shtml (english)

The search is implemented using a wowperl-derivative (the CGI onlinefe =
you can see mentioned in the source of those forms) which calls an =
Oracle 7.1 PL/SQL package and then outputs the results.
BTW, the translation of the page elements is done automagically by the =
wowperl derivative which acts as a front-end to the stored procedures.
A number of batch-built pages (all lists) are also built calling the =
same thing but in background (since building those lists at runtime is =
too costly).
Unfortunately the real data is not very multi-language, so very few =
things will be understandable by a non-italian speaking guy. That's not =
the fault of DBI :-)
The system runs on a DEC Alphaserver 1000 4/200 with 128 Mb of RAM, =
Oracle 7.1 in a very large configuration, OSF/1 3.2, perl 5.001m, DBI =
0.62, DBD::Oracle 0.25, Oraperl and CGI.pm.
DBI will be even more at work during the fair the server is referring to =
(SMAU 95), in which it will take care of a moltitude of features, =
comprising a BLOB replicator for Oracle 7.1. Yes, it is already working!

Davide Migliavacca
(a proud user of DBI)


---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <12666-93@lion>;
          Wed, 6 Sep 1995 07:51:03 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 06 Sep 95 06:06:42 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa04964;
          6 Sep 95 7:06 +0100
Received: by gw.home.vix.com id AB07081; Tue, 5 Sep 95 13:47:46 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA07072; Tue, 5 Sep 95 13:47:39 -0700
Received: from eur.ericsson.se by rome (8.6.12/EUR) id NAA19369;
          Tue, 5 Sep 1995 13:46:58 -0700
Received: from ops by eur.ericsson.se (8.6.12/EUR-Dublin) id NAA16402;
          Tue, 5 Sep 1995 13:46:58 -0700
Received: from shawnee.raynet.com by ops (4.1/SMI-4.1) id AA21079;
          Tue, 5 Sep 95 13:48:38 PDT
Received: from localhost by shawnee.raynet.com (4.1/SMI-4.1) id AA07878;
          Tue, 5 Sep 95 13:48:36 PDT
Message-Id: <9509052048.AA07878@shawnee.raynet.com>
From: Yary Hluchan <yhluchan@ops.raynet.com>
To: perldb-interest@vix.com
Subject: Re: new guy ignores labor day, goes to work and gripes
In-Reply-To: <9509051335.aa17629@post.demon.co.uk>
X-Mailer: exmh version 1.4.1 7/21/94
Date: Tue, 05 Sep 1995 13:48:36 -0700

] The 0.6 spec is very dated now. I have recently received the latest
] X/Open SQL specs (CLI and SQL) and I'll be talking about the implications
] of those once I've had time to consider them. Expect a period of heavy
] discussion and rapid change in the not-too-distant future.


oooh, I can't wait!

There was some talk about how to represent booleans in the package- my first 
pass at a solution would be to have a hash that's populated by the DBD (and 
possibly client program?), like %Bool=(TRUE => 1, 1 => 1, FALSE => 0, 0 => 0)

I suppose I should dig through the archives sometime soon...

-y!
(Eagerly awaiting a chance to crash & dissect the Ingres mod)
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <18800-1@lion>;
          Wed, 6 Sep 1995 14:59:05 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 06 Sep 95 08:22:11 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa03208;
          6 Sep 95 9:20 +0100
Received: by gw.home.vix.com id AA29851; Tue, 5 Sep 95 18:34:34 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA29846; Tue, 5 Sep 95 18:34:33 -0700
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id UAA14485; Tue, 5 Sep 1995 20:34:30 -0500
Date: Tue, 5 Sep 1995 20:34:29 -0500 (CDT)
From: Ben A Lindstrom <mouring@netnet.net>
Cc: perldb-interest@vix.com
Subject: DBI/QuickBase/Objective-C
In-Reply-To: <9508311106.ab26149@post.demon.co.uk>
Message-Id: <Pine.SUN.3.91.950905202656.14189A-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

After skim  through the dbdimp.h and I think I have a good idea  on how 
to quickly implement the Quickbase engine,  but I was wonder if anyone 
knew if Perl  can handle Objective-C or should I write a 2nd library that 
changes Objective-C into plan C.

Thanks.

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <25042-7@lion>;
          Wed, 6 Sep 1995 22:14:52 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 06 Sep 95 21:11:08 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id ab11190;
          6 Sep 95 22:10 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <28292-0@frigate.doc.ic.ac.uk>; Wed, 6 Sep 1995 21:26:40 +0100
Received: by gw.home.vix.com id AA24524; Wed, 6 Sep 95 01:05:54 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA24518; Wed, 6 Sep 95 01:05:45 -0700
Received: from bssmlsa.nerc-bas.ac.uk.nerc-bas.ac.uk 
          by bsfiles.nerc-bas.ac.uk (8.6.10/NERC-1.2(Solaris 2.x) id JAA16416;
          Wed, 6 Sep 1995 09:07:13 +0100
Date: Wed, 6 Sep 1995 09:05:39 +0100
Message-Id: <6054.199509060805@bssmlsa.nerc-bas.ac.uk.nerc-bas.ac.uk>
From: Andrew G Wood <agw@mail.nerc-bas.ac.uk>
To: perldb-interest@vix.com
In-Reply-To: <Pine.SOL.3.91.950905160702.6813O-100000@amaretto.cc.mcgill.ca> (message from Ron Hall on Tue, 5 Sep 1995 16:08:10 -0400 (EDT))
Subject: Re: How does one do this....?
Reply-To: agw@mail.nerc-bas.ac.uk
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII

>>>>> "Ron" == Ron Hall <thorn@cc.mcgill.ca> writes:

    > Using oraperl2.4 Oracle 7.blah blah blah how does one execute a
    > stired procedure? Just Curious?

I think you will need to get hold of the two new extensions that I have
been developing over the past months .... SpoOn and WooDen .... soo your
Perl will look somethings like:

use WooDen;
use SpoOn;

Obtained from the unusual place .... beware they are still under development!

:-)

Andy.

---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <27189-1@lion>;
          Thu, 7 Sep 1995 07:21:13 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 06 Sep 95 23:41:17 GMT
Received: from gw.home.vix.com by punt2.demon.co.uk id aa29860;
          7 Sep 95 0:41 +0100
Received: by gw.home.vix.com id AA10768; Wed, 6 Sep 95 11:09:03 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA10760; Wed, 6 Sep 95 11:09:01 -0700
Received: from isye.isye.gatech.edu by gatech.edu with SMTP 
          id AA02503 (5.65c/Gatech-10.0-IDA for <perldb-interest@vix.com>);
          Wed, 6 Sep 1995 14:11:56 -0400
Received: from chmsr.gatech.edu by isye.isye.gatech.edu (4.1/SMI-4.1) 
          id AA10132; Wed, 6 Sep 95 14:08:55 EDT
Received: by chmsr.gatech.edu (4.1/SMI-4.1) id AA07547;
          Wed, 6 Sep 95 14:08:52 EDT
Date: Wed, 6 Sep 1995 14:08:52 -0400 (EDT)
From: Jennifer Anne Turns <jennifer@chmsr.isye.gatech.edu>
X-Sender: jennifer@chmsr
To: perldb-interest@vix.com, Tim.Bunce@ig.co.uk
Cc: Benjamin Jung <benjamin@mime1.marc.gatech.edu>, 
    Jennifer Anne Turns <jennifer@chmsr.isye.gatech.edu>
Subject: Problems "make"ing the DBD::Oracle driver
Message-Id: <Pine.SUN.3.91.950906135718.7479A-100000@chmsr>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII


I am in the process of trying to get the Perl5 to communicate with 
Oracle7.  I have downloaded the most recent versions of the DBI (0.63) 
and DBD (0.25) and have successfully installed DBI and tested it.  I am 
having problems when "make"ing DBD.  The information reulting from the 
first two steps of this process are given below:


---------------------------------------------------------------------
THIS IS THE SUCCESSFUL OUTPUT FROM THE COMMAND:  perl Makefile.PL

root > perl Makefile.PL

Configuring DBD::Oracle version 0.25...
Remember to actually read the README file!

Using Oracle in /usr/ld/oracle
Oracle sysliblist: -lm
Using /usr/ld/oracle/proc/lib/proc.mk version 7.27
System: perl5.001 sunos srl 5.2 generic_100999-40 sun4m sparc  sun4-solaris 
dl_dlopen.xs
Compiler: cc -O 
Oracle proc.mk would have used these values but we override them:
  CC:       /usr/5bin/cc
  CFLAGS:   -I. -O
  LDFLAGS:  -Bdynamic -L$(LIBHOME)

Checking if your kit is complete...
Looks good
Writing Makefile for DBD::Oracle


---------------------------------------------------------------------
THIS IS THE UNSUCCESSFUL OUTPUT FROM THE COMMAND:  make

root > make
cc -c -O -Kpic -I/usr/local/lib/perl5/sun4-solaris/CORE  
-I/usr/ld/oracle/rdbms/demo  -I/usr/local/lib/perl5/sun4-solaris/DBI Oracle.c
cc -c -O -Kpic -I/usr/local/lib/perl5/sun4-solaris/CORE  
-I/usr/ld/oracle/rdbms/demo -I/usr/local/lib/perl5/sun4-solaris/DBI dbdimp.c
Running Mkbootstrap for DBD::Oracle ()
chmod 644 Oracle.bs
LD_RUN_PATH="" cc -o blib/auto/DBD/Oracle/Oracle.so -G Oracle.o  dbdimp.o 
-L/usr/ld/oracle/lib  /usr/ld/oracle/lib/libocic.a /usr/ld/oracle/lib/osntab.o 
-lsqlnet -lora /usr/ld/oracle/lib/libpls.a -lsqlnet -lnlsrtl -lcv6 -lcore 
-lnlsrtl -lcv6  -lcore  `cat /usr/ld/oracle/rdbms/lib/sysliblist`   -lm
ld: fatal: file /usr/ld/oracle/lib/libocic.a: unknown type, unable to process 
using elf(3E) libraries
*** Error code 1
make: Fatal error: Command failed for target `blib/auto/DBD/Oracle/Oracle.so'


-------------------------------------------------------------------

Someone here suggested that perhaps the problem is with the C compiler 
that is being used - which is the following:

Sparc C Compiler 2.0.1


Any suggestions?  

jennifer


---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <27188-5@lion>;
          Thu, 7 Sep 1995 07:21:29 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 06 Sep 95 23:20:26 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa22470;
          7 Sep 95 0:20 +0100
Received: by gw.home.vix.com id AA14903; Wed, 6 Sep 95 05:38:34 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA14898; Wed, 6 Sep 95 05:38:33 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id ab22600;
          6 Sep 95 10:22 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa03435;
          6 Sep 95 10:20 +0100
Received: from ig.co.uk by lion id <16076-0@lion>;
          Wed, 6 Sep 1995 10:22:37 +0100
To: perldb-interest@vix.com, thorn@cc.mcgill.ca
Subject: Re: How does one do this....?
Date: Wed, 6 Sep 1995 10:22:37 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509061020.aa03435@post.demon.co.uk>


> From: Ron Hall <thorn@cc.mcgill.ca>
> 
> Using oraperl2.4 Oracle 7.blah blah blah how does one execute
> a stired procedure? Just Curious?
> 
Take a look in ftp.demon.co.uk:/pub/perl/db/perl4/oraperl/*

Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <27189-3@lion>;
          Thu, 7 Sep 1995 07:21:29 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 00:21:47 GMT
Received: from gate.demon.co.uk by punt2.demon.co.uk id aa16105;
          7 Sep 95 1:19 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa18073;
          6 Sep 95 23:34 GMT-60:00
Received: by gw.home.vix.com id AA01038; Wed, 6 Sep 95 09:06:18 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA01033; Wed, 6 Sep 95 09:06:16 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa11864;
          6 Sep 95 15:29 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa26609;
          6 Sep 95 15:26 +0100
Received: from ig.co.uk by lion id <19608-0@lion>;
          Wed, 6 Sep 1995 15:10:28 +0100
To: mouring@netnet.net
Subject: Re: DBI/QuickBase/Objective-C
Cc: perldb-interest@vix.com
Date: Wed, 6 Sep 1995 15:10:28 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509061527.aa26609@post.demon.co.uk>


> From: Ben A Lindstrom <mouring@netnet.net>
> 
> After skim  through the dbdimp.h and I think I have a good idea  on how 
> to quickly implement the Quickbase engine,

I hope you've looked at more than just dbdimp.h!

> but I was wonder if anyone 
> knew if Perl  can handle Objective-C or should I write a 2nd library that 
> changes Objective-C into plan C.
>
Try asking in perl5-porters@nicoh.com and comp.lang.perl.misc.
 
Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <27189-6@lion>;
          Thu, 7 Sep 1995 07:21:57 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 01:22:22 GMT
Received: from gate.demon.co.uk by punt2.demon.co.uk id aa12263;
          7 Sep 95 2:17 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa22729;
          7 Sep 95 0:17 GMT-60:00
Received: by gw.home.vix.com id AA20854; Wed, 6 Sep 95 07:03:26 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA20844; Wed, 6 Sep 95 07:03:20 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aj29113;
          6 Sep 95 12:02 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ab16785;
          6 Sep 95 11:46 +0100
Received: from ig.co.uk by lion id <16290-0@lion>;
          Wed, 6 Sep 1995 10:48:43 +0100
To: perldb-interest@vix.com, yhluchan@ops.raynet.com
Subject: Re: new guy ignores labor day, goes to work and gripes
Date: Wed, 6 Sep 1995 10:48:43 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509061146.ab16785@post.demon.co.uk>


> From: Yary Hluchan <yhluchan@ops.raynet.com>
> 
> ] The 0.6 spec is very dated now. I have recently received the latest
> ] X/Open SQL specs (CLI and SQL) and I'll be talking about the implications
> ] of those once I've had time to consider them. Expect a period of heavy
> ] discussion and rapid change in the not-too-distant future.
> 
> oooh, I can't wait!
> 
> There was some talk about how to represent booleans in the package- my first 
> pass at a solution would be to have a hash that's populated by the DBD (and 
> possibly client program?), like %Bool=(TRUE => 1, 1 => 1, FALSE => 0, 0 => 0)
> 
I doubt that'll ever make it into reality. I'll probably stick to
perl's concept of truth and just allow a TRUE and FALSE function to
be exported/imported for those who feel the need to be verbose.

> I suppose I should dig through the archives sometime soon...
> 
> -y!
> (Eagerly awaiting a chance to crash & dissect the Ingres mod)
>
I'm bogged down in real work at the moment. Maybe next week.

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <27188-13@lion>;
          Thu, 7 Sep 1995 07:22:43 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 00:54:58 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa08049;
          7 Sep 95 1:54 +0100
Received: by gw.home.vix.com id AA03562; Wed, 6 Sep 95 09:36:24 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA03557; Wed, 6 Sep 95 09:36:23 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa16637;
          6 Sep 95 16:30 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa07771;
          6 Sep 95 16:28 +0100
Received: from ig.co.uk by lion id <20204-0@lion>;
          Wed, 6 Sep 1995 16:13:56 +0100
To: sante@iasi.com
Subject: Re: DBperl for perl5
Cc: perldb-interest@vix.com
Date: Wed, 6 Sep 1995 16:13:56 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509061628.aa07771@post.demon.co.uk>


> From: Stephanie Sante <sante@iasi.com>
> 
> Hello Tim. I am consulting here at IAS and they have given me a DBperl
> API spec version 0.6 Draft. So far I have been unable to locate the
> DBperl libs for perl5. I have logged onto demon.co.uk and read the
> README file. However I do not see DBperl for perl5. I do see sybperl
> for perl5 though. This client has been doing reports for a client using
> perl4 and engperl. I am doing a conversion to perl5 and for a client which
> will be using sybase. It was the hope that the port to DBperl and perl5
> would allow the DB connections to be generic in the future and the $ENV
> or $Args would simply drive the DB application reports. Could you please
> shed some light on where the current status of things are and where I can
> get the approbriate libraries. Thank you very very much.
> 
The spec is very out of date. DBperl got renamed to 'the DBI module'
(with 'drivers' having DBD::* module names) quite a while ago.

Take a look at ftp.demon.co.uk:/pub/perl/db/...

	DBI/DBI-0.63.tar.Z      (read the notes at the end of DBI.pm)
	DBI/perldb-interest/perldb-i.v06*  (at least the last couple)
	DBD/Oracle/DBD-Oracle-0.25.tar.Z   (as an example of a driver)

No 'DBD::Sybase' driver exists yet but it should be easy to implement
one as an emulation layer over the existing Sybase module. Volunteers
are very welcome.

The status is that everything is alpha but many people are using it
(DBI + DBD::Oracle) for real work.

If Sybase is your only target database then I'd recommend sticking with
the Sybase module for now.

To stay in touch subscribe to the mailing list by sending a message to
perldb-interest-request@vix.com.

> - Stephanie -
>
Tim. 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <27188-15@lion>;
          Thu, 7 Sep 1995 07:23:20 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 01:11:03 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa15851;
          7 Sep 95 2:10 +0100
Received: by gw.home.vix.com id AA27875; Wed, 6 Sep 95 14:24:07 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA27135; Wed, 6 Sep 95 14:16:35 -0700
Received: from ganef.cs.ucla.edu by maui.cs.ucla.edu (Sendmail 4.1/3.27) 
          id AA20591; Tue, 5 Sep 95 18:13:42 PDT
Received: by ganef.cs.ucla.edu (4.1/SMI-4.1) id AA11245;
          Tue, 5 Sep 95 18:11:03 PDT
From: Scott Michel <scottm@ganef.cs.ucla.edu>
Message-Id: <9509060111.AA11245@ganef.cs.ucla.edu>
Subject: DBD::mSQL bought the farm... ;-(
To: perldb-interest@vix.com
Date: Tue, 5 Sep 1995 18:11:03 -0700 (PDT)
Reply-To: scottm@intime.com
X-Mailer: ELM [version 2.4 PL21]
Content-Type: text
Content-Length: 29387

Al:

It's lava. It's molten. It sorta works, but I don't have the current
technical expertise at the moment (ok, gimme 15 seconds!?!) to figure
out exactly what DBD::mSQL's complaint it. Seems to be internal.

I'm hoping the supplied is adequate?

-scottm

perl -e 'use Config; print Config::myconfig()'
----------------------------------------------
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=sunos, osver=4.1.3_u1, archname=sun4-sunos
    uname='sunos ganef 4.1.3_u1 1 sun4m '
    hint=recommended
  Compiler:
    cc='gcc', optimize='-O2'
    cppflags='-DHIDEMYMALLOC'
    ccflags ='-DHIDEMYMALLOC'
    ldflags =''
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=0, d_casti32=define, d_castneg=define
    intsize=4, alignbytes=8, usemymalloc=n, randbits=31
  Libraries:
    so=so
    libpth=/lib /usr/lib /usr/ucblib /usr/local/lib
    libs=-lnsl -ldbm -ldl -lm -lc -lposix
    libc=/usr/lib/libc.so.1.9
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
    cccdlflags='-fpic', ccdlflags=' ', lddlflags='-assert nodefinitions'

Ok, so far. Make the test database, create the pants2 table, make
the necessary mods to test2.pl... and:
--------------------------------------------------------------------------
** Connecting to first instance....

-------------------------------------------------------
MINERVA_DEBUG found. libmsql started with the following:-


-------------------------------------------------------

** Disconnecting from first instance....
** Connecting to second instance.....
**** Trying cursor returning rows as list.....
     ReturnRow: 1 Test Guy1
     ReturnRow: 2 Test Guy2
**** Re-doing the cursor but fetching fields separately.....
     Id: 1	Name: Test Guy1
     Id: 2	Name: Test Guy2
**** Trying an INSERT now.......
INSERT present in statement
**** Re-doing the cursor but fetching fields separately.....
     Id: 1	Name: Test Guy1
     Id: 2	Name: Test Guy2
     Id: 3	Name: Rubbish Guy1
**** Trying a CREATE statement......
CREATE present in statement
**** Inserting some rows.....
INSERT present in statement
**** Re-doing the cursor but fetching fields separately.....
     Id: 1	Name: Rubbish
** Disconnecting from second instance....
disconnect(DBI::db=HASH(0xe8b88)) invalidates 1 associated cursor(s) at ./test2.pl line 131.
--------------------------------------------------------------------------

We clean up a little (drop tables pants2, pants3, and recreate pants2),
and with debugging level 2, we find (stderr and stdout seem to be a little
mixed, but we expect that):
--------------------------------------------------------------------------
    DBI dispatch debug level set to 2
    >> connect     DISPATCH (DBI::dr=HASH(0xb9758) @3 g0 ae5aa0 r1)
    -> connect for DBD::mSQL::dr (DBI::dr=HASH(0xb9758)~0xe8a14 'ganef' 'test')
    New DBI::db (for DBD::mSQL::db, parent=DBI::dr=HASH(0xe8a14), id=)
    dbih_setup_handle(DBI::db=HASH(0xe8954)=>DBI::db=HASH(0xe8af8), DBD::mSQL::db, NULL)
    New DBI::db => DBI::db=HASH(0xe8954) (inner=DBI::db=HASH(0xe8af8)) for DBD::mSQL::db
    <- connect= DBI::db=HASH(0xe8954)
    >> disconnect  DISPATCH (DBI::db=HASH(0xe8954) @1 g0 ae4480 r1)
    -> disconnect for DBD::mSQL::db (DBI::db=HASH(0xe8954)~0xe8af8)
    <- disconnect= 1
    >> connect     DISPATCH (DBI::dr=HASH(0xb9758) @3 g0 ae5aa0 r1)
    -> connect for DBD::mSQL::dr (DBI::dr=HASH(0xb9758)~0xe8a14 'ganef' 'test')
    New DBI::db (for DBD::mSQL::db, parent=DBI::dr=HASH(0xe8a14), id=)
    dbih_setup_handle(DBI::db=HASH(0xe8ae0)=>DBI::db=HASH(0xf4e48), DBD::mSQL::db, NULL)
    New DBI::db => DBI::db=HASH(0xe8ae0) (inner=DBI::db=HASH(0xf4e48)) for DBD::mSQL::db
    <- connect= DBI::db=HASH(0xe8ae0)
    >> DESTROY     DISPATCH (DBI::db=HASH(0xe8954) @1 g0 a0 r1)
       (outer handle DESTROY ignored)
    >> DESTROY     DISPATCH (DBI::db=HASH(0xe8af8) @1 g0 a0 r1)
    -> DESTROY for DBD::mSQL::db (DBI::db=HASH(0xe8af8))
    <- DESTROY= 1
    dbih_clearcom 0x8ad30 done
    >> prepare     DISPATCH (DBI::db=HASH(0xe8ae0) @2 g0 ae4a28 r1)
    -> prepare for DBD::mSQL::db (DBI::db=HASH(0xe8ae0)~0xf4e48 'SELECT * FROM pants2')
    New DBI::st (for DBD::mSQL::st, parent=DBI::db=HASH(0xf4e48), id=)
    dbih_setup_handle(DBI::st=HASH(0xe8ba0)=>DBI::st=HASH(0xe8af8), DBD::mSQL::st, NULL)
    New DBI::st => DBI::st=HASH(0xe8ba0) (inner=DBI::st=HASH(0xe8af8)) for DBD::mSQL::st
    <- prepare= DBI::st=HASH(0xe8ba0)
    >> execute     DISPATCH (DBI::st=HASH(0xe8ba0) @1 g0 ae8108 r1)
    -> execute for DBD::mSQL::st (DBI::st=HASH(0xe8ba0)~0xe8af8)
In: DBD::mSQL::dbd_describe()
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'LinkRow: 0
Name: 1	1
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
In: DBD::mSQL::dbd_describe'LinkRow: 1
Name: Test Guy1	9
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
    <- execute= 1
    >> fetchrow    DISPATCH (DBI::st=HASH(0xe8ba0) @1 g1 a0 r1)
    -> fetchrow for DBD::mSQL::st (DBI::st=HASH(0xe8ba0)~0xe8af8)
In: DBD::mSQL::dbd_describe()
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'LinkRow: 0
Name: 1	1
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
In: DBD::mSQL::dbd_describe'LinkRow: 1
Name: Test Guy1	9
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
Number of fields: 2
Current ROWID: 0
    <- fetchrow= ( '1' 'Test Guy1' ) [2 items]
    >> fetchrow    DISPATCH (DBI::st=HASH(0xe8ba0) @1 g1 a0 r1)
    -> fetchrow for DBD::mSQL::st (DBI::st=HASH(0xe8ba0)~0xe8af8)
In: DBD::mSQL::dbd_describe()
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'LinkRow: 0
Name: 2	1
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
In: DBD::mSQL::dbd_describe'LinkRow: 1
Name: Test Guy2	9
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
Number of fields: 2
Current ROWID: 1
    <- fetchrow= ( '2' 'Test Guy2' ) [2 items]
    >> fetchrow    DISPATCH (DBI::st=HASH(0xe8ba0) @1 g1 a0 r1)
    -> fetchrow for DBD::mSQL::st (DBI::st=HASH(0xe8ba0)~0xe8af8)
In: DBD::mSQL::dbd_describe()
Number of fields: 0
Current ROWID: 2
    <- fetchrow= ( ) [0 items]
    >> finish      DISPATCH (DBI::st=HASH(0xe8ba0) @1 g0 ae6cf0 r1)
    -> finish for DBD::mSQL::st (DBI::st=HASH(0xe8ba0)~0xe8af8)
    <- finish= 1
    >> prepare     DISPATCH (DBI::db=HASH(0xe8ae0) @2 g0 ae4a28 r1)
    -> prepare for DBD::mSQL::db (DBI::db=HASH(0xe8ae0)~0xf4e48 'SELECT * from pants2')
    New DBI::st (for DBD::mSQL::st, parent=DBI::db=HASH(0xf4e48), id=)
    dbih_setup_handle(DBI::st=HASH(0xe8b04)=>DBI::st=HASH(0xf4f50), DBD::mSQL::st, NULL)
    New DBI::st => DBI::st=HASH(0xe8b04) (inner=DBI::st=HASH(0xf4f50)) for DBD::mSQL::st
    <- prepare= DBI::st=HASH(0xe8b04)
    >> DESTROY     DISPATCH (DBI::st=HASH(0xe8ba0) @1 g0 a0 r1)
       (outer handle DESTROY ignored)
    >> DESTROY     DISPATCH (DBI::st=HASH(0xe8af8) @1 g0 a0 r1)
    -> DESTROY for DBD::mSQL::st (DBI::st=HASH(0xe8af8))
    <- DESTROY= 1
    dbih_clearcom 0x8ab10 done
    >> execute     DISPATCH (DBI::st=HASH(0xe8b04) @1 g0 ae8108 r1)
    -> execute for DBD::mSQL::st (DBI::st=HASH(0xe8b04)~0xf4f50)
In: DBD::mSQL::dbd_describe()
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'LinkRow: 0
Name: 1	1
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
In: DBD::mSQL::dbd_describe'LinkRow: 1
Name: Test Guy1	9
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
    <- execute= 1
    >> fetchrow    DISPATCH (DBI::st=HASH(0xe8b04) @1 g1 a0 r1)
    -> fetchrow for DBD::mSQL::st (DBI::st=HASH(0xe8b04)~0xf4f50)
In: DBD::mSQL::dbd_describe()
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'LinkRow: 0
Name: 1	1
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
In: DBD::mSQL::dbd_describe'LinkRow: 1
Name: Test Guy1	9
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
Number of fields: 2
Current ROWID: 0
    <- fetchrow= ( '1' 'Test Guy1' ) [2 items]
    >> fetchrow    DISPATCH (DBI::st=HASH(0xe8b04) @1 g1 a0 r1)
    -> fetchrow for DBD::mSQL::st (DBI::st=HASH(0xe8b04)~0xf4f50)
In: DBD::mSQL::dbd_describe()
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'LinkRow: 0
Name: 2	1
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
In: DBD::mSQL::dbd_describe'LinkRow: 1
Name: Test Guy2	9
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
Number of fields: 2
Current ROWID: 1
    <- fetchrow= ( '2' 'Test Guy2' ) [2 items]
    >> fetchrow    DISPATCH (DBI::st=HASH(0xe8b04) @1 g1 a0 r1)
    -> fetchrow for DBD::mSQL::st (DBI::st=HASH(0xe8b04)~0xf4f50)
In: DBD::mSQL::dbd_describe()
Number of fields: 0
Current ROWID: 2
    <- fetchrow= ( ) [0 items]
    >> finish      DISPATCH (DBI::st=HASH(0xe8b04) @1 g0 ae6cf0 r1)
    -> finish for DBD::mSQL::st (DBI::st=HASH(0xe8b04)~0xf4f50)
    <- finish= 1
    >> prepare     DISPATCH (DBI::db=HASH(0xe8ae0) @2 g0 ae4a28 r1)
    -> prepare for DBD::mSQL::db (DBI::db=HASH(0xe8ae0)~0xf4e48 'INSERT INTO pants2 VALUES ( 3, 'Rubbish Guy1' )')
    New DBI::st (for DBD::mSQL::st, parent=DBI::db=HASH(0xf4e48), id=)
    dbih_setup_handle(DBI::st=HASH(0xf4f8c)=>DBI::st=HASH(0xb6cb4), DBD::mSQL::st, NULL)
    New DBI::st => DBI::st=HASH(0xf4f8c) (inner=DBI::st=HASH(0xb6cb4)) for DBD::mSQL::st
    <- prepare= DBI::st=HASH(0xf4f8c)
    >> DESTROY     DISPATCH (DBI::st=HASH(0xe8b04) @1 g0 a0 r1)
       (outer handle DESTROY ignored)
    >> DESTROY     DISPATCH (DBI::st=HASH(0xf4f50) @1 g0 a0 r1)
    -> DESTROY for DBD::mSQL::st (DBI::st=HASH(0xf4f50))
    <- DESTROY= 1
    dbih_clearcom 0xf2738 done
    >> execute     DISPATCH (DBI::st=HASH(0xf4f8c) @1 g0 ae8108 r1)
    -> execute for DBD::mSQL::st (DBI::st=HASH(0xf4f8c)~0xb6cb4)
In: DBD::mSQL::dbd_describe()
    <- execute= 1
    >> finish      DISPATCH (DBI::st=HASH(0xf4f8c) @1 g0 ae6cf0 r1)
    -> finish for DBD::mSQL::st (DBI::st=HASH(0xf4f8c)~0xb6cb4)
    <- finish= 1
    >> prepare     DISPATCH (DBI::db=HASH(0xe8ae0) @2 g0 ae4a28 r1)
    -> prepare for DBD::mSQL::db (DBI::db=HASH(0xe8ae0)~0xf4e48 'SELECT * from pants2')
    New DBI::st (for DBD::mSQL::st, parent=DBI::db=HASH(0xf4e48), id=)
    dbih_setup_handle(DBI::st=HASH(0xf5010)=>DBI::st=HASH(0xf4fc8), DBD::mSQL::st, NULL)
    New DBI::st => DBI::st=HASH(0xf5010) (inner=DBI::st=HASH(0xf4fc8)) for DBD::mSQL::st
    <- prepare= DBI::st=HASH(0xf5010)
    >> DESTROY     DISPATCH (DBI::st=HASH(0xf4f8c) @1 g0 a0 r1)
       (outer handle DESTROY ignored)
    >> DESTROY     DISPATCH (DBI::st=HASH(0xb6cb4) @1 g0 a0 r1)
    -> DESTROY for DBD::mSQL::st (DBI::st=HASH(0xb6cb4))
    <- DESTROY= 1
    dbih_clearcom 0xf2e48 done
    >> execute     DISPATCH (DBI::st=HASH(0xf5010) @1 g0 ae8108 r1)
    -> execute for DBD::mSQL::st (DBI::st=HASH(0xf5010)~0xf4fc8)
In: DBD::mSQL::dbd_describe()
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'LinkRow: 0
Name: 1	1
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
In: DBD::mSQL::dbd_describe'LinkRow: 1
Name: Test Guy1	9
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
    <- execute= 1
    >> fetchrow    DISPATCH (DBI::st=HASH(0xf5010) @1 g1 a0 r1)
    -> fetchrow for DBD::mSQL::st (DBI::st=HASH(0xf5010)~0xf4fc8)
In: DBD::mSQL::dbd_describe()
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'LinkRow: 0
Name: 1	1
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
In: DBD::mSQL::dbd_describe'LinkRow: 1
Name: Test Guy1	9
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
Number of fields: 2
Current ROWID: 0
    <- fetchrow= ( '1' 'Test Guy1' ) [2 items]
    >> fetchrow    DISPATCH (DBI::st=HASH(0xf5010) @1 g1 a0 r1)
    -> fetchrow for DBD::mSQL::st (DBI::st=HASH(0xf5010)~0xf4fc8)
In: DBD::mSQL::dbd_describe()
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'LinkRow: 0
Name: 2	1
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
In: DBD::mSQL::dbd_describe'LinkRow: 1
Name: Test Guy2	9
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
Number of fields: 2
Current ROWID: 1
    <- fetchrow= ( '2' 'Test Guy2' ) [2 items]
    >> fetchrow    DISPATCH (DBI::st=HASH(0xf5010) @1 g1 a0 r1)
    -> fetchrow for DBD::mSQL::st (DBI::st=HASH(0xf5010)~0xf4fc8)
In: DBD::mSQL::dbd_describe()
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'LinkRow: 0
Name: 3	1
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
In: DBD::mSQL::dbd_describe'LinkRow: 1
Name: Rubbish Guy1	12
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
Number of fields: 2
Current ROWID: 2
    <- fetchrow= ( '3' 'Rubbish Guy1' ) [2 items]
    >> fetchrow    DISPATCH (DBI::st=HASH(0xf5010) @1 g1 a0 r1)
    -> fetchrow for DBD::mSQL::st (DBI::st=HASH(0xf5010)~0xf4fc8)
In: DBD::mSQL::dbd_describe()
Number of fields: 0
Current ROWID: 3
    <- fetchrow= ( ) [0 items]
    >> finish      DISPATCH (DBI::st=HASH(0xf5010) @1 g0 ae6cf0 r1)
    -> finish for DBD::mSQL::st (DBI::st=HASH(0xf5010)~0xf4fc8)
    <- finish= 1
    >> prepare     DISPATCH (DBI::db=HASH(0xe8ae0) @2 g0 ae4a28 r1)
    -> prepare for DBD::mSQL::db (DBI::db=HASH(0xe8ae0)~0xf4e48 'CREATE TABLE pants3 ( id int, name char(64) )')
    New DBI::st (for DBD::mSQL::st, parent=DBI::db=HASH(0xf4e48), id=)
    dbih_setup_handle(DBI::st=HASH(0xf4f74)=>DBI::st=HASH(0xf5028), DBD::mSQL::st, NULL)
    New DBI::st => DBI::st=HASH(0xf4f74) (inner=DBI::st=HASH(0xf5028)) for DBD::mSQL::st
    <- prepare= DBI::st=HASH(0xf4f74)
    >> DESTROY     DISPATCH (DBI::st=HASH(0xf5010) @1 g0 a0 r1)
       (outer handle DESTROY ignored)
    >> DESTROY     DISPATCH (DBI::st=HASH(0xf4fc8) @1 g0 a0 r1)
    -> DESTROY for DBD::mSQL::st (DBI::st=HASH(0xf4fc8))
    <- DESTROY= 1
    dbih_clearcom 0xf24e8 done
    >> execute     DISPATCH (DBI::st=HASH(0xf4f74) @1 g0 ae8108 r1)
    -> execute for DBD::mSQL::st (DBI::st=HASH(0xf4f74)~0xf5028)
In: DBD::mSQL::dbd_describe()
    <- execute= 1
    >> finish      DISPATCH (DBI::st=HASH(0xf4f74) @1 g0 ae6cf0 r1)
    -> finish for DBD::mSQL::st (DBI::st=HASH(0xf4f74)~0xf5028)
    <- finish= 1
    >> prepare     DISPATCH (DBI::db=HASH(0xe8ae0) @2 g0 ae4a28 r1)
    -> prepare for DBD::mSQL::db (DBI::db=HASH(0xe8ae0)~0xf4e48 'INSERT INTO pants3 VALUES ( 1, 'Rubbish' )')
    New DBI::st (for DBD::mSQL::st, parent=DBI::db=HASH(0xf4e48), id=)
    dbih_setup_handle(DBI::st=HASH(0xf5088)=>DBI::st=HASH(0xf4fbc), DBD::mSQL::st, NULL)
    New DBI::st => DBI::st=HASH(0xf5088) (inner=DBI::st=HASH(0xf4fbc)) for DBD::mSQL::st
    <- prepare= DBI::st=HASH(0xf5088)
    >> DESTROY     DISPATCH (DBI::st=HASH(0xf4f74) @1 g0 a0 r1)
       (outer handle DESTROY ignored)
    >> DESTROY     DISPATCH (DBI::st=HASH(0xf5028) @1 g0 a0 r1)
    -> DESTROY for DBD::mSQL::st (DBI::st=HASH(0xf5028))
    <- DESTROY= 1
    dbih_clearcom 0xf3440 done
    >> execute     DISPATCH (DBI::st=HASH(0xf5088) @1 g0 ae8108 r1)
    -> execute for DBD::mSQL::st (DBI::st=HASH(0xf5088)~0xf4fbc)
In: DBD::mSQL::dbd_describe()
    <- execute= 1
    >> finish      DISPATCH (DBI::st=HASH(0xf5088) @1 g0 ae6cf0 r1)
    -> finish for DBD::mSQL::st (DBI::st=HASH(0xf5088)~0xf4fbc)
    <- finish= 1
    >> prepare     DISPATCH (DBI::db=HASH(0xe8ae0) @2 g0 ae4a28 r1)
    -> prepare for DBD::mSQL::db (DBI::db=HASH(0xe8ae0)~0xf4e48 'SELECT * from pants3')
    New DBI::st (for DBD::mSQL::st, parent=DBI::db=HASH(0xf4e48), id=)
    dbih_setup_handle(DBI::st=HASH(0xf4f80)=>DBI::st=HASH(0xf50c4), DBD::mSQL::st, NULL)
    New DBI::st => DBI::st=HASH(0xf4f80) (inner=DBI::st=HASH(0xf50c4)) for DBD::mSQL::st
    <- prepare= DBI::st=HASH(0xf4f80)
    >> DESTROY     DISPATCH (DBI::st=HASH(0xf5088) @1 g0 a0 r1)
       (outer handle DESTROY ignored)
    >> DESTROY     DISPATCH (DBI::st=HASH(0xf4fbc) @1 g0 a0 r1)
    -> DESTROY for DBD::mSQL::st (DBI::st=HASH(0xf4fbc))
    <- DESTROY= 1
    dbih_clearcom 0xf25a8 done
    >> execute     DISPATCH (DBI::st=HASH(0xf4f80) @1 g0 ae8108 r1)
    -> execute for DBD::mSQL::st (DBI::st=HASH(0xf4f80)~0xf50c4)
In: DBD::mSQL::dbd_describe()
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'LinkRow: 0
Name: 1	1
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
In: DBD::mSQL::dbd_describe'LinkRow: 1
Name: Rubbish	7
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
    <- execute= 1
    >> fetchrow    DISPATCH (DBI::st=HASH(0xf4f80) @1 g1 a0 r1)
    -> fetchrow for DBD::mSQL::st (DBI::st=HASH(0xf4f80)~0xf50c4)
In: DBD::mSQL::dbd_describe()
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'Fetching Field
In: DBD::mSQL::dbd_describe'LinkRow: 0
Name: 1	1
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
In: DBD::mSQL::dbd_describe'LinkRow: 1
Name: Rubbish	7
In: DBD::mSQL::dbd_describe'newSV
In: DBD::mSQL::dbd_describe'SvUPGRADE
In: DBD::mSQL::dbd_describe'SvREADONLY_ON
In: DBD::mSQL::dbd_describe'SvPOK_only
In: DBD::mSQL::dbd_describe'SvPVX
Number of fields: 2
Current ROWID: 0
    <- fetchrow= ( '1' 'Rubbish' ) [2 items]
    >> fetchrow    DISPATCH (DBI::st=HASH(0xf4f80) @1 g1 a0 r1)
    -> fetchrow for DBD::mSQL::st (DBI::st=HASH(0xf4f80)~0xf50c4)
In: DBD::mSQL::dbd_describe()
Number of fields: 0
Current ROWID: 1
    <- fetchrow= ( ) [0 items]
    >> finish      DISPATCH (DBI::st=HASH(0xf4f80) @1 g0 ae6cf0 r1)
    -> finish for DBD::mSQL::st (DBI::st=HASH(0xf4f80)~0xf50c4)
    <- finish= 1
    >> disconnect  DISPATCH (DBI::db=HASH(0xe8ae0) @1 g0 ae4480 r1)
    -> disconnect for DBD::mSQL::db (DBI::db=HASH(0xe8ae0)~0xf4e48)
disconnect(DBI::db=HASH(0xf4e48)) invalidates 1 associated cursor(s) at ./test2.pl line 131.
    <- disconnect= 1
DBI::END
DBI::disconnect_all DBI
DBI::disconnect_all for 'mSQL'
    >> disconnect_all DISPATCH (DBI::dr=HASH(0xb9758) @1 g0 ad02f8 r2)
    -> disconnect_all for DBD::mSQL::dr (DBI::dr=HASH(0xb9758)~0xe8a14)
    <- disconnect_all= 1
DBI::END complete
    >> DESTROY     DISPATCH (DBI::st=HASH(0xf50c4) @1 g0 a0 r0)
    -> DESTROY for DBD::mSQL::st (DBI::st=HASH(0xf50c4))
    <- DESTROY= 1
    dbih_clearcom 0xf3580 done
    >> DESTROY     DISPATCH (DBI::dr=HASH(0xe89d8) @1 g0 a0 r0)
    dbih_clearcom 0x93b00 done
    >> DESTROY     DISPATCH (DBI::db=HASH(0xf4e48) @1 g0 a0 r0)
    -> DESTROY for DBD::mSQL::db (DBI::db=HASH(0xf4e48))
    <- DESTROY= 1
    >> DESTROY     DISPATCH (DBI::dr=HASH(0xe8a14) @1 g0 a0 r0)
    dbih_clearcom 0x8a970 done
    dbih_clearcom 0xf5480 done
    >> DESTROY     DISPATCH (DBI::db=HASH(0xe8ae0) @1 g0 a0 r0)
       (inner handle already deleted)
    >> DESTROY     DISPATCH (DBI::dr=HASH(0xe89b4) @1 g0 a0 r0)
       (inner handle already deleted)
    >> DESTROY     DISPATCH (DBI::st=HASH(0xf4f80) @1 g0 a0 r0)
       (inner handle already deleted)
    >> DESTROY     DISPATCH (DBI::dr=HASH(0xb9758) @1 g0 a0 r0)
       (inner handle already deleted)
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
** Connecting to first instance....

-------------------------------------------------------
MINERVA_DEBUG found. libmsql started with the following:-


-------------------------------------------------------

** Disconnecting from first instance....
imp_dbh->sock: 3
** Connecting to second instance.....
**** Trying cursor returning rows as list.....
2 rows matched
DBD::mSQL::dbd_db_prepare'imp_sth->fbh_num: 2
Entering imp_sth->fbh test cycle
In: DBD::mSQL::dbd_describe'FBHDump[0]: 1	1
In: DBD::mSQL::dbd_describe'FBHDump[1]: Test Guy1	9
Out: DBD::mSQL::dbd_describe()
In: DBD::mSQL::fetchrow
In: DBD::mSQL::fetchrow'imp_sth->currow: 0
In: DBD::mSQL::fetchrow'imp_sth->row_num: 2
Entering imp_sth->fbh test cycle
In: DBD::mSQL::dbd_describe'FBHDump[0]: 1	1
In: DBD::mSQL::dbd_describe'FBHDump[1]: Test Guy1	9
Out: DBD::mSQL::dbd_describe()
In: DBD::mSQL::execute'FieldBufferDump: 0
In: DBD::mSQL::execute'FieldBufferDump->cbuf: 1
In: DBD::mSQL::execute'FieldBufferDump->rlen: 1
In: DBD::mSQL::execute'FieldBufferDump: 1
In: DBD::mSQL::execute'FieldBufferDump->cbuf: Test Guy1
In: DBD::mSQL::execute'FieldBufferDump->rlen: 9
     ReturnRow: 1 Test Guy1
In: DBD::mSQL::fetchrow
In: DBD::mSQL::fetchrow'imp_sth->currow: 1
In: DBD::mSQL::fetchrow'imp_sth->row_num: 2
Entering imp_sth->fbh test cycle
In: DBD::mSQL::dbd_describe'FBHDump[0]: 2	1
In: DBD::mSQL::dbd_describe'FBHDump[1]: Test Guy2	9
Out: DBD::mSQL::dbd_describe()
In: DBD::mSQL::execute'FieldBufferDump: 0
In: DBD::mSQL::execute'FieldBufferDump->cbuf: 2
In: DBD::mSQL::execute'FieldBufferDump->rlen: 1
In: DBD::mSQL::execute'FieldBufferDump: 1
In: DBD::mSQL::execute'FieldBufferDump->cbuf: Test Guy2
In: DBD::mSQL::execute'FieldBufferDump->rlen: 9
     ReturnRow: 2 Test Guy2
In: DBD::mSQL::fetchrow
In: DBD::mSQL::fetchrow'imp_sth->currow: 2
In: DBD::mSQL::fetchrow'imp_sth->row_num: 2
**** Re-doing the cursor but fetching fields separately.....
2 rows matched
DBD::mSQL::dbd_db_prepare'imp_sth->fbh_num: 2
Entering imp_sth->fbh test cycle
In: DBD::mSQL::dbd_describe'FBHDump[0]: 1	1
In: DBD::mSQL::dbd_describe'FBHDump[1]: Test Guy1	9
Out: DBD::mSQL::dbd_describe()
In: DBD::mSQL::fetchrow
In: DBD::mSQL::fetchrow'imp_sth->currow: 0
In: DBD::mSQL::fetchrow'imp_sth->row_num: 2
Entering imp_sth->fbh test cycle
In: DBD::mSQL::dbd_describe'FBHDump[0]: 1	1
In: DBD::mSQL::dbd_describe'FBHDump[1]: Test Guy1	9
Out: DBD::mSQL::dbd_describe()
In: DBD::mSQL::execute'FieldBufferDump: 0
In: DBD::mSQL::execute'FieldBufferDump->cbuf: 1
In: DBD::mSQL::execute'FieldBufferDump->rlen: 1
In: DBD::mSQL::execute'FieldBufferDump: 1
In: DBD::mSQL::execute'FieldBufferDump->cbuf: Test Guy1
In: DBD::mSQL::execute'FieldBufferDump->rlen: 9
     Id: 1	Name: Test Guy1
In: DBD::mSQL::fetchrow
In: DBD::mSQL::fetchrow'imp_sth->currow: 1
In: DBD::mSQL::fetchrow'imp_sth->row_num: 2
Entering imp_sth->fbh test cycle
In: DBD::mSQL::dbd_describe'FBHDump[0]: 2	1
In: DBD::mSQL::dbd_describe'FBHDump[1]: Test Guy2	9
Out: DBD::mSQL::dbd_describe()
In: DBD::mSQL::execute'FieldBufferDump: 0
In: DBD::mSQL::execute'FieldBufferDump->cbuf: 2
In: DBD::mSQL::execute'FieldBufferDump->rlen: 1
In: DBD::mSQL::execute'FieldBufferDump: 1
In: DBD::mSQL::execute'FieldBufferDump->cbuf: Test Guy2
In: DBD::mSQL::execute'FieldBufferDump->rlen: 9
     Id: 2	Name: Test Guy2
In: DBD::mSQL::fetchrow
In: DBD::mSQL::fetchrow'imp_sth->currow: 2
In: DBD::mSQL::fetchrow'imp_sth->row_num: 2
**** Trying an INSERT now.......
INSERT present in statement
**** Re-doing the cursor but fetching fields separately.....
3 rows matched
DBD::mSQL::dbd_db_prepare'imp_sth->fbh_num: 2
Entering imp_sth->fbh test cycle
In: DBD::mSQL::dbd_describe'FBHDump[0]: 1	1
In: DBD::mSQL::dbd_describe'FBHDump[1]: Test Guy1	9
Out: DBD::mSQL::dbd_describe()
In: DBD::mSQL::fetchrow
In: DBD::mSQL::fetchrow'imp_sth->currow: 0
In: DBD::mSQL::fetchrow'imp_sth->row_num: 3
Entering imp_sth->fbh test cycle
In: DBD::mSQL::dbd_describe'FBHDump[0]: 1	1
In: DBD::mSQL::dbd_describe'FBHDump[1]: Test Guy1	9
Out: DBD::mSQL::dbd_describe()
In: DBD::mSQL::execute'FieldBufferDump: 0
In: DBD::mSQL::execute'FieldBufferDump->cbuf: 1
In: DBD::mSQL::execute'FieldBufferDump->rlen: 1
In: DBD::mSQL::execute'FieldBufferDump: 1
In: DBD::mSQL::execute'FieldBufferDump->cbuf: Test Guy1
In: DBD::mSQL::execute'FieldBufferDump->rlen: 9
     Id: 1	Name: Test Guy1
In: DBD::mSQL::fetchrow
In: DBD::mSQL::fetchrow'imp_sth->currow: 1
In: DBD::mSQL::fetchrow'imp_sth->row_num: 3
Entering imp_sth->fbh test cycle
In: DBD::mSQL::dbd_describe'FBHDump[0]: 2	1
In: DBD::mSQL::dbd_describe'FBHDump[1]: Test Guy2	9
Out: DBD::mSQL::dbd_describe()
In: DBD::mSQL::execute'FieldBufferDump: 0
In: DBD::mSQL::execute'FieldBufferDump->cbuf: 2
In: DBD::mSQL::execute'FieldBufferDump->rlen: 1
In: DBD::mSQL::execute'FieldBufferDump: 1
In: DBD::mSQL::execute'FieldBufferDump->cbuf: Test Guy2
In: DBD::mSQL::execute'FieldBufferDump->rlen: 9
     Id: 2	Name: Test Guy2
In: DBD::mSQL::fetchrow
In: DBD::mSQL::fetchrow'imp_sth->currow: 2
In: DBD::mSQL::fetchrow'imp_sth->row_num: 3
Entering imp_sth->fbh test cycle
In: DBD::mSQL::dbd_describe'FBHDump[0]: 3	1
In: DBD::mSQL::dbd_describe'FBHDump[1]: Rubbish Guy1	12
Out: DBD::mSQL::dbd_describe()
In: DBD::mSQL::execute'FieldBufferDump: 0
In: DBD::mSQL::execute'FieldBufferDump->cbuf: 3
In: DBD::mSQL::execute'FieldBufferDump->rlen: 1
In: DBD::mSQL::execute'FieldBufferDump: 1
In: DBD::mSQL::execute'FieldBufferDump->cbuf: Rubbish Guy1
In: DBD::mSQL::execute'FieldBufferDump->rlen: 12
     Id: 3	Name: Rubbish Guy1
In: DBD::mSQL::fetchrow
In: DBD::mSQL::fetchrow'imp_sth->currow: 3
In: DBD::mSQL::fetchrow'imp_sth->row_num: 3
**** Trying a CREATE statement......
CREATE present in statement
**** Inserting some rows.....
INSERT present in statement
**** Re-doing the cursor but fetching fields separately.....
1 rows matched
DBD::mSQL::dbd_db_prepare'imp_sth->fbh_num: 2
Entering imp_sth->fbh test cycle
In: DBD::mSQL::dbd_describe'FBHDump[0]: 1	1
In: DBD::mSQL::dbd_describe'FBHDump[1]: Rubbish	7
Out: DBD::mSQL::dbd_describe()
In: DBD::mSQL::fetchrow
In: DBD::mSQL::fetchrow'imp_sth->currow: 0
In: DBD::mSQL::fetchrow'imp_sth->row_num: 1
Entering imp_sth->fbh test cycle
In: DBD::mSQL::dbd_describe'FBHDump[0]: 1	1
In: DBD::mSQL::dbd_describe'FBHDump[1]: Rubbish	7
Out: DBD::mSQL::dbd_describe()
In: DBD::mSQL::execute'FieldBufferDump: 0
In: DBD::mSQL::execute'FieldBufferDump->cbuf: 1
In: DBD::mSQL::execute'FieldBufferDump->rlen: 1
In: DBD::mSQL::execute'FieldBufferDump: 1
In: DBD::mSQL::execute'FieldBufferDump->cbuf: Rubbish
In: DBD::mSQL::execute'FieldBufferDump->rlen: 7
     Id: 1	Name: Rubbish
In: DBD::mSQL::fetchrow
In: DBD::mSQL::fetchrow'imp_sth->currow: 1
In: DBD::mSQL::fetchrow'imp_sth->row_num: 1
** Disconnecting from second instance....
imp_dbh->sock: 3
--------------------------------------------------------------------------
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <27188-17@lion>;
          Thu, 7 Sep 1995 07:24:53 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 01:32:22 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa26891;
          7 Sep 95 2:31 +0100
Received: by gw.home.vix.com id AA20988; Wed, 6 Sep 95 13:08:15 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA20982; Wed, 6 Sep 95 13:08:14 -0700
Message-Id: <9509062008.AA20982@gw.home.vix.com>
Received: from nicoh (burundi.nicoh.com) by africa.nicoh.com 
          with SMTP (1.37.109.15/16.2) id AA245958483;
          Wed, 6 Sep 1995 14:14:43 -0600
Date: Wed, 6 Sep 1995 14:14:43 -0600
X-Sender: mcclmatt@nicoh.com
X-Mailer: Windows Eudora Version 2.0.3
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
To: perldb-interest@vix.com
From: Matt McClung <mcclmatt@nicoh.com>
Subject: unsubscribe


--------
Matt McClung            electronic mail : mcclmatt@nicoh.com
NICOH Net                    voice mail : (208) 233-5802
Internet Access in Idaho!    snail mail : 200 S. Main, Suite O, Pocatello


---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <27188-22@lion>;
          Thu, 7 Sep 1995 07:34:57 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 02:14:21 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa15714;
          7 Sep 95 3:13 +0100
Received: by gw.home.vix.com id AA17189; Wed, 6 Sep 95 12:24:59 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA17183; Wed, 6 Sep 95 12:24:57 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa01581;
          6 Sep 95 19:55 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa24100;
          6 Sep 95 19:52 +0100
Received: from ig.co.uk by lion id <24162-0@lion>;
          Wed, 6 Sep 1995 19:55:20 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: hash refs as parameters to bind_param
Date: Wed, 6 Sep 1995 19:55:20 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509061952.aa24100@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> What is the correct way to create the %attribs hash ref for bind_param?
> 
> $sth->bind_param($param_index_or_name,\$value[,\%attribs])
> 
> Whatever combination of things I try I get the following from 
> dbd_bind_ph:
> 
> DBI::st=HASH(0x200d5fc8)->bind_param(:p1): invalid attribute parameter at genreq.pl line 15.
> 
	$sth->bind_param(1, $foo, { attribute_name => $value });

If used in often (eg in a loop) do:

	$attribs1 = { attribute_name => $value };

	while( ... ) {

		$sth->bind_param(1, $foo, $attribs1);

	}

> Thanks.
> Mike Moran

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <27188-36@lion>;
          Thu, 7 Sep 1995 07:37:00 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 02:54:22 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id aa02999;
          7 Sep 95 3:53 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <29699-0@frigate.doc.ic.ac.uk>; Wed, 6 Sep 1995 22:23:40 +0100
Received: by gw.home.vix.com id AA12814; Wed, 6 Sep 95 05:01:14 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA12794; Wed, 6 Sep 95 05:00:29 -0700
Received: by ki1.chemie.fu-berlin.de (Smail3.1.28.1) 
          from mail.hanse.de (134.100.239.2) with smtp id <m0sqFwo-0000fFC>;
          Wed, 6 Sep 95 10:35 MEST
Received: from <mwhh.hanse.de> by mail.hanse.de with bsmtp 
          for <Tim.Bunce@ig.co.uk> id <m0sqFNT-0004f9C@mail.hanse.de>;
          Wed, 6 Sep 95 09:58 MET DST
Received: by mwhh.Hanse.DE (Smail3.1.28.1 #20) id m0sqFew-000HyhC;
          Wed, 6 Sep 95 09:16 GMT+0100
Received: (from georg@localhost) by deerwood.hanse.de (8.6.11/8.6.11) 
          id HAA01233; Wed, 6 Sep 1995 07:24:22 +0200
Date: Wed, 6 Sep 1995 07:24:22 +0200 (MET DST)
From: Georg Rehfeld <georg@deerwood.hanse.de>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: fon@iinet.com.au, perldb-interest@vix.com
Subject: Re: URGENT! I need a database
In-Reply-To: <9509041718.ah11340@post.demon.co.uk>
Message-Id: <Pine.LNX.3.91.950906064620.32042B-100000@deerwood.hanse.de>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

Hi Tim, Adrian, Surmani, Alligator and all others,

oops, I did'nt forget to note you (the perldb-interest-list), did I?

> > From: Surmani <ozi@yarrow.wt.com.au>
> > [...]
> >
> > I've been using mSqlPerl on Linux, but now find it too limited for
> > my application (a web search engine).
> > 
> > Please give me some advice on which database I should use. Commercial is
> > OK, but I would prefer to run it on Linux with a perl interface (DBI ?).
> > If it does SQL then even better.
> > 
> > Please send me an URGENT response on this,
> > to the email address below:
> > 
> > Adrian Smith
> > fon@iinet.com.au
> > 
> I've heard that Oracle 7 runs on Linux (but it's unsupported).
> 
> Since I'm not familiar with Linux I'll copy to the list for others to
> make suggestions (and no doubt quiz you about why mSQL is too limited
> for your application :-)
> 
> Tim.
> 

Yes, the SCO version of Oracle 7 runs nicely, fine, fast and stable on Linux!
If you can do without Pro*C on the Linux platform (and I know, most of us
can't)! It runs, using the iBCS emulator stuff, as Alligator already
mentioned, and that is a runtime translation extension to Linux, recognising
the foreign origin of the executables at load time and then translating each
foreign kernel call to the corresponding Linux kernel call. And the iBCS 
guys have done a good job (as have the Oracle programmers).

All utilities work, sql*plus, sql*dba, exp, imp etc. Networking via 
sql*net is possible including distributed databasing, I accessed the 
database from other UNIX systems (ISC, AIX), and from ms-dos/windows via 
native sql*net and via ODBC. Performance is good (about 80 inserts/second 
with an oraperl test program on a DX2/66 MHz cpu with only 16MB main mem).

Remaining problems are:

- the totally lacking support from Oracle
- the unability to use pro*c because of the SCO format Oracle libs that 
  can't be used to link Linux objects.
- the price of approx. $1500 for a 5 user license for the SCO Workgroup 
  Server software (after the free 90 days evaluation period; have a look 
  at http//www.oracle.com for download or order of a cdrom).

If any of you cares: I'll mail an installation 'cookbook' for the SCO 
Oracle full product cdrom on request; it seems to work with the 
Workgroup server cdrom too. Please don't forget to reply only to me, not 
to the list, if you use this mail to get the installation notes.

Best regards
Georg
 ___   ___
| + | |__ ' Georg Rehfeld,  D-20535 Hamburg, Jordanstr. 8,  [49] (40) 2518356
|_|_\ |___, georg@deerwood.hanse.de

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <27188-37@lion>;
          Thu, 7 Sep 1995 07:37:09 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 02:54:23 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id ab02999;
          7 Sep 95 3:53 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <29726-0@frigate.doc.ic.ac.uk>; Wed, 6 Sep 1995 22:25:11 +0100
Received: by gw.home.vix.com id AA22461; Wed, 6 Sep 95 07:20:59 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA22452; Wed, 6 Sep 95 07:20:55 -0700
Message-Id: <9509061420.AA22452@gw.home.vix.com>
Received: by hpunix.gsfc.state.ga.us (1.38.193.5/16.2) id AA21633;
          Wed, 6 Sep 1995 10:23:23 -0400
From: "Marc A. Mnich" <marcm@hpunix.gsfc.state.ga.us>
Subject: subscribe
To: perldb-interest@vix.com
Date: Wed, 6 Sep 95 10:23:23 EDT
Mailer: Elm [revision: 70.85.2.1]

subscribe
--
 /\ /\  _  _  _   Marc A. Mnich   (404) 248-1266
/  / / (/ /  (    Georgia Student Finance Commission
                  marcm@hpunix.gsfc.state.ga.us




---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <27188-53@lion>;
          Thu, 7 Sep 1995 07:39:12 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 03:14:49 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id aa11356;
          7 Sep 95 4:14 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <05311-0@frigate.doc.ic.ac.uk>; Thu, 7 Sep 1995 03:56:32 +0100
Received: by gw.home.vix.com id AA17249; Wed, 6 Sep 95 12:25:49 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA17244; Wed, 6 Sep 95 12:25:48 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa01299;
          6 Sep 95 19:51 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa23158;
          6 Sep 95 19:48 +0100
Received: from ig.co.uk by lion id <23989-0@lion>;
          Wed, 6 Sep 1995 19:51:06 +0100
To: descarte@mcqueen.com, andreas.koenig@mind.de
Subject: Re: ANNOUNCE: DBD::mSQL-0.60pl1 released
Cc: perldb-interest@vix.com
Date: Wed, 6 Sep 1995 19:51:06 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509061948.aa23158@post.demon.co.uk>


> From: Andreas Koenig <k@anna.mind.de>
> 
>   >	ftp://ftp.mcqueen.com/pub/languages/perl5/DBPerl/
>   >
>   >Let me know how things go.
> 
> That's how I patched it:
> 
> -    SV *valuesv = dbd_db_FETCH(dbh, keysv);
> +    SV *valuesv = (SV*)dbd_db_FETCH(dbh, keysv);

Casting is an evil which the DBI and DBDs go to some lengths to avoid.
The dbd_db_FETCH function (etc) should have been declared to return
the correct type (see *.h in DBD::Oracle).

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <27188-56@lion>;
          Thu, 7 Sep 1995 07:39:40 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 03:33:53 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa19287;
          7 Sep 95 4:33 +0100
Received: by gw.home.vix.com id AA20499; Wed, 6 Sep 95 13:00:49 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA20494; Wed, 6 Sep 95 13:00:48 -0700
Received: by intfw.bear.com (4.1/SMI-4.1) id AA01971; Wed, 6 Sep 95 16:00:03 EDT
Received: from fastbear(165.168.74.3) by intfw via smap (V1.3) id sma001903;
          Wed Sep 6 15:57:05 1995
Received: from ursa2.bear.com 
          by fastbear.bear.com (4.1/SMI-4.1/1.0 AMR 12/15/94) id AA08753;
          Wed, 6 Sep 95 15:58:58 EDT
Received: from bear.com (ursa) by ursa2.bear.com (4.1/SMI-4.1/JMD+AMR+DJS) 
          id AA07991; Wed, 6 Sep 95 15:56:52 EDT
Received: from jaguar.bears by bear.com (4.1/SMI-4.0/JMD+AR+DJS) id AA03502;
          Wed, 6 Sep 95 15:56:51 EDT
Received: by jaguar.bears (4.1/SMI-4.1) id AA13588; Wed, 6 Sep 95 15:55:49 EDT
Date: Wed, 6 Sep 95 15:55:49 EDT
From: Buzz Moschetti <buzz@bear.com>
Message-Id: <9509061955.AA13588@jaguar.bears>
To: perldb-interest@vix.com
Subject: Interperl users speak out!
Reply-To: Buzz Moschetti <buzz@bear.com>

Is anyone using Interperl?  Is there any real benefit to creating
DBI:Interbase?  Users at my organization need not reply.

--
*******************************************************************************
Bear Stearns is not responsible for any recommendation, solicitation, offer or
agreement or any information about any transaction, customer account or account
activity contained in this communication.
*******************************************************************************
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <27188-86@lion>;
          Thu, 7 Sep 1995 07:43:34 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 05:43:27 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa18947;
          7 Sep 95 6:42 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa00861;
          6 Sep 95 20:35 GMT-60:00
Received: by gw.home.vix.com id AA02089; Wed, 6 Sep 95 02:19:42 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA02084; Wed, 6 Sep 95 02:19:35 -0700
Received: from timetable.brunel.ac.uk by sirius.brunel.ac.uk with SMTP (PP) 
          id <07045-0@sirius.brunel.ac.uk>; Wed, 6 Sep 1995 10:19:19 +0100
From: Timetabling@brunel.ac.uk
Message-Id: <3645.9509060919@timetable.brunel.ac.uk>
Subject: Oracle7.1.6 + Perl5.001m + Solaris2.4
To: perldb-interest@vix.com
Date: Wed, 6 Sep 1995 10:19:09 +0100 (BST)
Cc: Tim.Bunce@ig.co.uk
X-Mailer: ELM [version 2.4 PL24]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

Having problems with compiling the Oracle.c file... get the following errors:



----



gcc -c -O -fpic -I/timetable/timetable1/usr/lib/perl5/sun4-solaris/CORE -Wall -pedantic -Wno-comment -Wpointer-arith -Wcast-align -Wconversion -Wtraditional -Wpointer-arith -Wbad-function-cast -Wcast-qual -I/timetable/timetable2/oracle7.1.6/rdbms/demo -I/timetable/timetable1/usr/lib/perl5/sun4-solaris/DBI Oracle.c
Oracle.c: In function `XS_DBD__Oracle__db_disconnect':
Oracle.c:206: warning: int format, I32 arg (arg 3)
Oracle.c: In function `XS_DBD__Oracle__db_DESTROY':
Oracle.c:244: warning: implicit declaration of function `DBIc_ENDING'
Oracle.c: In function `XS_DBD__Oracle__st__prepare':
Oracle.c:271: too few arguments to function `dbd_st_prepare'
Oracle.c: In function `XS_DBD__Oracle__st_execute':
Oracle.c:323: warning: passing arg 2 of `dbd_bind_ph' from incompatible pointer type
Oracle.c:323: warning: passing arg 3 of `dbd_bind_ph' from incompatible pointer type
Oracle.c: In function `XS_DBD__Oracle__st_fetchrow':
Oracle.c:392: structure has no member named `fbh_num'
Oracle.c:426: structure has no member named `fbh_num'
Oracle.c:426: structure has no member named `fbh_num'
Oracle.c:428: structure has no member named `fbh_num'
Oracle.c:435: warning: implicit declaration of function `dbtype_is_long'
Oracle.c: In function `XS_DBD__Oracle__st_readblob':
Oracle.c:503: too few arguments to function `dbd_st_readblob'
Oracle.c:503: warning: assignment makes pointer from integer without a cast
*** Error code 1
make: Fatal error: Command failed for target `Oracle.o'



---


Any ideas?

Oracle 7.1.6, Perl 5.001m and Solaris 2.4 using gcc-2.6.3.

[   Brunel University Timetable Unit   ]
[       timetabling@brunel.ac.uk       ]
[Telephone: 01895 274000 extension 2104]
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <27188-88@lion>;
          Thu, 7 Sep 1995 07:43:47 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 05:45:47 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa20070;
          7 Sep 95 6:45 +0100
Received: by gw.home.vix.com id AA10777; Wed, 6 Sep 95 17:20:38 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA10735; Wed, 6 Sep 95 17:20:31 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa10929;
          6 Sep 95 22:03 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa19229;
          6 Sep 95 22:01 +0100
Received: from ig.co.uk by lion id <24560-0@lion>;
          Wed, 6 Sep 1995 21:23:03 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: Building the %attribs for bind_param ?
Date: Wed, 6 Sep 1995 21:23:03 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509062201.aa19229@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> > 
> > > From: mhm@austin.ibm.com
> > > To: Tim.Bounce@ig.co.uk
> > > 
> > > The question boils down to what is the best way to build the %attribs
> > > hash-ref for bind_param and bind-col.  Given the number of possible 
> > > things that a DB2 user might want to bind to a parameter or in binding 
> > > the incoming data to a host variable, I think I need to supply a 
> > > function which builds and returns the %attribs hash-ref.
> > > 
> > > Would it be better to define it as an XSUB routine or in the pm file
> > > under DBD::DB2::st?   I currently leaning towards doing it in perl in
> > > the pm file.
> > > 
> > > Any comments, anything else I need to consider?
> > > 
> > I don't see any need for this. Could you give me some examples of the
> > 'number of possible things that a DB2 user might want to bind to ...'
> > 
> 
> Well, let us see:
> 
Umm,

> 1. Specify the incoming host variable type (16 options).
> 2. Specify the SQL variable type (25 options)

Over 90% of these should be automatic and transparent. Generally the driver
asks the database interface what the type of the variable is and then
acts accordingly. Basically perl scalars are strings (PV), numbers (NV)
or ints (IV). NVs and IV are easy, everything else gets bound as a string
and you let the database interface do any required conversions (eg to dates).

> 3. Specify precision for numeric,

Just use the precision of the variable itself (the database interface
should tell you this).

> character, and blob types.

(Precision for character and blob types? Eh?)

> 4. Specify scale for numeric and time stamp types

Same as precision.

> 5. Specify whether the statement gets evaluated as an input,
>    input deferred (stored proceedure), output or output deferred.

Assuming I understand you 'deferred' is not safe since the perl
variable you bind to may mutate between the bind and the execute.
Input vs Output is an unresolved topic right now.

> 6. Specify truncation levels for character and binary types

As for precision, I think (if I understand you correctly).

> 7. Specify either a host variable to bound or special value to
>    a parameter.  (DB2 allows the posting of several special "variables"
>    which cause the database to perform a special function, yet typically
>    the only result is a positive return code)
> 
_This_ sounds like it would need an attribute.

> Of the above list, I can guarantee that I need to support the first
> 4 on every statement executed.  Item 5, I can defer until I want/need
> to support stored procedures.  As for items 6&7, what I am doing 
> currently has no need, but I would guess that folks attempting to 
> use DB2perl on existing databases will probably want them fairly quickly.
> 
You should not need to specify 1..4 or 6 most of the time.

Is this related to DB2 not being able to describe variables for you? If
so you have my sympathies and, yes, you would need to manually specify,
somewhere, any required information which DB2 is unable to tell you itself.

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <29082-11@lion>;
          Thu, 7 Sep 1995 12:07:09 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 08:22:48 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa12600;
          7 Sep 95 9:22 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id ab19334;
          6 Sep 95 23:44 GMT-60:00
Received: by gw.home.vix.com id AA28375; Wed, 6 Sep 95 08:38:41 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA28367; Wed, 6 Sep 95 08:38:38 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa11869;
          6 Sep 95 15:29 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ab26609;
          6 Sep 95 15:27 +0100
Received: from ig.co.uk by lion id <19620-0@lion>;
          Wed, 6 Sep 1995 15:12:57 +0100
To: perldb-interest@vix.com, Timetabling@brunel.ac.uk
Subject: Re: Oracle7.1.6 + Perl5.001m + Solaris2.4
Date: Wed, 6 Sep 1995 15:12:57 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509061527.ab26609@post.demon.co.uk>


> From: Timetabling@brunel.ac.uk
> 
> Having problems with compiling the Oracle.c file... get the following errors:
> 
> Oracle.c: In function `XS_DBD__Oracle__db_DESTROY':
> Oracle.c:244: warning: implicit declaration of function `DBIc_ENDING'
> Oracle.c: In function `XS_DBD__Oracle__st__prepare':
> Oracle.c:271: too few arguments to function `dbd_st_prepare'
> Oracle.c: In function `XS_DBD__Oracle__st_fetchrow':
> Oracle.c:392: structure has no member named `fbh_num'
> 
> Any ideas?
> 
> Oracle 7.1.6, Perl 5.001m and Solaris 2.4 using gcc-2.6.3.
> 
What you haven't listed are the version numbers of the DBI and DBD::Oracle
modules. It looks like your DBI module is out of date. Get the latest of
both from ftp.demon.co.uk:/pub/perl/db/...

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03328-0@lion>;
          Thu, 7 Sep 1995 15:08:26 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 11:34:41 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id aa09382;
          7 Sep 95 12:34 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <11702-0@frigate.doc.ic.ac.uk>; Thu, 7 Sep 1995 12:03:15 +0100
Received: by gw.home.vix.com id AA19243; Wed, 6 Sep 95 19:11:45 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA19237; Wed, 6 Sep 95 19:11:44 -0700
Received: by thor.nh.aspectdv.com (4.1/SMI-4.1) id AA19151;
          Wed, 6 Sep 95 22:12:26 EDT
Date: Wed, 6 Sep 95 22:12:26 EDT
From: Michael L'Italien <mike@nh.aspectdv.com>
Message-Id: <9509070212.AA19151@thor.nh.aspectdv.com>
To: perldb-interest@vix.com
Subject: unsubscribe


---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03328-8@lion>;
          Thu, 7 Sep 1995 15:09:10 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 12:20:28 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa01176;
          7 Sep 95 13:19 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id aa22037;
          7 Sep 95 0:11 GMT-60:00
Received: by gw.home.vix.com id AA12035; Wed, 6 Sep 95 11:23:24 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA12030; Wed, 6 Sep 95 11:23:23 -0700
Received: (thorn@localhost) by amaretto.cc.mcgill.ca (8.6.10/8.6.5) id OAA09936;
          Wed, 6 Sep 1995 14:23:12 -0400
Date: Wed, 6 Sep 1995 14:23:11 -0400 (EDT)
From: Ron Hall <thorn@cc.mcgill.ca>
To: Andrew G Wood <agw@mail.nerc-bas.ac.uk>
Cc: perldb-interest@vix.com
Subject: Re: How does one do this....?
In-Reply-To: <6054.199509060805@bssmlsa.nerc-bas.ac.uk.nerc-bas.ac.uk>
Message-Id: <Pine.SOL.3.91.950906142229.6813b-100000@amaretto.cc.mcgill.ca>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Wed, 6 Sep 1995, Andrew G Wood wrote:

> >>>>> "Ron" == Ron Hall <thorn@cc.mcgill.ca> writes:
> 
>     > Using oraperl2.4 Oracle 7.blah blah blah how does one execute a
>     > stired procedure? Just Curious?
> 
> I think you will need to get hold of the two new extensions that I have
> been developing over the past months .... SpoOn and WooDen .... soo your
> Perl will look somethings like:
> 
> use WooDen;
> use SpoOn;

	Oh you wags.....I meant stored and besides stirred has 2 rs :)
> 

       Ron Hall       | DISCLAIMER: I said it. I must've meant it. There is
       Analyst        |             nobody else to blame.
 <thorn@cc.mcgill.ca> | Clown:n: A man who acts too natural.
   +1 514 398 3718    | "Whenever doubt can be called into question, do so."

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <09812-11@lion>;
          Fri, 8 Sep 1995 07:25:04 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 21:26:16 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa26528;
          7 Sep 95 22:25 +0100
Received: by gw.home.vix.com id AA17590; Thu, 7 Sep 95 09:28:48 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA17580; Thu, 7 Sep 95 09:28:42 -0700
Received: from lazarus.nrtc.northrop.com by nrtc.nrtc.northrop.com id aa28583;
          7 Sep 95 7:57 PDT
Received: from world.nad.northrop.com 
          by lazarus.nrtc.northrop.com (15.4a/15.6.b) id AA26586;
          Thu, 7 Sep 95 09:23:13 pdt
Received: by world.nad.northrop.com (4.1/SMI-4.1.1) id AA26967;
          Thu, 7 Sep 95 09:20:01 PDT
Date: Thu, 7 Sep 1995 09:20:00 -0700 (PDT)
From: "Charles G. Margolin" <cmargoli@world.nad.northrop.com>
To: mhm@austin.ibm.com
Cc: Tim Bunce <Tim.Bunce@ig.co.uk>, perldb-interest@vix.com
Subject: Re: Building the %attribs for bind_param ?
In-Reply-To: <9509071234.AA06790@dax.austin.ibm.com>
Message-Id: <Pine.SUN.3.91.950907090433.11407A-100000@world.nad.northrop.com>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Thu, 7 Sep 1995 mhm@austin.ibm.com wrote:

> Exactly, none of the information about the what the database thinks 
> the parameters should be is available from the database.  The enduser
> is required to specify all of following things to bind a variable to
> a parameter.
> 
> 1. Column type - INPUT/OUTPUT, deferred/nondeferred
> 2. Incoming C type for the variable.
> 3. Expected SQL type.
> 4. Precision of the variable
> 5. Scale of the variable
> 6. Pointer to variable - containing parameter value
> 7. Max size of parameter variable
> 8. Pointer to variable containing actual size of parameter value
> 

Maybe this is way off base, since I have never worked with the Unix
version of DB2, but in ancient times I used to work with mainframe
DB2 and I did some dynamic SQL coding in various languages.

With mainframe DB2 I could do a PREPARE and a DESCRIBE. Then I would use
the info that DESCRIBE stores into the SQLDA block about data
requirements to complete the SQLDA by supplying the addresses.  I could
even cause some type conversions by changing the data type.

Does DB2/Unix lack this feature, or am I missing something important?


Charles Margolin                  email: cmargoli@world.nad.northrop.com
Northrop Grumman Corporation      phone: (310)332-6011
One Northrop Ave.  Orgn. 624/23
Hawthorne, CA 90250-3277

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <09549-21@lion>;
          Fri, 8 Sep 1995 07:25:15 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 21:26:19 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa26139;
          7 Sep 95 22:24 +0100
Received: by gw.home.vix.com id AA23025; Thu, 7 Sep 95 10:35:46 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA23018; Thu, 7 Sep 95 10:35:44 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.11/8.6.11) with SMTP id MAA38942;
          Thu, 7 Sep 1995 12:35:43 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA18276;
          Thu, 7 Sep 1995 12:35:38 -0500
From: mhm@austin.ibm.com
Message-Id: <9509071735.AA18276@dax.austin.ibm.com>
To: "Charles G. Margolin" <cmargoli@world.nad.northrop.com>
Cc: perldb-interest@vix.com
Subject: Re: Building the %attribs for bind_param ?
In-Reply-To: Your message of Thu, 07 Sep 95 09:50:53 -0700. <Pine.SUN.3.91.950907093806.11407B-100000@world.nad.northrop.com>
Date: Thu, 07 Sep 95 12:35:38 -0500


"Charles G. Margolin" <cmargoli@world.nad.northrop.com>  writes:
>
> Here's a kludge:  Perhaps you could code a routine using the DB2
> precompiler which would receive an arbitrary SQL statement, 
> PREPARE and DESCRIBE it, and return the resulting SQLDA structure.  
> Then use that SQLDA for the info you need in your CLI-based routines.
> 

Thought about it but there are two major problems:

1) The big problem is that it requires each machine to have the
   precompiler installed and available to the enduser.  Not always the
   case in production shop.

2) While CLI can deal with SQLDA, it is not the normal method.  Hence,
   significantly more work for me and thus, more places for things
   to go wrong.

Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <09812-36@lion>;
          Fri, 8 Sep 1995 07:30:35 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 23:57:17 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id ax15493;
          8 Sep 95 0:56 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <22397-0@frigate.doc.ic.ac.uk>; Thu, 7 Sep 1995 20:14:47 +0100
Received: by gw.home.vix.com id AA01360; Thu, 7 Sep 95 05:34:07 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA01355; Thu, 7 Sep 95 05:34:05 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.11/8.6.11) with SMTP id HAA37866;
          Thu, 7 Sep 1995 07:34:05 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA06790;
          Thu, 7 Sep 1995 07:34:03 -0500
From: mhm@austin.ibm.com
Message-Id: <9509071234.AA06790@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: Building the %attribs for bind_param ?
In-Reply-To: Your message of Wed, 06 Sep 95 21:23:03 +0100. <9509062201.aa19229@post.demon.co.uk>
Date: Thu, 07 Sep 95 07:34:03 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> 
 [ all of the foundation discussion about binding parameter in
   DB2 deleted ]

> 
> Is this related to DB2 not being able to describe variables for you? 
> If so you have my sympathies and, yes, you would need to manually
> specify, somewhere, any required information which DB2 is unable 
> to tell you itself.

Exactly, none of the information about the what the database thinks 
the parameters should be is available from the database.  The enduser
is required to specify all of following things to bind a variable to
a parameter.

1. Column type - INPUT/OUTPUT, deferred/nondeferred
2. Incoming C type for the variable.
3. Expected SQL type.
4. Precision of the variable
5. Scale of the variable
6. Pointer to variable - containing parameter value
7. Max size of parameter variable
8. Pointer to variable containing actual size of parameter value

Thus, I was asking is it better to create a function in the xs file
or the pm file?

Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <10631-15@lion>;
          Fri, 8 Sep 1995 07:30:46 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 23:58:29 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id az15493;
          8 Sep 95 0:57 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <23821-0@frigate.doc.ic.ac.uk>; Thu, 7 Sep 1995 21:00:37 +0100
Received: by gw.home.vix.com id AA04158; Wed, 6 Sep 95 23:03:43 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA04152; Wed, 6 Sep 95 23:03:39 -0700
Received: by fstgds01.tu-graz.ac.at (5.57/Ultrix3.0-C) id AA08877;
          Thu, 7 Sep 95 08:03:31 +0200
Received: from psrini (fiicm1pc33) by iicm.tu-graz.ac.at with SMTP 
          id AA18221 (5.67b/IDA-1.5t for <perldb-interest@vix.com>);
          Thu, 7 Sep 1995 08:03:26 +0200
Date: Thu, 7 Sep 1995 08:03:26 +0200
Message-Id: <199509070603.AA18221@iicm.tu-graz.ac.at>
X-Sender: psrini@iicm.tu-graz.ac.at
X-Mailer: Windows Eudora Version 1.4.3
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
To: perldb-interest@vix.com
From: "P. Srinivasan" <psrini@iicm.tu-graz.ac.at>
Subject: unsubscribe


--------------------------------------------+--------------------------------
P. Srinivasan                               |email: psrini@iicm.tu-graz.ac.at
Institute for Information Processing        |
and Computer Supported New Media (IICM)     |
Technical University Graz                   |Tel: ++43 316 832551-33
Schieszstattgasse 4A, A-8010 Graz, Austria  |Fax: ++43 316 824394
--------------------------------------------+--------------------------------

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <09549-46@lion>;
          Fri, 8 Sep 1995 07:31:11 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 23:58:33 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id bb15493;
          8 Sep 95 0:57 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <29210-0@frigate.doc.ic.ac.uk>; Thu, 7 Sep 1995 23:55:20 +0100
Received: by gw.home.vix.com id AA20494; Thu, 7 Sep 95 10:01:02 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA20485; Thu, 7 Sep 95 10:01:00 -0700
Received: from lazarus.nrtc.northrop.com by nrtc.nrtc.northrop.com id aa29202;
          7 Sep 95 8:34 PDT
Received: from world.nad.northrop.com 
          by lazarus.nrtc.northrop.com (15.4a/15.6.b) id AA26701;
          Thu, 7 Sep 95 09:54:04 pdt
Received: by world.nad.northrop.com (4.1/SMI-4.1.1) id AA00954;
          Thu, 7 Sep 95 09:50:53 PDT
Date: Thu, 7 Sep 1995 09:50:53 -0700 (PDT)
From: "Charles G. Margolin" <cmargoli@world.nad.northrop.com>
To: mhm@austin.ibm.com
Cc: perldb-interest@vix.com
Subject: Re: Building the %attribs for bind_param ?
In-Reply-To: <9509071638.AA19858@dax.austin.ibm.com>
Message-Id: <Pine.SUN.3.91.950907093806.11407B-100000@world.nad.northrop.com>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Thu, 7 Sep 1995 mhm@austin.ibm.com wrote:

> 
> "Charles G. Margolin" <cmargoli@world.nad.northrop.com>  writes:
> > 
> > Maybe this is way off base, since I have never worked with the Unix
> > version of DB2, but in ancient times I used to work with mainframe
> > DB2 and I did some dynamic SQL coding in various languages.
> > 
> > With mainframe DB2 I could do a PREPARE and a DESCRIBE. Then I would use
> > the info that DESCRIBE stores into the SQLDA block about data
> > requirements to complete the SQLDA by supplying the addresses.  I could
> > even cause some type conversions by changing the data type.
> > 
> > Does DB2/Unix lack this feature, or am I missing something important?
> > 
> 
> Not too far off base.  Basically, what you are talking about is
> embeded SQL within DB2 and here the term dynamic basically means that
> you know all the sql that needs to be performed, but not all of the
> values to be used in the SQL.  Not possible in an interpreted 
> environment.
> 
> What I am dealing with is the Call Level Interface (CLI) which is
> atleast one level of abstraction (maybe two,  :-) ) lower than
> embeded SQL.  Samething holds for DBD/Oracle and I don't know about
> Informix, Sybase, and Ingres.
> 
> 
> Unfortunately for me, the current version of DB2 CLI does not 
> support any form of describe for a parameterized SQL statement, which
> makes it quite difficult to make DBD/DB2 look and work just like
> DBD/Oracle as I must require the user to provide more information
> prior to binding a statement.
> 
Here's a kludge:  Perhaps you could code a routine using the DB2 precompiler
which would receive an arbitrary SQL statement, PREPARE and DESCRIBE
it, and return the resulting SQLDA structure.  Then use that SQLDA
for the info you need in your CLI-based routines.

Just a thought.

Charles Margolin                  email: cmargoli@world.nad.northrop.com
Northrop Grumman Corporation      phone: (310)332-6011
One Northrop Ave.  Orgn. 624/23
Hawthorne, CA 90250-3277

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <09812-39@lion>;
          Fri, 8 Sep 1995 07:31:15 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 07 Sep 95 23:58:34 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id bd15493;
          8 Sep 95 0:57 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <00197-0@frigate.doc.ic.ac.uk>; Fri, 8 Sep 1995 00:28:48 +0100
Received: by gw.home.vix.com id AA18475; Thu, 7 Sep 95 09:38:12 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA18470; Thu, 7 Sep 95 09:38:11 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.11/8.6.11) with SMTP id LAA55967;
          Thu, 7 Sep 1995 11:38:10 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA19858;
          Thu, 7 Sep 1995 11:38:04 -0500
From: mhm@austin.ibm.com
Message-Id: <9509071638.AA19858@dax.austin.ibm.com>
To: "Charles G. Margolin" <cmargoli@world.nad.northrop.com>
Cc: perldb-interest@vix.com
Subject: Re: Building the %attribs for bind_param ?
In-Reply-To: Your message of Thu, 07 Sep 95 09:20:00 -0700. <Pine.SUN.3.91.950907090433.11407A-100000@world.nad.northrop.com>
Date: Thu, 07 Sep 95 11:38:04 -0500


"Charles G. Margolin" <cmargoli@world.nad.northrop.com>  writes:
> 
> Maybe this is way off base, since I have never worked with the Unix
> version of DB2, but in ancient times I used to work with mainframe
> DB2 and I did some dynamic SQL coding in various languages.
> 
> With mainframe DB2 I could do a PREPARE and a DESCRIBE. Then I would use
> the info that DESCRIBE stores into the SQLDA block about data
> requirements to complete the SQLDA by supplying the addresses.  I could
> even cause some type conversions by changing the data type.
> 
> Does DB2/Unix lack this feature, or am I missing something important?
> 

Not too far off base.  Basically, what you are talking about is
embeded SQL within DB2 and here the term dynamic basically means that
you know all the sql that needs to be performed, but not all of the
values to be used in the SQL.  Not possible in an interpreted 
environment.

What I am dealing with is the Call Level Interface (CLI) which is
atleast one level of abstraction (maybe two,  :-) ) lower than
embeded SQL.  Samething holds for DBD/Oracle and I don't know about
Informix, Sybase, and Ingres.


Unfortunately for me, the current version of DB2 CLI does not 
support any form of describe for a parameterized SQL statement, which
makes it quite difficult to make DBD/DB2 look and work just like
DBD/Oracle as I must require the user to provide more information
prior to binding a statement.

Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <09812-41@lion>;
          Fri, 8 Sep 1995 07:31:54 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 08 Sep 95 00:56:28 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa13466;
          8 Sep 95 1:55 +0100
Received: by gw.home.vix.com id AA16977; Thu, 7 Sep 95 15:01:45 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA16972; Thu, 7 Sep 95 15:01:41 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa08473;
          7 Sep 95 20:31 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ab20784;
          7 Sep 95 20:28 +0100
Received: from ig.co.uk by lion id <06926-0@lion>;
          Thu, 7 Sep 1995 20:29:02 +0100
To: mhm@austin.ibm.com
Subject: Re: Building the %attribs for bind_param ?
Cc: perldb-interest@vix.com
Date: Thu, 7 Sep 1995 20:29:02 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509072028.ab20784@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> > 
>  [ all of the foundation discussion about binding parameter in
>    DB2 deleted ]
> 
> > Is this related to DB2 not being able to describe variables for you? 
> > If so you have my sympathies and, yes, you would need to manually
> > specify, somewhere, any required information which DB2 is unable 
> > to tell you itself.
> 
> Exactly, none of the information about the what the database thinks 
> the parameters should be is available from the database.  The enduser
> is required to specify all of following things to bind a variable to
> a parameter.
> 
> 1. Column type - INPUT/OUTPUT, deferred/nondeferred

I thought DB2 could describe columns but not parameters. If so then
stick to variables being INPUT and nondeferred only for now (and like
I said before, deferred is probably to dangerous to use).

> 2. Incoming C type for the variable.

Are there any types which DB2 can't auto-convert to a string buffer?

> 3. Expected SQL type.
> 4. Precision of the variable
> 5. Scale of the variable
> 6. Pointer to variable - containing parameter value
> 7. Max size of parameter variable
> 8. Pointer to variable containing actual size of parameter value
> 
Umm, this talk of pointers worries me. It's not something the user
should have to think about.

I recommend you strive to find a selection of values and automatic
typ conversions which enable you to do something like

	$sth->bind_param(1, $var1, $bpa_int);
	$sth->bind_param(2, $var2, $bpa_string);
	$sth->bind_param(3, $var3, $bpa_float);
	$sth->bind_param(4, $var4, $bpa_date);

E.g., predefine a selection of bind param attribute hashes which are
set to liberal values.

If this is not possible for DB2 get yourself a new database!

> Thus, I was asking is it better to create a function in the xs file
> or the pm file?
> 
Do whatever it is you have in mind in the pm file first if possible.
Migrate to xs only if needed.

What do you envisage your function interface looking like?

Do IBM plan to fix the DB2 api?

> Mike
> mhm@austin.ibm.com
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <09812-42@lion>;
          Fri, 8 Sep 1995 07:32:08 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 08 Sep 95 01:07:30 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id ab18508;
          8 Sep 95 2:06 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <01095-0@frigate.doc.ic.ac.uk>; Fri, 8 Sep 1995 01:10:35 +0100
Received: by gw.home.vix.com id AA24169; Thu, 7 Sep 95 10:50:04 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA24144; Thu, 7 Sep 95 10:50:02 -0700
Received: from lazarus.nrtc.northrop.com by nrtc.nrtc.northrop.com id aa00117;
          7 Sep 95 9:23 PDT
Received: from world.nad.northrop.com 
          by lazarus.nrtc.northrop.com (15.4a/15.6.b) id AA26995;
          Thu, 7 Sep 95 10:49:29 pdt
Received: by world.nad.northrop.com (4.1/SMI-4.1.1) id AA07448;
          Thu, 7 Sep 95 10:46:18 PDT
Date: Thu, 7 Sep 1995 10:46:17 -0700 (PDT)
From: "Charles G. Margolin" <cmargoli@world.nad.northrop.com>
To: mhm@austin.ibm.com
Cc: perldb-interest@vix.com
Subject: Re: Building the %attribs for bind_param ?
In-Reply-To: <9509071735.AA18276@dax.austin.ibm.com>
Message-Id: <Pine.SUN.3.91.950907103658.11407C-100000@world.nad.northrop.com>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Thu, 7 Sep 1995 mhm@austin.ibm.com wrote:

> 
> "Charles G. Margolin" <cmargoli@world.nad.northrop.com>  writes:
> >
> > Here's a kludge:  Perhaps you could code a routine using the DB2
> > precompiler which would receive an arbitrary SQL statement, 
> > PREPARE and DESCRIBE it, and return the resulting SQLDA structure.  
> > Then use that SQLDA for the info you need in your CLI-based routines.
> > 
> 
> Thought about it but there are two major problems:
> 
> 1) The big problem is that it requires each machine to have the
>    precompiler installed and available to the enduser.  Not always the
>    case in production shop.
> 
> 2) While CLI can deal with SQLDA, it is not the normal method.  Hence,
>    significantly more work for me and thus, more places for things
>    to go wrong.
> 
Actually, 1 is less of a problem because the only the installer needs
to precompile.  The precompilable module does not specify any tables
and does not have to be precompiled by endusers.  A longer shot would
be to try to supply the C program spit out by the precompiler.

Item 2 is indeed a problem because you would have to decode it and
use the contents piecemeal.

Charles Margolin                  email: cmargoli@world.nad.northrop.com
Northrop Grumman Corporation      phone: (310)332-6011
One Northrop Ave.  Orgn. 624/23
Hawthorne, CA 90250-3277

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <09549-53@lion>;
          Fri, 8 Sep 1995 07:32:48 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 08 Sep 95 01:50:43 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa06130;
          8 Sep 95 2:49 +0100
Received: by gw.home.vix.com id AA21606; Thu, 7 Sep 95 16:07:53 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA21600; Thu, 7 Sep 95 16:07:51 -0700
Received: from nas.edu (chariot.nas.edu [144.171.1.14]) 
          by darius.nas.edu (8.6.11/8.6.10) with SMTP id TAA11544 
          for <perldb-interest@vix.com>; Thu, 7 Sep 1995 19:07:49 -0400
Received: from cc:Mail by nas.edu id AA810526045; Thu, 07 Sep 95 18:57:00 EST
Date: Thu, 07 Sep 95 18:57:00 EST
From: Susan Kim <skim@nas.edu>
Encoding: 2 Text
Message-Id: <9508078105.AA810526045@nas.edu>
To: perldb-interest@vix.com
Subject: unsubscribe


  unsubscribe

---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <13990-0@lion>;
          Fri, 8 Sep 1995 11:36:14 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 08 Sep 95 07:50:33 GMT
Received: from gw.home.vix.com by punt2.demon.co.uk id aa12356;
          8 Sep 95 7:26 +0100
Received: by gw.home.vix.com id AA07676; Thu, 7 Sep 95 19:48:52 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA07671; Thu, 7 Sep 95 19:48:51 -0700
X400-Received: by mta bnr.ca in /PRMD=BNR/ADMD=TELECOM.CANADA/C=CA/; Relayed;
               Thu, 7 Sep 1995 20:27:52 -0400
X400-Received: by /PRMD=BNR/ADMD=TELECOM.CANADA/C=CA/; Relayed;
               Thu, 7 Sep 1995 20:27:47 -0400
X400-Received: by /PRMD=BNR/ADMD=TELECOM.CANADA/C=CA/; Relayed;
               Tue, 5 Sep 1995 20:26:00 -0400
Date: Thu, 7 Sep 1995 20:26:00 -0400
X400-Originator: /dd.id=1679065/g=andrew/i=a/s=markham/@bnr.ca
X400-Mts-Identifier: [/PRMD=BNR/ADMD=TELECOM.CANADA/C=CA/;bcars735.b.663:08.08.95.00.27.47]
X400-Content-Type: P2-1984 (2)
Content-Identifier: Anyone have D...
From: "andrew (a.) markham" <markham@bnr.ca>
Message-Id: <"4664 Thu Sep 7 20:27:48 1995"@bnr.ca>
To: perldb-interest@vix.com
Subject: Anyone have DBD::mSQL compiling for HP-UX?


Before I spend a few days trying to port DBD::mSQL, does
anyone have it at compilation state for HP-UX?

Any info appreciated!

--
Andy Markham
BNR, Inc.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03404-6@lion>;
          Mon, 11 Sep 1995 07:22:02 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 08 Sep 95 21:23:53 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa14505;
          8 Sep 95 22:23 +0100
Received: by gw.home.vix.com id AA16748; Fri, 8 Sep 95 05:39:22 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA16742; Fri, 8 Sep 95 05:39:21 -0700
Received: by tymix.Tymnet.COM (4.1/SMI-4.1) id AA02013;
          Fri, 8 Sep 95 05:39:24 PDT
Received: from 131.146.22.157 by tymix.Tymnet.COM (in.smtpd);
          8 Sep 95 5:39:23 PDT
Received: by ferengi.tymnet.com (4.1/SMI-4.1) id AA28182;
          Fri, 8 Sep 95 12:39:19 GMT
Date: Fri, 8 Sep 95 12:39:19 GMT
From: Terry Kane <tkane@ferengi.tymnet.com>
Message-Id: <9509081239.AA28182@ferengi.tymnet.com>
To: perldb-interest@vix.com
Subject: unsubscribe

unsubscribe
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03404-10@lion>;
          Mon, 11 Sep 1995 07:22:58 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 08 Sep 95 22:23:25 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa13568;
          8 Sep 95 23:22 +0100
Received: by gw.home.vix.com id AA11339; Fri, 8 Sep 95 04:04:39 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA11334; Fri, 8 Sep 95 04:04:38 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa02511;
          8 Sep 95 11:36 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ac05587;
          8 Sep 95 11:33 +0100
Received: from ig.co.uk by lion id <13968-0@lion>;
          Fri, 8 Sep 1995 11:35:31 +0100
To: robertig@x500.bt.co.uk
Subject: Re: Calling PL/SQL blocks from Oraperl
Cc: perldb-interest@vix.com
Date: Fri, 8 Sep 1995 11:35:31 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509081133.ac05587@post.demon.co.uk>


> From: "Robertson, Ian" <robertig@x500.bt.co.uk>
> 
> Tim
> 
> I'm having problems binding in oraperl to a PL/SQL procedure parameter   
> list. I can call stored procedures with no parameters, and I can bind SQL.
> 
> Here is the offending code:
> 
> $csr = &ora_open($lda, "DECLARE BEGIN itest.proc1(:1); END;")
>             || die "ora_open: $ora_errno: $ora_errstr\n";
>    
> &ora_bind($csr, '166544' )
>             || warn "ora_bind($csr): $ora_errno: $ora_errstr\n";
> 
> @fields = &ora_fetch($csr)
>             || warn "ora_fetch($csr): $ora_errno: $ora_errstr\n";
> 
> I get the following complaint back from Oraperl
> 
> ERROR EVENT: DBI::st=HASH(0x98e24)->DBI::default_handler:
>         6550 ORA-06550: line 1, column 15:
> PLS-00306: wrong number or types of arguments in call to 'PROC1'
> ORA-06550: line 1, column 15:
> PL/SQL: Statement ignored (DBD: odescr failed)
>  at /usr/local/lib/perl5/Oraperl.pm line 93
> Describe failed during DBI::st=HASH(0x98e24)->FETCH(NUM_OF_PARAMS) at   
> /usr/local/lib/perl5/Oraperl.pm line 93.
> 
> I have tried combinations of CHAR/VARCHAR2/NUMBER without success.
> 
> If you could point me to some documnetation or sample code for this I   
> would be most grateful. Ideally I would like to
> know what types can be translated between oraperl and PL/SQL, and   
> particularly how this is achieved for vectors.
> 
Umm, this is an interesting one. ora_open does:

sub ora_open {
    my($lda, $stmt, $cache) = @_;

    my $csr = $lda->prepare($stmt) or return undef;

    # only execute here if no bind vars specified
    $csr->execute or return undef unless $csr->{NUM_OF_PARAMS};

    $csr;
}

The $csr->{NUM_OF_PARAMS} triggers a describe call (odescr) which
fails since the parameters have not been bound.

The problem is that NUM_OF_PARAMS should not trigger an odescr since
the value is already known.

To be fixed in the next release. Meanwhile try adding these lines:

    if (kl==13 && strEQ(key, "NUM_OF_PARAMS"))  /* handled by DBI */ 
        return Nullsv;

just above the line:

    if (!imp_sth->done_desc && !dbd_describe(sth, imp_sth)) {

in dbd_st_FETCH().

> Thanks Ian  
>
Tim. 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03397-15@lion>;
          Mon, 11 Sep 1995 07:24:17 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 08 Sep 95 23:26:45 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa11953;
          9 Sep 95 0:26 +0100
Received: by gw.home.vix.com id AA10620; Fri, 8 Sep 95 03:51:16 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA10615; Fri, 8 Sep 95 03:51:15 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id ac02484;
          8 Sep 95 11:36 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa05587;
          8 Sep 95 11:33 +0100
Received: from ig.co.uk by lion id <13643-0@lion>;
          Fri, 8 Sep 1995 10:05:39 +0100
To: perldb-interest@vix.com
Subject: How to unsubscribe
Date: Fri, 8 Sep 1995 10:05:39 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509081133.aa05587@post.demon.co.uk>

Anyone wishing to unsubscribe should post to perldb-interest-request@vix.com
rather than the normal list address.

Thanks.

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03397-16@lion>;
          Mon, 11 Sep 1995 07:24:38 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 08 Sep 95 23:31:36 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa14383;
          9 Sep 95 0:30 +0100
Received: by gw.home.vix.com id AA21254; Fri, 8 Sep 95 06:31:19 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA21249; Fri, 8 Sep 95 06:31:17 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.11/8.6.11) with SMTP id IAA143660 
          for <perldb-interest@vix.com>; Fri, 8 Sep 1995 08:31:17 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA15936;
          Fri, 8 Sep 1995 08:31:15 -0500
From: mhm@austin.ibm.com
Message-Id: <9509081331.AA15936@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: Re: Building the %attribs for bind_param ?
In-Reply-To: Your message of Thu, 07 Sep 95 20:29:02 +0100. <9509072028.ab20784@post.demon.co.uk>
Date: Fri, 08 Sep 95 08:31:15 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> > Exactly, none of the information about the what the database thinks 
> > the parameters should be is available from the database.  The enduser
> > is required to specify all of following things to bind a variable to
> > a parameter.
> > 
> > 1. Column type - INPUT/OUTPUT, deferred/nondeferred
> 
> I thought DB2 could describe columns but not parameters. If so then
> stick to variables being INPUT and nondeferred only for now (and like
> I said before, deferred is probably to dangerous to use).

This field referes to the method by which DB2 will attempt to use the 
incoming parameter.  Each type (INPUT/OUTPUT, deferred/nondeferred)
inplies a slight different behavior.  And yes, initially, everything
will be type INPUT, but if I ever want to support stored precedures
I must make allowances for OUTPUT and deferred.

> > 2. Incoming C type for the variable.
> 
> Are there any types which DB2 can't auto-convert to a string buffer?

No, but depending on how you set up the SQL the optimize might guess
and inappropriate conversion.  Doesn't happen very often, but if it 
does happen I want the enduser to be able to override the defaults.

> > 3. Expected SQL type.
> > 4. Precision of the variable
> > 5. Scale of the variable
> > 6. Pointer to variable - containing parameter value
> > 7. Max size of parameter variable
> > 8. Pointer to variable containing actual size of parameter value
> > 
> Umm, this talk of pointers worries me. It's not something the user
> should have to think about.

If I do my job right, the enduser will never know he is dealing with
pointers.  So far hiding that fact has been very easy.  The one
place pointers are causing me problems is getting the addres of
the $var in the $sth->bind_param(1, $var, \%attribs), here a ref
to $var would make thing a bit easier.
 
> I recommend you strive to find a selection of values and automatic
> typ conversions which enable you to do something like
> 
> 	$sth->bind_param(1, $var1, $bpa_int);
> 	$sth->bind_param(2, $var2, $bpa_string);
> 	$sth->bind_param(3, $var3, $bpa_float);
> 	$sth->bind_param(4, $var4, $bpa_date);
> 
> E.g., predefine a selection of bind param attribute hashes which are
> set to liberal values.
> 
> If this is not possible for DB2 get yourself a new database!

Quit possible and already done for the main four cases.  Unfortunately,
I already know that data belonging to some of the potential users, 
contains things other than the main four types, as such I was trying
to come up with a generic method of allowing the end users to mutate
an existing default to match the particular combination of things
they want to use.
 
> > Thus, I was asking is it better to create a function in the xs file
> > or the pm file?
> > 
> Do whatever it is you have in mind in the pm file first if possible.
> Migrate to xs only if needed.
> 
> What do you envisage your function interface looking like?

At this point I'm not quite sure which is the best approach. Thus far,
I have predefined attributes for int, string, float and date and was
thinking about something like

$new_attribs = build_attrib($existing_attrib, $new_type[, \%changes] )

and probably,

show_attribs($existing_attrib);

so in essence, if called with two args it would simply change the
ctype to sqltype mapping. Or, if called with three args would change
some/all of the other underlying attributes.  And probably,

show_attribs($existing_attrib);

which would dump the contents of an existing attribute hash ref.

Right now I think, I can do everything I need to do in the DB2.pm file, but it will be a few days before I know for sure.

> 
> Do IBM plan to fix the DB2 api?

Don't know.  The CLI folks have been trying for two years, the engine
folks claim to have heard nothing about it until just recently.  I am
sure that if X/Open mandates GetStmtAttribute, the we will get both
functions.


Mike
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03397-19@lion>;
          Mon, 11 Sep 1995 07:25:48 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 08 Sep 95 23:53:33 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa24838;
          9 Sep 95 0:53 +0100
Received: by gw.home.vix.com id AA12449; Fri, 8 Sep 95 11:10:06 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA12413; Fri, 8 Sep 95 11:10:03 -0700
Received: by netcon.smc.edu (5.59/25-eef, Santa Monica College) id AA09672;
          Fri, 8 Sep 95 13:11:51 EDT
Received: by intime.intime.com (Smail3.1.29.1 #2) id m0sr7WM-00040pC;
          Fri, 8 Sep 95 10:47 PDT
Message-Id: <m0sr7WM-00040pC@intime.intime.com>
Subject: Re: Building the %attribs for bind_param ?
To: perldb-interest@vix.com
Date: Fri, 8 Sep 1995 10:47:22 -0700 (PDT)
From: Scott Michel <scottm@intime.intime.com>
In-Reply-To: <9509072028.ab20784@post.demon.co.uk> from "Tim Bunce" at Sep 7, 95 08:29:02 pm
X-Mailer: ELM [version 2.4 PL22]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 666
Organization: IntelliMED Corporation, Santa Monica, CA, USA

Tim Bunce says:
> > 8. Pointer to variable containing actual size of parameter value
> > 
> Umm, this talk of pointers worries me. It's not something the user
> should have to think about.

This sounds like a holdover from embedded SQL, and isn't that important
for Perl. There are so many ways around it because Perl is a dynamic
environment unlike the "special" arrangements one has to make in a static
environment like C.

> If this is not possible for DB2 get yourself a new database!

Let's stop being religious. Remember, IBM may be Inferior But Marketable,
but they've been doing this for many more years, and likely many more to
come in the future.

-scottm
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03397-20@lion>;
          Mon, 11 Sep 1995 07:26:09 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 09 Sep 95 00:19:26 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa06851;
          9 Sep 95 1:18 +0100
Received: by gw.home.vix.com id AA12125; Fri, 8 Sep 95 11:03:56 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA12116; Fri, 8 Sep 95 11:03:55 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.11/8.6.11) with SMTP id NAA176804 
          for <perldb-interest@vix.com>; Fri, 8 Sep 1995 13:03:54 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA28914;
          Fri, 8 Sep 1995 13:03:52 -0500
From: mhm@austin.ibm.com
Message-Id: <9509081803.AA28914@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: Problem with XSUB or DBI magic
Date: Fri, 08 Sep 95 13:03:52 -0500


I am trying to use:

   $sth->bind_param($param_number,$value, $attrib_type)

yet when I get into 

dbd_bind_ph(sth,param,value,attributes)

I only have 3 valid values on the stack as attributes contains
a Nullsv.

The other interesting (or is it just my stupidity :-) ) thing
is that value returns after the following

   sv_setsv(phs->sv, value);
   value_ptr = SvPV(phs->sv, value_len);

is   SCALAR(0x20080558) 
 

I'm lost at this point.  Any ideas.

Mike Moran
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03397-21@lion>;
          Mon, 11 Sep 1995 07:26:29 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 09 Sep 95 00:24:35 GMT
Received: from gate.demon.co.uk by punt.demon.co.uk id aa09239;
          9 Sep 95 1:24 +0100
Received: from gw.home.vix.com by gate.demon.co.uk id ab18004;
          9 Sep 95 1:24 GMT-60:00
Received: by gw.home.vix.com id AA12742; Fri, 8 Sep 95 11:10:36 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA12737; Fri, 8 Sep 95 11:10:36 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.11/8.6.11) with SMTP id NAA154270 
          for <perldb-interest@vix.com>; Fri, 8 Sep 1995 13:10:35 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA03862;
          Fri, 8 Sep 1995 13:10:34 -0500
From: mhm@austin.ibm.com
Message-Id: <9509081810.AA03862@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: Anyone else notice ....
Date: Fri, 08 Sep 95 13:10:34 -0500


that messages to the list seem to be taking longer and longer to
be propogated.

The last few I have seen, have taken in excess of 12 hours from orgination
to delivery at my system....not including time zone differences.

Just curious.

Mike

------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03404-20@lion>;
          Mon, 11 Sep 1995 07:26:53 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 09 Sep 95 01:18:15 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id aa03287;
          9 Sep 95 2:18 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <21344-0@frigate.doc.ic.ac.uk>; Sat, 9 Sep 1995 02:14:50 +0100
Received: by gw.home.vix.com id AA01146; Fri, 8 Sep 95 14:33:06 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA01141; Fri, 8 Sep 95 14:33:05 -0700
Received: from lesol1.dseg.ti.com ([128.247.231.86]) by gate.ti.com (8.6.12/) 
          with ESMTP id QAA13810 for <perldb-interest@vix.com>;
          Fri, 8 Sep 1995 16:33:02 -0500
Received: from ms3.dseg.ti.com (ms3.dseg.ti.com [128.247.215.78]) 
          by lesol1.dseg.ti.com (8.6.9/8.6.6) with SMTP id QAA29466 
          for <perldb-interest@vix.com>; Fri, 8 Sep 1995 16:31:44 -0500
Received: from ms19.nbserv by ms3.dseg.ti.com (4.1/SMI-4.1) id AA23158;
          Fri, 8 Sep 95 16:31:42 CDT
Date: Fri, 8 Sep 95 16:31:42 CDT
From: John Cerney 0182636 <cerney@ms3.dseg.ti.com>
Message-Id: <9509082131.AA23158@ms3.dseg.ti.com>
To: perldb-interest@vix.com
Subject: unsubscribe

unsubscribe
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03397-23@lion>;
          Mon, 11 Sep 1995 07:27:11 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 09 Sep 95 01:18:34 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id aa03287;
          9 Sep 95 2:18 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <21369-0@frigate.doc.ic.ac.uk>; Sat, 9 Sep 1995 02:15:22 +0100
Received: by gw.home.vix.com id AA18585; Fri, 8 Sep 95 12:07:56 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA18571; Fri, 8 Sep 95 12:07:55 -0700
Received: from localhost (mellon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          with SMTP id MAA13016; Fri, 8 Sep 1995 12:05:07 -0700
Message-Id: <199509081905.MAA13016@toccata.fugue.com>
To: mhm@austin.ibm.com
Cc: perldb-interest@vix.com
Subject: Re: Anyone else notice ....
In-Reply-To: Your message of "Fri, 08 Sep 1995 13:10:34 CDT." <9509081810.AA03862@dax.austin.ibm.com>
Date: Fri, 08 Sep 1995 12:05:06 -0700
From: Ted Lemon <mellon@fugue.com>


Your message was delivered to me about six minutes after it was
received at vix.com.  However, there is definitely a lag on the
mailing list, because it's quite large these days.  Sendmail runs the
list sequentially, and if a lot of hosts above you on the list are
unreachable, it will take a long time to time out on them, and
consequently delivery to you will be delayed.

Twelve hours does seem like a pretty long time, though - it probably
implies that delivery to you is being deferred because your host isn't
reliably reachable.   This could be the result of a routing problem on
the Internet, too heavy a load on your mail server, or a wide variety
of less obvious things.

A copy of the headers on a message that you feel was delayed a long
time would help us to determine where in the delivery process your
message is being delayed.

			       _MelloN_
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <04346-1@lion>;
          Mon, 11 Sep 1995 07:27:20 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 09 Sep 95 02:07:38 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id aa21404;
          9 Sep 95 3:07 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <22686-0@frigate.doc.ic.ac.uk>; Sat, 9 Sep 1995 03:06:45 +0100
Received: by gw.home.vix.com id AA21869; Fri, 8 Sep 95 12:42:07 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA21861; Fri, 8 Sep 95 12:42:04 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.11/8.6.11) with SMTP id OAA165692 
          for <perldb-interest@vix.com>; Fri, 8 Sep 1995 14:42:03 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA26978;
          Fri, 8 Sep 1995 14:41:57 -0500
From: mhm@austin.ibm.com
Message-Id: <9509081941.AA26978@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: defining Global hash refs in a pm file
Date: Fri, 08 Sep 95 14:41:56 -0500


Found my problem, I am not defining my default parameter attribute
hash refs correctly in the DB2.pm file.  Question is how do I define them 
in the global name space from the DB2.pm file ?

Thanks.

Mike

------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03397-41@lion>;
          Mon, 11 Sep 1995 07:33:26 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 10 Sep 95 05:23:15 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa21614;
          10 Sep 95 6:23 +0100
Received: by gw.home.vix.com id AA15752; Sat, 9 Sep 95 18:03:30 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA15747; Sat, 9 Sep 95 18:03:29 -0700
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id UAA27165; Sat, 9 Sep 1995 20:03:28 -0500
Date: Sat, 9 Sep 1995 20:03:27 -0500 (CDT)
From: Ben A Lindstrom <mouring@netnet.net>
To: perldb-interest@vix.com
Subject: Finally compiling DBI
Message-Id: <Pine.SUN.3.91.950909195225.25699A-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I finally was able to get access to my Target NeXTStep 3.1 machine.

It compiles almost clean...Just one warning (at 1049 Incompatable Type)
but I don't think that is too major.

It seems to bomb at test 5 with the following.

Can't locate DBI object method "0" via package "DBD::Switch::dr" at 
t/min.t line 19.
FAILED on test 5

Then everything works until the end.

Test error handling: prepare invalid query.
Expect an ERROR EVENT message:
Can't locate DBI object method "Unknown field name:: unknown_field_name" 
via package "DBD::ExampleP::db" at blib/DBD/ExampleP.pm line 63.
*** Exit 2

I don't know what is to be expected or not.  I'm sure the *** Exit 2
is not to be expected. =)  I don't know about the "Test error handling" 
message.

I'll still install it so I have something to work from.  But anyone
have any ideas?


---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <03404-38@lion>;
          Mon, 11 Sep 1995 07:33:40 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 10 Sep 95 06:50:40 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa19002;
          10 Sep 95 7:50 +0100
Received: by gw.home.vix.com id AA19753; Sat, 9 Sep 95 19:11:25 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA19748; Sat, 9 Sep 95 19:11:24 -0700
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id VAA29379; Sat, 9 Sep 1995 21:11:23 -0500
Date: Sat, 9 Sep 1995 21:11:22 -0500 (CDT)
From: Ben A Lindstrom <mouring@netnet.net>
To: perldb-interest@vix.com
Subject: XS/PM/C question.
Message-Id: <Pine.SUN.3.91.950909210845.25699B-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

Ok, I'm in the process of trying to compile the partly modified Oracle
modules (that now contains QuickBase calls).

But I can't seem simplely compile it a shared library by hand.  xsubpp
deals with the .xs nicely, but I am unsure what exactly is done with
the dbdimp.c/h file.  

Any information would be greatly helpful.

Thanks.

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <04346-20@lion>;
          Mon, 11 Sep 1995 07:34:11 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 10 Sep 95 15:16:20 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa00918;
          10 Sep 95 16:16 +0100
Received: by gw.home.vix.com id AA25786; Sun, 10 Sep 95 04:56:17 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA25780; Sun, 10 Sep 95 04:56:15 -0700
Received: from kukini.cs.bris.ac.uk by dira.bris.ac.uk with SMTP (PP);
          Sun, 10 Sep 1995 12:56:12 +0100
Received: from kiha by kukini.compsci.bristol.ac.uk id aa05824;
          10 Sep 95 11:59 GMT
To: perldb-interest@vix.com
Subject: Compiling Perl for System V
Date: Sun, 10 Sep 95 11:55:51 GMT
From: ally@cs.bris.ac.uk
Message-Id: <9509101155.aa02603@uk.ac.bristol.compsci.kiha>

I've finally got Perl v4.036 and Oraperl v2.4 to compile for Sun System V and it seems to be working fine with Oracle v7.0.13.6.0.  Many thanks to all those that replied to my earlier cry for help.

Only one problem remains.  How do I compile Perl without getting a "FAILED on test 1" for op/groups?

Karim Ally
Dept. of Computer Science
University of Bristol
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <20831-7@lion>;
          Tue, 12 Sep 1995 07:21:53 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 11 Sep 95 21:31:00 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa13205;
          11 Sep 95 22:30 +0100
Received: by gw.home.vix.com id AA04165; Mon, 11 Sep 95 07:34:09 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA04153; Mon, 11 Sep 95 07:34:08 -0700
Received: from uucp6.UU.NET by relay3.UU.NET with SMTP id QQzgsw11410;
          Mon, 11 Sep 1995 10:34:05 -0400
Received: from cambex.UUCP by uucp6.UU.NET with UUCP/RMAIL ;
          Mon, 11 Sep 1995 10:34:07 -0400
Received: by cambex.cambex.com (AIX 3.2/UCB 5.64/4.03) id AA31489;
          Mon, 11 Sep 1995 10:20:33 -0400
Date: Mon, 11 Sep 1995 10:20:33 -0400
From: Dave Ford <cambex!dford@uunet.uu.net>
Message-Id: <9509111420.AA31489@cambex.cambex.com>
To: perldb-interest@vix.com, skim@nas.edu
Subject: Re: unsubscribe


>  unsubscribe

Could someone please post how you unsubscribe so we can all stop getting
these messages?

Dave Ford
Cambex
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <20831-8@lion>;
          Tue, 12 Sep 1995 07:22:02 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 11 Sep 95 21:33:56 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id aa15492;
          11 Sep 95 22:33 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <07158-0@frigate.doc.ic.ac.uk>; Mon, 11 Sep 1995 22:33:33 +0100
Received: by gw.home.vix.com id AA02944; Mon, 11 Sep 95 07:12:13 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA02935; Mon, 11 Sep 95 07:12:08 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.11/8.6.11) with SMTP id JAA123152 
          for <perldb-interest@vix.com>; Mon, 11 Sep 1995 09:12:07 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA26812;
          Mon, 11 Sep 1995 09:12:03 -0500
From: mhm@austin.ibm.com
Message-Id: <9509111412.AA26812@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: $sth->execute(@bind_values) question
Date: Mon, 11 Sep 95 09:12:02 -0500


Under DBD::Oracle does $sth->execute() ... not no args... work if
$sth->bind_param($index_or_name,$var,$attribs) called first.  

At this point, DB2perl will work correctly if I use bind_param and
provide a list of bind values to execute.  If I don't provide the 
list of bind values then the data is corrupted going in.

Mike 


------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <20831-21@lion>;
          Tue, 12 Sep 1995 07:25:13 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 11 Sep 95 23:13:55 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa09077;
          12 Sep 95 0:13 +0100
Received: by gw.home.vix.com id AA00496; Mon, 11 Sep 95 06:30:50 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA00490; Mon, 11 Sep 95 06:30:48 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.11/8.6.11) with SMTP id IAA113295;
          Mon, 11 Sep 1995 08:30:43 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA25222;
          Mon, 11 Sep 1995 08:30:41 -0500
From: mhm@austin.ibm.com
Message-Id: <9509111330.AA25222@dax.austin.ibm.com>
To: mhm@austin.ibm.com
Cc: perldb-interest@vix.com
Subject: Re: defining Global hash refs in a pm file -- still !correct
In-Reply-To: Your message of Fri, 08 Sep 95 14:41:56 -0500. <9509081941.AA26978@dax.austin.ibm.com>
Date: Mon, 11 Sep 95 08:30:40 -0500


mhm@austin.ibm.com  writes:
> 
> Found my problem, I am not defining my default parameter attribute
> hash refs correctly in the DB2.pm file.  Question is how do I 
> define them in the global name space from the DB2.pm file ?

Well, I have tried the obvious things.  Either defining the hash refs
as $main::attrib_char = { 'name' => value} or referencing them
as $DBD::DB2::attrib_char, neither of which succeeds when I attempt
to an 
        svp = hv_fetch((HV*)SvRV(attribs), "Stype",0, 0);

I get back a NULL svp.  So where have I run amuck?

Mike 
------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <20831-38@lion>;
          Tue, 12 Sep 1995 07:27:38 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 12 Sep 95 02:30:34 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa15187;
          12 Sep 95 3:30 +0100
Received: by gw.home.vix.com id AA14182; Mon, 11 Sep 95 15:35:13 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA14172; Mon, 11 Sep 95 15:35:11 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa14473;
          11 Sep 95 15:35 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ab09988;
          11 Sep 95 15:33 +0100
Received: from ig.co.uk by lion id <07387-0@lion>;
          Mon, 11 Sep 1995 10:28:13 +0100
To: perldb-interest@vix.com, mouring@netnet.net
Subject: Re: Finally compiling DBI
Date: Mon, 11 Sep 1995 10:28:13 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509111533.ab09988@post.demon.co.uk>


> From: Ben A Lindstrom <mouring@netnet.net>
> 
> I finally was able to get access to my Target NeXTStep 3.1 machine.
> 
> It compiles almost clean...Just one warning (at 1049 Incompatable Type)
> but I don't think that is too major.
> 
> It seems to bomb at test 5 with the following.
> 
> Can't locate DBI object method "0" via package "DBD::Switch::dr" at 
> t/min.t line 19.
> FAILED on test 5
> 
Upgrade the DBI. Here's the change note:

  Changes in DBI 0.63,    1 Sep 1995

    Minor update. Fixed uninitialised memory bug in method
    attribute handling and streamlined processing and debugging.
    Revised usage definitions for bind_* methods and readblob.

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <20831-40@lion>;
          Tue, 12 Sep 1995 07:27:55 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 12 Sep 95 02:58:30 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa28398;
          12 Sep 95 3:57 +0100
Received: by gw.home.vix.com id AA14177; Mon, 11 Sep 95 15:35:11 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA14170; Mon, 11 Sep 95 15:35:09 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa14480;
          11 Sep 95 15:35 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ac09988;
          11 Sep 95 15:33 +0100
Received: from ig.co.uk by lion id <07394-0@lion>;
          Mon, 11 Sep 1995 10:29:58 +0100
To: perldb-interest@vix.com, mouring@netnet.net
Subject: Re: XS/PM/C question.
Date: Mon, 11 Sep 1995 10:29:58 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509111533.ac09988@post.demon.co.uk>


> From: Ben A Lindstrom <mouring@netnet.net>
> 
> Ok, I'm in the process of trying to compile the partly modified Oracle
> modules (that now contains QuickBase calls).
> 
> But I can't seem simplely compile it a shared library by hand.  xsubpp
> deals with the .xs nicely, but I am unsure what exactly is done with
> the dbdimp.c/h file.  
> 
> Any information would be greatly helpful.
> 
You'll need to give me more to go on than that. (Also see the notes
in the README about the kind of information I'll typically need/want.)

Tim. 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <20831-42@lion>;
          Tue, 12 Sep 1995 07:28:13 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 12 Sep 95 03:37:28 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa14457;
          12 Sep 95 4:36 +0100
Received: by gw.home.vix.com id AA14289; Mon, 11 Sep 95 15:38:05 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AB14283; Mon, 11 Sep 95 15:38:03 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa14568;
          11 Sep 95 15:36 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ad10062;
          11 Sep 95 15:33 +0100
Received: from ig.co.uk by lion id <08126-0@lion>;
          Mon, 11 Sep 1995 11:18:23 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: defining Global hash refs in a pm file
Date: Mon, 11 Sep 1995 11:18:23 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509111534.ad10062@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Found my problem, I am not defining my default parameter attribute
> hash refs correctly in the DB2.pm file.  Question is how do I define them 
> in the global name space from the DB2.pm file ?
> 
The short answer is that you don't do it via the DBI.

I think it would be reasonable for the application to say:


	use DBI;

	use DBD::DB2 qw($bpa_foo $bpa_bar);


since this clearly marks the application as non portable, which it is.

I'll add a build_attrib method (in C for speed) to the next DBI release.

> Mike
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <20831-45@lion>;
          Tue, 12 Sep 1995 07:28:41 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 12 Sep 95 04:29:49 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa09236;
          12 Sep 95 5:28 +0100
Received: by gw.home.vix.com id AA05107; Mon, 11 Sep 95 13:44:44 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA05097; Mon, 11 Sep 95 13:44:39 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id ab14662;
          11 Sep 95 20:47 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa15368;
          11 Sep 95 20:44 +0100
Received: from ig.co.uk by lion id <18406-0@lion>;
          Mon, 11 Sep 1995 20:43:10 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: Building the %attribs for bind_param ?
Date: Mon, 11 Sep 1995 20:43:10 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509112045.aa15368@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> > > Exactly, none of the information about the what the database thinks 
> > > the parameters should be is available from the database.  The enduser
> > > is required to specify all of following things to bind a variable to
> > > a parameter.
> > > 
> > > 1. Column type - INPUT/OUTPUT, deferred/nondeferred
> > 
> > I thought DB2 could describe columns but not parameters. If so then
> > stick to variables being INPUT and nondeferred only for now (and like
> > I said before, deferred is probably to dangerous to use).
> 
> This field referes to the method by which DB2 will attempt to use the 
> incoming parameter.  Each type (INPUT/OUTPUT, deferred/nondeferred)
> inplies a slight different behavior.  And yes, initially, everything
> will be type INPUT, but if I ever want to support stored precedures
> I must make allowances for OUTPUT and deferred.
> 
Having just had a quick read of the SQL CLI spec I understand your usage
of deferred now. It comes under the 'not urgent' category and is unlikely
to have direct DBI support until the DBI starts absorbing the SQL CLI spec.

Mapping PutData etc into Perl needs some thought.


> > > 2. Incoming C type for the variable.
> > 
> > Are there any types which DB2 can't auto-convert to a string buffer?
> 
> No, but depending on how you set up the SQL the optimize might guess
> and inappropriate conversion.  Doesn't happen very often, but if it 
> does happen I want the enduser to be able to override the defaults.
> 
But it does simplify the usual case, and that's important.


> > > 3. Expected SQL type.
> > > 4. Precision of the variable
> > > 5. Scale of the variable
> > > 6. Pointer to variable - containing parameter value
> > > 7. Max size of parameter variable
> > > 8. Pointer to variable containing actual size of parameter value
> > > 
> > Umm, this talk of pointers worries me. It's not something the user
> > should have to think about.
> 
> If I do my job right, the enduser will never know he is dealing with
> pointers.  So far hiding that fact has been very easy.  The one
> place pointers are causing me problems is getting the addres of
> the $var in the $sth->bind_param(1, $var, \%attribs), here a ref
> to $var would make thing a bit easier.
>
I was never very sure about this one. It started out being a reference
but I changed it while pondering the danger of deferred writes to perl
variable memory addresses.

I've also mentioned some time back having a bind_param() for simple
common usage and bind_param_inout() for fancy stuff (which would
generate an error if unsupported). I think this might be best since
it seems rather counterintuitive to have to say things like:

	$sth->bind_param(1, \42);

and the creation, dereferencing and freeing of the reference is wasteful.

Umm, I think I'm going to leave bind_param as-is for now and formally
state that the DBI spec (such as it is) does not currently support
output parameters. Feel free to use the $h->func(..., 'method_name')
mechanism to add your own bind_param_inout style function.

I'll come back to this issue when addressing the changes arising
from the SQL CLI spec.

> > I recommend you strive to find a selection of values and automatic
> > typ conversions which enable you to do something like
> > 
> > 	$sth->bind_param(1, $var1, $bpa_int);
> > 	$sth->bind_param(2, $var2, $bpa_string);
> > 	$sth->bind_param(3, $var3, $bpa_float);
> > 	$sth->bind_param(4, $var4, $bpa_date);
> > 
> > E.g., predefine a selection of bind param attribute hashes which are
> > set to liberal values.
> > 
> > If this is not possible for DB2 get yourself a new database!
> 
> Quit possible and already done for the main four cases.  Unfortunately,
> I already know that data belonging to some of the potential users, 
> contains things other than the main four types, as such I was trying
> to come up with a generic method of allowing the end users to mutate
> an existing default to match the particular combination of things
> they want to use.
>  
> > > Thus, I was asking is it better to create a function in the xs file
> > > or the pm file?
> > > 
> > Do whatever it is you have in mind in the pm file first if possible.
> > Migrate to xs only if needed.
> > 
> > What do you envisage your function interface looking like?
> 
> At this point I'm not quite sure which is the best approach. Thus far,
> I have predefined attributes for int, string, float and date and was
> thinking about something like
> 
> $new_attribs = build_attrib($existing_attrib, $new_type[, \%changes] )
 
> so in essence, if called with two args it would simply change the
> ctype to sqltype mapping. Or, if called with three args would change
> some/all of the other underlying attributes.

How does that add significant value over just saying something like:

  $new_attribs = { %$existing_attribs, db2_type => $new_type };

?

> Mike
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <25533-0@lion>;
          Tue, 12 Sep 1995 15:14:16 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 12 Sep 95 13:06:32 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa10679;
          12 Sep 95 14:06 +0100
Received: by gw.home.vix.com id AA08234; Mon, 11 Sep 95 21:16:22 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA08229; Mon, 11 Sep 95 21:16:20 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id XAA156987 
          for <perldb-interest@vix.com>; Mon, 11 Sep 1995 23:16:19 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA22576;
          Mon, 11 Sep 1995 23:16:19 -0500
From: mhm@austin.ibm.com
Message-Id: <9509120416.AA22576@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: Re: Building the %attribs for bind_param ?
In-Reply-To: Your message of Mon, 11 Sep 95 20:43:10 +0100. <9509112045.aa15368@post.demon.co.uk>
Date: Mon, 11 Sep 95 23:16:18 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|> > If I do my job right, the enduser will never know he is dealing with
|> > pointers.  So far hiding that fact has been very easy.  The one
|> > place pointers are causing me problems is getting the addres of
|> > the $var in the $sth->bind_param(1, $var, \%attribs), here a ref
|> > to $var would make thing a bit easier.
|> >
|> I was never very sure about this one. It started out being a reference
|> but I changed it while pondering the danger of deferred writes to perl
|> variable memory addresses.
|> 
|> I've also mentioned some time back having a bind_param() for simple
|> common usage and bind_param_inout() for fancy stuff (which would
|> generate an error if unsupported). I think this might be best since
|> it seems rather counterintuitive to have to say things like:
|> 
|> 	$sth->bind_param(1, \42);
|> 
|> and the creation, dereferencing and freeing of the reference is wasteful.
|> 
|> Umm, I think I'm going to leave bind_param as-is for now and formally
|> state that the DBI spec (such as it is) does not currently support
|> output parameters. Feel free to use the $h->func(..., 'method_name')
|> mechanism to add your own bind_param_inout style function.

Ok, my perl ignorance is showing....If I don't have a reference how
do I tell DB2 which memory location to get its values from?  DB2 CLI
does everything by reference and nothing by value.  Thus, I need the 
address of the perl variable containing the value of the parameter.

|> > > What do you envisage your function interface looking like?
|> > 
|> > At this point I'm not quite sure which is the best approach. Thus far,
|> > I have predefined attributes for int, string, float and date and was
|> > thinking about something like
|> > 
|> > $new_attribs = build_attrib($existing_attrib, $new_type[, \%changes] )
|>  
|> > so in essence, if called with two args it would simply change the
|> > ctype to sqltype mapping. Or, if called with three args would change
|> > some/all of the other underlying attributes.
|> 
|> How does that add significant value over just saying something like:
|> 
|>   $new_attribs = { %$existing_attribs, db2_type => $new_type };

Once again, I'm totally lost with that syntax.  Would you explain what
that says to you?

Thanks.
Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <15626-3@lion>;
          Wed, 13 Sep 1995 07:21:02 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 13 Sep 95 01:17:00 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa01869;
          13 Sep 95 2:16 +0100
Received: by gw.home.vix.com id AA05153; Tue, 12 Sep 95 03:35:47 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA05147; Tue, 12 Sep 95 03:35:43 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa08351;
          12 Sep 95 7:21 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa10657;
          12 Sep 95 7:18 +0100
Received: from ig.co.uk by lion id <18588-0@lion>;
          Mon, 11 Sep 1995 21:05:44 +0100
To: perldb-interest@vix.com, jennifer@chmsr.isye.gatech.edu
Subject: Re: Problems "make"ing the DBD::Oracle driver
Cc: benjamin@mime1.marc.gatech.edu
Date: Mon, 11 Sep 1995 21:05:44 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509120718.aa10657@post.demon.co.uk>


> From: Jennifer Anne Turns <jennifer@chmsr.isye.gatech.edu>
> 
Sorry for the delay in getting back to you.

> I am in the process of trying to get the Perl5 to communicate with 
> Oracle7.  I have downloaded the most recent versions of the DBI (0.63) 
> and DBD (0.25) and have successfully installed DBI and tested it.  I am 
> having problems when "make"ing DBD.  The information reulting from the 
> first two steps of this process are given below:
> 
> 
> ---------------------------------------------------------------------
> THIS IS THE SUCCESSFUL OUTPUT FROM THE COMMAND:  perl Makefile.PL
> 
> Configuring DBD::Oracle version 0.25...
> Remember to actually read the README file!
> 
> Using Oracle in /usr/ld/oracle
> Oracle sysliblist: -lm
> Using /usr/ld/oracle/proc/lib/proc.mk version 7.27
> System: perl5.001 sunos srl 5.2 generic_100999-40 sun4m sparc  sun4-solaris 
> dl_dlopen.xs

Solaris 2.2 is very old and buggy.

> Compiler: cc -O 
> Oracle proc.mk would have used these values but we override them:
>   CC:       /usr/5bin/cc
>   CFLAGS:   -I. -O
>   LDFLAGS:  -Bdynamic -L$(LIBHOME)
> 
> ---------------------------------------------------------------------
> THIS IS THE UNSUCCESSFUL OUTPUT FROM THE COMMAND:  make
> 
> root > make
> cc -c -O -Kpic -I/usr/local/lib/perl5/sun4-solaris/CORE  
> -I/usr/ld/oracle/rdbms/demo  -I/usr/local/lib/perl5/sun4-solaris/DBI Oracle.c
> cc -c -O -Kpic -I/usr/local/lib/perl5/sun4-solaris/CORE  
> -I/usr/ld/oracle/rdbms/demo -I/usr/local/lib/perl5/sun4-solaris/DBI dbdimp.c
> Running Mkbootstrap for DBD::Oracle ()
> chmod 644 Oracle.bs
> LD_RUN_PATH="" cc -o blib/auto/DBD/Oracle/Oracle.so -G Oracle.o  dbdimp.o 
> -L/usr/ld/oracle/lib  /usr/ld/oracle/lib/libocic.a /usr/ld/oracle/lib/osntab.o 
> -lsqlnet -lora /usr/ld/oracle/lib/libpls.a -lsqlnet -lnlsrtl -lcv6 -lcore 
> -lnlsrtl -lcv6  -lcore  `cat /usr/ld/oracle/rdbms/lib/sysliblist`   -lm
> ld: fatal: file /usr/ld/oracle/lib/libocic.a: unknown type, unable to process 
> using elf(3E) libraries
> *** Error code 1
> make: Fatal error: Command failed for target `blib/auto/DBD/Oracle/Oracle.so'
> 
Is there any chance that the /usr/ld/oracle tree is not a Solaris 2
release of Oracle (e.g., it's a SunOS 4.1.3 release)?

Try this:

	$ ar x /usr/ld/oracle/lib/libocic.a oci.o
	$ file oci.o
	oci.o:		ELF 32-bit MSB relocatable SPARC Version 1

if it doesn't say 'ELF 32-bit ...' then either it's not a Solaris 2
release or your oracle files have been damaged.

> jennifer
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <15626-4@lion>;
          Wed, 13 Sep 1995 07:21:09 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 13 Sep 95 01:20:25 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa03310;
          13 Sep 95 2:19 +0100
Received: by gw.home.vix.com id AA13790; Tue, 12 Sep 95 12:15:51 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA13785; Tue, 12 Sep 95 12:15:50 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id OAA40317;
          Tue, 12 Sep 1995 14:15:50 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA18596;
          Tue, 12 Sep 1995 14:15:44 -0500
From: mhm@austin.ibm.com
Message-Id: <9509121915.AA18596@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com
Subject: Re: Getting the address of a variable.
In-Reply-To: Your message of Tue, 12 Sep 95 16:58:44 +0100. <9509121656.aa05312@post.demon.co.uk>
Date: Tue, 12 Sep 95 14:15:43 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> > 
> Mike, did you mean to post to perl5-porters instead of perldb-interest?

Well, sort of... currently my position on the perldb-interest list is
so far down and there are so many "unreliable" delivery sites ahead of
me, message turn around is somewhere between 8-24 hours.  This is just
to have my message returned to me.  perl5-porters on the other hand
is 1-2 hours.  While the example was perldb the question actually 
related to perlguts so ...
 
> Anyway, the answer is... it depends on the type of the variable.
> Take a look at sv.h. For example, for SVt_PV (a typical string)
> sv_any in struct sv points to a struct xpv. The struct xpv xpv_pv
> field is the pointer to the string.
> 
> But *don't* use it directly! sv.h defines many macros which should
> be used instead of refering to the struct fields directly.
> 
> SvPVX(sv) will get you the xpv_pv value - or maybe a core dump if the
> sv is not of the right type. SvPV(sv) will also get you the xpv_pv
> value if the sv is a SVt_PV type (simplification) but if it's not
> it'll call sv_2pv() to convert the value to a string.
> 
> For what you want to do you should *not* pass the address of the
> bind_param $var_in_question to SQLBindParameter, if you do you run the
> risk of memory corruption if $var_in_question is changed in any way.
> 
> I suggest that you use sv_setsv() to make a copy of $var_in_question
> and then check the type (using the SvTYPE macro) and, maybe using a
> switch statement, pass appropriate parameters to SQLBindParameter()
> using SvIVX(), SvNVX(), SvPVX() etc after checking SvIOK(), SvNOK(),
> SvPOK() etc.
> 
Which would work if you always wanted to call $sth->execute() with
arguments.  It fails if you attempt to prebind as you don't have 
the appropriate value in the variable at the time the copy is made.

Or am I misinterpreting what you are attempting to say?

What I want to be able to do is the following

1) $sth->bind_param(...)
   a bunch of other things
   $sth->execute()

and

2) a bunch of things
   $sth->execute(arg1...argN)

Both should work exactly the same, should use the same code and should
NOT require that the value in argX be copied to bind_varX.

Given those two cases and the three assumptions, I don't see how to
do it without know the real address of the perl variable.  Do you?

Thanks.
Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <15627-5@lion>;
          Wed, 13 Sep 1995 07:21:27 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 13 Sep 95 02:18:32 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa28415;
          13 Sep 95 3:18 +0100
Received: by gw.home.vix.com id AA04095; Tue, 12 Sep 95 10:23:51 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA04086; Tue, 12 Sep 95 10:23:47 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa29946;
          12 Sep 95 16:09 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ac23439;
          12 Sep 95 16:07 +0100
Received: from ig.co.uk by lion id <25762-0@lion>;
          Tue, 12 Sep 1995 15:31:47 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: $sth->execute(@bind_values) question
Date: Tue, 12 Sep 1995 15:31:47 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509121607.ac23439@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Under DBD::Oracle does $sth->execute() ... not no args... work if
> $sth->bind_param($index_or_name,$var,$attribs) called first.  
> 
> At this point, DB2perl will work correctly if I use bind_param and
> provide a list of bind values to execute.  If I don't provide the 
> list of bind values then the data is corrupted going in.
> 
You'll need to keep track of what's been bound so you can complain if
any of the parameters have not been bound at execute time.

DBD::Oracle doesn't do this since Oracle does it for you (oexec generates
an error if anything has not been bound yet).

Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <26338-39@lion>;
          Thu, 14 Sep 1995 07:27:37 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 14 Sep 95 02:24:46 GMT
Received: from relay-1.mail.demon.net by punt2.demon.co.uk id aa20993;
          14 Sep 95 2:32 +0100
Received: from gate.demon.co.uk by relay-1.mail.demon.net id aa23072;
          12 Sep 95 18:47 +0100
Received: by gw.home.vix.com id AA17511; Mon, 11 Sep 95 23:45:27 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA17505; Mon, 11 Sep 95 23:45:26 -0700
Received: (from total@localhost) by xmission.xmission.com (8.6.12/8.6.12) 
          id AAA24741 for perldb-interest@vix.com;
          Tue, 12 Sep 1995 00:45:23 -0600
From: "Total Health Mktg." <total@xmission.com>
Message-Id: <199509120645.AAA24741@xmission.xmission.com>
Subject: mSQL & DBM info request
To: perldb-interest@vix.com
Date: Tue, 12 Sep 1995 00:45:20 -0600 (MDT)
X-Mailer: ELM [version 2.4 PL24]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 465

Are any readers on this list using mSQL or DBM for CGI database applications?
I am new to this and am trying to decide which, if any, database will be 
best.  If there is a FAQ with this information would someone kindly direct
me to it.
  Any readers out there using either of these for your database application
I would appreciate your evalutions.  Are there any sources on the net that
I can learn more about these programs?

Thank you,
Jim
clements@xmission.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <19528-7@lion>;
          Fri, 15 Sep 1995 00:32:51 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 14 Sep 95 23:15:17 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa01865;
          15 Sep 95 0:15 +0100
Received: by gw.home.vix.com id AA29890; Tue, 12 Sep 95 20:42:43 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA29885; Tue, 12 Sep 95 20:42:29 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa29920;
          12 Sep 95 16:09 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa23439;
          12 Sep 95 16:07 +0100
Received: from ig.co.uk by lion id <25718-0@lion>;
          Tue, 12 Sep 1995 15:24:11 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: Building the %attribs for bind_param ?
Date: Tue, 12 Sep 1995 15:24:11 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509121607.aa23439@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> |> > If I do my job right, the enduser will never know he is dealing with
> |> > pointers.  So far hiding that fact has been very easy.  The one
> |> > place pointers are causing me problems is getting the addres of
> |> > the $var in the $sth->bind_param(1, $var, \%attribs), here a ref
> |> > to $var would make thing a bit easier.
> |> >
> |> I was never very sure about this one. It started out being a reference
> |> but I changed it while pondering the danger of deferred writes to perl
> |> variable memory addresses.
> |> 
> |> I've also mentioned some time back having a bind_param() for simple
> |> common usage and bind_param_inout() for fancy stuff (which would
> |> generate an error if unsupported). I think this might be best since
> |> it seems rather counterintuitive to have to say things like:
> |> 
> |> 	$sth->bind_param(1, \42);
> |> 
> |> and the creation, dereferencing and freeing of the reference is wasteful.
> |> 
> |> Umm, I think I'm going to leave bind_param as-is for now and formally
> |> state that the DBI spec (such as it is) does not currently support
> |> output parameters. Feel free to use the $h->func(..., 'method_name')
> |> mechanism to add your own bind_param_inout style function.
> 
> Ok, my perl ignorance is showing....If I don't have a reference how
> do I tell DB2 which memory location to get its values from?  DB2 CLI
> does everything by reference and nothing by value.  Thus, I need the 
> address of the perl variable containing the value of the parameter.
> 
Take a look at DBD::Oracle (again). Note that the bind_param function
takes a local copy of the value and passes the address of that to Oracle.


> |> > > What do you envisage your function interface looking like?
> |> > 
> |> > At this point I'm not quite sure which is the best approach. Thus far,
> |> > I have predefined attributes for int, string, float and date and was
> |> > thinking about something like
> |> > 
> |> > $new_attribs = build_attrib($existing_attrib, $new_type[, \%changes] )
> |>  
> |> > so in essence, if called with two args it would simply change the
> |> > ctype to sqltype mapping. Or, if called with three args would change
> |> > some/all of the other underlying attributes.
> |> 
> |> How does that add significant value over just saying something like:
> |> 
> |>   $new_attribs = { %$existing_attribs, db2_type => $new_type };
> 
> Once again, I'm totally lost with that syntax.  Would you explain what
> that says to you?

Hashes in a list context expand to a list of key/value pairs.

%hash1 = ( Key,Value );

$hash1_ref = \%hash1;

@list1 = %$hash1_ref;    # @list1 is now ( Key,Value )

@list2     = ( A,1, %$hash1_ref, B,2 );
                         # @list2 is now ( A,1, Key,Value, B,2)

%hash2     = ( A,1, %$hash1_ref, B,2 );
                         # @hash2 is a hash with 3 key/value pairs

%hash2_ref = { A,1, %$hash1_ref, B,2 };
                         # %hash2_ref is ref to a hash with 3 key/value pairs

Does that help?

> Thanks.
> Mike
> mhm@austin.ibm.com
>
Tim. 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <20191-5@lion>;
          Fri, 15 Sep 1995 01:21:14 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 15 Sep 95 00:19:50 GMT
Received: from relay-1.mail.demon.net by punt.demon.co.uk id aa29182;
          15 Sep 95 1:19 +0100
Received: from gw.home.vix.com by relay-1.mail.demon.net id aa18966;
          14 Sep 95 22:48 +0100
Received: by gw.home.vix.com id AA07143; Thu, 14 Sep 95 04:12:29 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA07137; Thu, 14 Sep 95 04:12:27 -0700
Received: from venus.geoquest.slb.com (venus.montrouge.geoquest.slb.com) 
          by gourou.montrouge.geoquest.slb.com (4.1/Montrouge-February94 - MTB) 
          id AA13107; Thu, 14 Sep 95 13:20:42 +0200
Date: Thu, 14 Sep 95 13:20:42 +0200
From: Hayet MAKHLOUF <hayet@montrouge.geoquest.slb.com>
Message-Id: <9509141120.AA13107@gourou.montrouge.geoquest.slb.com>
To: perldb-interest@vix.com
Subject: unsubscribe

unsubscribe
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <21959-1@lion>;
          Fri, 15 Sep 1995 07:21:28 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 15 Sep 95 00:52:01 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa12516;
          15 Sep 95 1:51 +0100
Received: by gw.home.vix.com id AA13931; Thu, 14 Sep 95 06:12:57 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA13919; Thu, 14 Sep 95 06:12:53 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id IAA171584 
          for <perldb-interest@vix.com>; Thu, 14 Sep 1995 08:12:53 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA16154;
          Thu, 14 Sep 1995 08:12:53 -0500
From: mhm@austin.ibm.com
Message-Id: <9509141312.AA16154@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: Adding sqlstate to DBI...how?
Date: Thu, 14 Sep 95 08:12:52 -0500


Ok, I give up.  I haven't found the correct magically incantation to
add sqlstate in with err and errstate.  So, how do you do it?

Thanks.
Mike

------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <21958-7@lion>;
          Fri, 15 Sep 1995 07:21:53 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 15 Sep 95 01:29:34 GMT
Received: from gw.home.vix.com by punt2.demon.co.uk id ab27655;
          15 Sep 95 2:06 +0100
Received: by gw.home.vix.com id AA11157; Wed, 13 Sep 95 19:16:47 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA11152; Wed, 13 Sep 95 19:16:46 -0700
Received: by alta.COM (4.1/SMI-4.1+TAS1.10) id AA11867;
          Wed, 13 Sep 95 19:16:27 PDT
From: Damian Martinez <krak@alta.com>
Message-Id: <9509140216.AA11867@alta.COM>
Subject: ld.so: _stderr undefined symbol?!
To: perldb-interest@vix.com
Date: Wed, 13 Sep 1995 19:16:26 -0700 (PDT)
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 6919

Hello to all,

I have a feeling this is more of a compiler type problem,
but this is the only place I can think of to come, esp
since I only see this when doing the DBI tests...

I recently sent a message detailing the fact that I couldn't
get the DBI to compile on a Sun 4.1.3_U1 with gcc 2.5.8.
Response seemed to point at my ancient compiler so I built
and installed gcc 2.6.3 and libg and libg++ (whatever the latest
versions were)...

OK, so DBI-0.63 compiles allright (or seems to) but when i run the
tests, ld.so complains about not finding the _stderr symbol (!?)
D'oH! this sounds really bad and I'm no expert on anything to do
with C or linking or whatever this might point to...Can anyone help?

Here's some info on the make/make test/Configure...

____________________

basalt ~/perldb/DBI-0.63 % perl -e 'use Config; print Config::myconfig()'
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=sunos, osver=4.1.3_u1, archname=sun4-sunos
    uname='sunos basalt 4.1.3_u1 4 sun4c '
    hint=recommended
  Compiler:
    cc='gcc', optimize='-O'
    cppflags='-DDEBUGGING'
    ccflags ='-DDEBUGGING'
    ldflags =''
    stdchar='unsigned char', d_stdstdio=define, usevfork=true
    voidflags=15, castflags=0, d_casti32=define, d_castneg=define
    intsize=4, alignbytes=8, usemymalloc=y, randbits=31
  Libraries:
    so=so
    libpth=/lib /usr/lib /usr/ucblib /usr/local/lib
    libs=-ldbm -ldl -lm -lc -lposix
    libc=/usr/lib/libc.so.1.9.1
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
    cccdlflags='-fpic', ccdlflags=' ', lddlflags='-assert nodefinitions'


basalt ~/perldb/DBI-0.63 % perl Makefile.PL

    Build, TEST and INSTALL Perl 5 first. Use version 5.001m or later.

    DO NOT build the DBI under the Perl source tree.

    Use 'make test' to execute self tests.

MakeMaker (v4.16)
Checking if your kit is complete...
Looks good
        DEFINE => '-Wall -pedantic -Wno-comment -Wpointer-arith -Wcast-align -Wconversion'
        NAME => 'DBI'
        VERSION => '0.63'
Using PERL=/usr/local/bin/perl
Writing Makefile for DBI

basalt ~/perldb/DBI-0.63 % make
mkdir ./blib
mkdir ./blib/auto
mkdir ./blib/auto/DBI
/usr/local/bin/perl -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 /usr/local/lib/perl5/ExtUtils/xsubpp -typemap /usr/local/lib/perl5/ExtUtils/typemap DBI.xs >DBI.tc && mv DBI.tc DBI.c
gcc -c -DDEBUGGING -O -fpic -I/usr/local/lib/perl5/sun4-sunos/CORE -Wall -pedantic -Wno-comment -Wpointer-arith -Wcast-align -Wconversion  DBI.c
In file included from /usr/local/include/netinet/in.h:23,
                 from /usr/local/lib/perl5/sun4-sunos/CORE/perl.h:205,
                 from DBIXS.h:13,
                 from DBI.c:19:
/usr/local/include/sys/socket.h:41: warning: comma at end of enumerator list
/usr/local/include/sys/socket.h:180: warning: comma at end of enumerator list
/usr/local/include/sys/socket.h:260: warning: comma at end of enumerator list
In file included from /usr/local/lib/perl5/sun4-sunos/CORE/perl.h:205,
                 from DBIXS.h:13,
                 from DBI.c:19:
/usr/local/include/netinet/in.h:40: warning: comma at end of enumerator list
/usr/local/include/netinet/in.h:80: warning: comma at end of enumerator list
DBI.c: In function `dbih_getcom':
DBI.c:228: warning: cast increases required alignment of target type
DBI.c:236: warning: cast increases required alignment of target type
DBI.c: In function `dbih_setup_handle':
DBI.c:314: warning: cast increases required alignment of target type
DBI.c: In function `XS_DBD_____st_fetchrow':
DBI.c:1532: warning: cast increases required alignment of target type
DBI.c:1532: warning: cast increases required alignment of target type
DBI.c:1540: warning: cast increases required alignment of target type
DBI.c: In function `XS_DBD_____st_fetch':
DBI.c:1593: warning: cast increases required alignment of target type
DBI.c: In function `XS_DBD___mem__common_DESTROY':
DBI.c:1695: warning: cast increases required alignment of target type
Running Mkbootstrap for DBI ()
chmod 644 DBI.bs
LD_RUN_PATH="" ld -o blib/auto/DBI/DBI.so -assert nodefinitions DBI.o   
chmod 755 blib/auto/DBI/DBI.so
cp DBI.bs ./blib/auto/DBI/DBI.bs
chmod 644 blib/auto/DBI/DBI.bs
mkdir ./blib/DBI
cp DBIXS.h blib/DBI/DBIXS.h
chmod 644 blib/DBI/DBIXS.h
mkdir ./blib/DBD
cp lib/DBD/ExampleP.pm blib/DBD/ExampleP.pm
chmod 644 blib/DBD/ExampleP.pm
cp lib/DBD/NullP.pm blib/DBD/NullP.pm
chmod 644 blib/DBD/NullP.pm
cp DBI.pm blib/DBI.pm
chmod 644 blib/DBI.pm


basalt ~/perldb/DBI-0.63 % make test
/usr/local/bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/min...............ld.so: Undefined symbol: _stderr
FAILED on test 1
Failed 1 test, 0.00% okay.
Files=1,  Tests=6,  3 secs ( 1.03 cusr  0.55 csys =  1.58 cpu)
/usr/local/bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 test.pl
test.pl 
DBI test application $Revision: 1.12 $
ld.so: Undefined symbol: _stderr
make: *** [test_dynamic] Error 127



basalt ~/perldb/DBI-0.63 % make test TEST_VERBOSE=1
/usr/local/bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose=1; runtests @ARGV;' t/*.t
t/min...............1..6
ld.so: Undefined symbol: _stderr
FAILED on test 1
Failed 1 test, 0.00% okay.
Files=1,  Tests=6,  2 secs ( 1.05 cusr  0.53 csys =  1.58 cpu)
/usr/local/bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 test.pl
test.pl 
DBI test application $Revision: 1.12 $
ld.so: Undefined symbol: _stderr
make: *** [test_dynamic] Error 127


Somone said my LD_LIBRARY_PATH might be wrong...here it is too:
basalt ~/perldb/DBI-0.63 % echo $LD_LIBRARY_PATH
/usr/local/lib:/usr/lib:/usr/X11R5/lib:/u/moc/lib:/usr/openwin/lib:/usr/X11R5/lib/X11/lib


When I tried to rebuild the perl dist with the newer gcc, it died on this:
basalt /src/packages/perl5.001m % make
...
`sh  cflags libperl.a pp_sys.o`  pp_sys.c
          CCCMD =  gcc -c -DDEBUGGING -O   
pp_sys.c: In function `pp_sysread':
pp_sys.c:954: warning: passing arg 6 of `recvfrom' from incompatible pointer type
pp_sys.c: In function `pp_accept':
pp_sys.c:1484: warning: passing arg 3 of `accept' from incompatible pointer type
pp_sys.c: In function `pp_ssockopt':
pp_sys.c:1579: warning: passing arg 5 of `getsockopt' from incompatible pointer type
pp_sys.c: In function `pp_getpeername':
pp_sys.c:1646: warning: passing arg 3 of `getsockname' from incompatible pointer type
pp_sys.c:1650: warning: passing arg 3 of `getpeername' from incompatible pointer type
pp_sys.c: In function `pp_gpwent':
pp_sys.c:3620: structure has no member named `pw_age'
pp_sys.c:3629: structure has no member named `pw_comment'
make: *** [pp_sys.o] Error 1



Anyone? 
Sorry for the long message...

-Damian Martinez




---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <21959-16@lion>;
          Fri, 15 Sep 1995 07:24:48 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 15 Sep 95 02:10:25 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa12547;
          15 Sep 95 3:09 +0100
Received: by gw.home.vix.com id AA27835; Thu, 14 Sep 95 15:26:02 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA27811; Thu, 14 Sep 95 15:25:55 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa27763;
          14 Sep 95 23:19 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ab23294;
          14 Sep 95 23:16 +0100
Received: from ig.co.uk by lion id <18386-0@lion>;
          Thu, 14 Sep 1995 23:08:34 +0100
To: mhm@austin.ibm.com
Subject: Re: $sth->execute(@bind_values) question
Cc: perldb-interest@vix.com
Date: Thu, 14 Sep 1995 23:08:34 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509142316.ab23294@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> > 
> > > From: mhm@austin.ibm.com
> > > 
> > > Under DBD::Oracle does $sth->execute() ... not no args... work if
> > > $sth->bind_param($index_or_name,$var,$attribs) called first.  
> > > 
> > > At this point, DB2perl will work correctly if I use bind_param and
> > > provide a list of bind values to execute.  If I don't provide the 
> > > list of bind values then the data is corrupted going in.
> > > 
> > You'll need to keep track of what's been bound so you can complain if
> > any of the parameters have not been bound at execute time.
> > 
> > DBD::Oracle doesn't do this since Oracle does it for you (oexec generates
> > an error if anything has not been bound yet).
> 
> Turns out that I have not been providing the correct address to 
> SQLBindParameter.  It is appearantly of a local scope and disappears
> between the call to $sth->bind_param and $sth->execute().  
> 
> In the case of $sth->execute(arg1...argN) the memory address have been
> used recently enough to still contain valid data when SQLExecute runs.
> 
> Next question, how do I get the memory address of $var from within
> my $sth->bind_param function when I don't know what the enduser named $var?
> 
Sigh. Mike, we could go on like this for weeks.

I have already said that the way to do this is to copy the value using sv_setsv()
and then use the appropriate SvPVX/SvIVX/SvNVX etc macro to get the address to
pass to SQLBindParameter. Use the code in DBD::Oracle to get it working for
strings. Please try to learn from the code, both in DBD::Oracle and perl itself.

Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <21958-19@lion>;
          Fri, 15 Sep 1995 07:25:12 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 15 Sep 95 03:33:39 GMT
Received: from relay-1.mail.demon.net by punt2.demon.co.uk id aa20340;
          15 Sep 95 1:48 +0100
Received: from gw.home.vix.com by relay-1.mail.demon.net id aa29023;
          15 Sep 95 1:08 +0100
Received: by gw.home.vix.com id AA11384; Thu, 14 Sep 95 05:37:18 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA11379; Thu, 14 Sep 95 05:37:17 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id HAA177478 
          for <perldb-interest@vix.com>; Thu, 14 Sep 1995 07:37:12 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA22926;
          Thu, 14 Sep 1995 07:37:12 -0500
From: mhm@austin.ibm.com
Message-Id: <9509141237.AA22926@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: Error Handling.....
Date: Thu, 14 Sep 95 07:37:12 -0500


Ok, I finally made it to the point where I have to rework dbd_st_fetch 
and as I worked my way through I encountered all the places where
DBD::Oracle is checking for specific return codes.  The question is
are they Oracle return codes or are they sql_state codes?

For portability across databases, I would like to see it be the
standardized SQLSTATE codes.  But more of an impact on me is that DB2
only has 7 cli return codes, all of the diagnostic info is returned
in the SQLSTATE codes.

Any chance that DBDs could go to SQLSTATEs as we move to incorporating
more of the CLI spec?

Mike


------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <21959-66@lion>;
          Fri, 15 Sep 1995 07:34:34 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 15 Sep 95 03:35:26 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id ba10126;
          15 Sep 95 4:34 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <16351-0@frigate.doc.ic.ac.uk>; Thu, 14 Sep 1995 22:43:59 +0100
Received: by gw.home.vix.com id AA03288; Tue, 12 Sep 95 10:14:20 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA03282; Tue, 12 Sep 95 10:14:17 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id MAA151238;
          Tue, 12 Sep 1995 12:14:16 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA15788;
          Tue, 12 Sep 1995 12:14:14 -0500
From: mhm@austin.ibm.com
Message-Id: <9509121714.AA15788@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com
Subject: Re: $sth->execute(@bind_values) question
In-Reply-To: Your message of Tue, 12 Sep 95 15:31:47 +0100. <9509121607.ac23439@post.demon.co.uk>
Date: Tue, 12 Sep 95 12:14:13 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> 
> > From: mhm@austin.ibm.com
> > 
> > Under DBD::Oracle does $sth->execute() ... not no args... work if
> > $sth->bind_param($index_or_name,$var,$attribs) called first.  
> > 
> > At this point, DB2perl will work correctly if I use bind_param and
> > provide a list of bind values to execute.  If I don't provide the 
> > list of bind values then the data is corrupted going in.
> > 
> You'll need to keep track of what's been bound so you can complain if
> any of the parameters have not been bound at execute time.
> 
> DBD::Oracle doesn't do this since Oracle does it for you (oexec generates
> an error if anything has not been bound yet).
> 

Turns out that I have not been providing the correct address to 
SQLBindParameter.  It is appearantly of a local scope and disappears
between the call to $sth->bind_param and $sth->execute().  

In the case of $sth->execute(arg1...argN) the memory address have been
used recently enough to still contain valid data when SQLExecute runs.

Next question, how do I get the memory address of $var from within
my $sth->bind_param function when I don't know what the enduser named
$var?

Thanks.

Mike
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <21959-87@lion>;
          Fri, 15 Sep 1995 07:37:24 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 15 Sep 95 04:55:10 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa07406;
          15 Sep 95 5:54 +0100
Received: by gw.home.vix.com id AA05188; Tue, 12 Sep 95 22:31:09 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA05174; Tue, 12 Sep 95 22:31:01 -0700
Received: from dokoka (dokoka.ucsb.edu) by hub.ucsb.edu;
          id AA12202 sendmail 4.1/UCSB-2.1-sun Tue, 12 Sep 95 22:25:22 PDT 
          for perldb-interest@vix.com
Received: from dokoka.ucsb.edu by dokoka 
          via ESMTP (940816.SGI.8.6.9/940406.SGIv2) id WAA10073;
          Tue, 12 Sep 1995 22:25:17 -0700
Message-Id: <199509130525.WAA10073@dokoka>
To: PerlDB Interest List <perldb-interest@vix.com>, 
    MiniSQL Interest List <msql-list@bond.edu.au>
Subject: DBI connection management
Reply-To: Alan Stebbens <aks@hub.ucsb.edu>
Date: Tue, 12 Sep 1995 22:25:16 -0700
From: Alan Stebbens <aks@dokoka.ucsb.edu>

Am I clueless, or is there no way to discover what databases exist
for a given engine using DBI?

In Msql (the Perl5 extension separate from DBI/DBD), you can do:

    $dbh = Connect Msql $host;
    @tables = ListDBs $dbh;

With DBI, there doesn't seem to be any way to do this, even if I supported
it in the DBD/mSQL, except, horribly, through the func_call mechanism.

On a quasi-related note, I've been working with the perl Msql extension
(0.63) , and there seems to be some bugs in it.  I've fixed a couple, am
not if I did it the correct way.  

* If you invoke "$dbh = Connect Msql;" (that is, with a default host), then
  there was a segvio caused by a strlen on the null "host" variable.

* I also noticed that it didn't support the LENGTH column in the
  ListFields subroutine, so I added that to the hash list.

* There wasn't a Makefile.PL file, so I kind of made one up.  I'm not sure if
  the Makefile.SH is necessary or relevant still.

* I added the IDENT_TYPE (but, what is it :^)

Anyway, here're the patches, and I'd appreciate feedback.  

Thanks for msql, DBI/DBD/mSQL, and Msql.

_______________________________________
Alan K. Stebbens <aks@hub.ucsb.edu>
College of Engineering
University of California, Santa Barbara

diff -rcw ext/Msql/Makefile.PL ext.aks/Msql/Makefile.PL
*** ext/Msql/Makefile.PL	Fri Sep  1 19:33:53 1995
--- ext.aks/Msql/Makefile.PL	Tue Sep 12 02:29:59 1995
***************
*** 0 ****
--- 1,10 ----
+ use ExtUtils::MakeMaker;
+ # See lib/ExtUtils/MakeMaker.pm for details of how to influence
+ # the contents of the Makefile that is written.
+ WriteMakefile(
+     'NAME'	=> 'Msql',
+     'VERSION'	=> '1.0.8',
+     'LIBS'	=> ['-L/eci/msql/lib -lmsql'],   # e.g., '-lm' 
+     'DEFINE'	=> '',     # e.g., '-DHAVE_SOMETHING' 
+     'INC'	=> '-I/eci/msql/include',     # e.g., '-I/usr/include/other' 
+ );
diff -rcw ext/Msql/Makefile.SH ext.aks/Msql/Makefile.SH
*** ext/Msql/Makefile.SH	Mon Sep  5 10:41:20 1994
--- ext.aks/Msql/Makefile.SH	Fri Sep  1 18:46:19 1995
***************
*** 1,5 ****
! potential_libs="-L/usr/local/Minerva/lib -lmsql"
! msqlinc="/usr/local/Minerva/include"
  
  msqlversion=a1
  
--- 1,5 ----
! potential_libs="-L/eci/msql/lib -lmsql"
! msqlinc="/eci/msql/include"
  
  msqlversion=a1
  
Only in ext.aks/Msql: Makefile.old
Only in ext.aks/Msql: Msql.bs
Only in ext.aks/Msql: Msql.c
Only in ext.aks/Msql: Msql.o
diff -rcw ext/Msql/Msql.pm ext.aks/Msql/Msql.pm
*** ext/Msql/Msql.pm	Sun Sep  4 08:04:37 1994
--- ext.aks/Msql/Msql.pm	Tue Sep 12 02:39:46 1995
***************
*** 9,14 ****
--- 9,15 ----
          CHAR_TYPE
          INT_TYPE
          REAL_TYPE
+ 	IDENT_TYPE
  );
  
  sub AUTOLOAD {
diff -rcw ext/Msql/Msql.xs ext.aks/Msql/Msql.xs
*** ext/Msql/Msql.xs	Mon Sep  5 12:02:13 1994
--- ext.aks/Msql/Msql.xs	Tue Sep 12 16:02:29 1995
***************
*** 52,57 ****
--- 52,58 ----
    dMSQL;			\
    AV *		avkey;		\
    AV *		avnam;		\
+   AV *		avlen;		\
    AV *		avnnl;		\
    AV *		avtab;		\
    AV *		avtyp;		\
***************
*** 115,120 ****
--- 116,122 ----
      hv_store(hv,"NUMFIELDS",9,(SV *)newSViv((IV)msqlNumFields(result)),0);	\
      avnam = (AV*)(SV*)newAV();							\
      avtab = (AV*)(SV*)newAV();							\
+     avlen = (AV*)(SV*)newAV();  						\
      avtyp = (AV*)(SV*)newAV();							\
      avkey = (AV*)(SV*)newAV();							\
      avnnl = (AV*)(SV*)newAV();							\
***************
*** 123,128 ****
--- 125,131 ----
        curField = msqlFetchField(result);					\
        av_push(avnam,(SV*)newSVpv(curField->name,strlen(curField->name)));	\
        av_push(avtab,(SV*)newSVpv(curField->table,strlen(curField->table)));	\
+       av_push(avlen,(SV*)newSViv(curField->length));				\
        av_push(avtyp,(SV*)newSViv(curField->type));				\
        av_push(avkey,(SV*)newSViv(IS_PRI_KEY(curField->flags)));			\
        av_push(avnnl,(SV*)newSViv(IS_NOT_NULL(curField->flags)));		\
***************
*** 130,135 ****
--- 133,139 ----
      }										\
      rv = newRV((SV*)avnam); hv_store(hv,"NAME",4,rv,0);				\
      rv = newRV((SV*)avtab); hv_store(hv,"TABLE",5,rv,0);			\
+     rv = newRV((SV*)avlen); hv_store(hv,"LENGTH",6,rv,0);			\
      rv = newRV((SV*)avtyp); hv_store(hv,"TYPE",4,rv,0);				\
      rv = newRV((SV*)avkey); hv_store(hv,"IS_PRI_KEY",10,rv,0);			\
      rv = newRV((SV*)avnnl); hv_store(hv,"IS_NOT_NULL",11,rv,0)
***************
*** 179,184 ****
--- 183,194 ----
  #else
  	    goto not_there;
  #endif
+ 	if (strEQ(name, "IDENT_TYPE"))
+ #ifdef IDENT_TYPE
+ 	    return IDENT_TYPE;
+ #else
+ 	    goto not_there;
+ #endif
  	break;
      case 'J':
  	break;
***************
*** 350,357 ****
    } else {
      my_iniHV;
      svsock = (SV*)newSViv(sock);
!     svdb = (SV*)newSVpv(db,na);
!     svhost = (SV*)newSVpv(host,strlen(host));
      retMSQLSOCK;
    }
  }
--- 360,367 ----
    } else {
      my_iniHV;
      svsock = (SV*)newSViv(sock);
!     svdb   = db   ? (SV*)newSVpv(db,na) : 0;
!     svhost = host ? (SV*)newSVpv(host,strlen(host)) : 0;
      retMSQLSOCK;
    }
  }
***************
*** 395,401 ****
     position-pointer with DataSeek().
  
     We do a lot here: we investigate some info about the fields, that
!    will be returned by this handle: NAME, TABLE, TYPE, IS_PRI_KEY, and
     IS_NOT_NULL */
  
    dMSQLSTATE;
--- 405,411 ----
     position-pointer with DataSeek().
  
     We do a lot here: we investigate some info about the fields, that
!    will be returned by this handle: NAME, TABLE, LENGTH, TYPE, IS_PRI_KEY, and
     IS_NOT_NULL */
  
    dMSQLSTATE;
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <21959-89@lion>;
          Fri, 15 Sep 1995 07:38:05 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 15 Sep 95 04:58:03 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa08320;
          15 Sep 95 5:57 +0100
Received: by gw.home.vix.com id AA05307; Tue, 12 Sep 95 22:39:08 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA05302; Tue, 12 Sep 95 22:39:06 -0700
Received: from dokoka (dokoka.ucsb.edu) by hub.ucsb.edu;
          id AA12330 sendmail 4.1/UCSB-2.1-sun Tue, 12 Sep 95 22:38:46 PDT 
          for perldb-interest@vix.com
Received: from dokoka.ucsb.edu by dokoka 
          via ESMTP (940816.SGI.8.6.9/940406.SGIv2) 
          for <perldb-interest@vix.com> id WAA10119;
          Tue, 12 Sep 1995 22:38:47 -0700
Message-Id: <199509130538.WAA10119@dokoka>
To: PerlDB Interest List <perldb-interest@vix.com>
Subject: Another bug..
Reply-To: Alan Stebbens <aks@hub.ucsb.edu>
Date: Tue, 12 Sep 1995 22:38:45 -0700
From: Alan Stebbens <aks@dokoka.ucsb.edu>

In the code fragment below

    use Msql;

    ...

    defined($sdbh) or carp "\$sdbh not set!\n";
    my (@databases) = ListDBs $sdbh;

I'm getting the following error:

    "Use of uninitialized value at dbs line 640."

The error is occuring on the "ListDBs $sdbh" line.

I'm guessing that there is some internal variable not being
initialized properly, possibly the "db" variable in the connection
handle?

Is there a way I can determine where, exactly, the error is being
generated?

AdThanksVance.

_______________________________________
Alan K. Stebbens <aks@hub.ucsb.edu>
College of Engineering
University of California, Santa Barbara
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <24147-1@lion>;
          Fri, 15 Sep 1995 07:42:41 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 15 Sep 95 06:36:46 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa13716;
          15 Sep 95 7:36 +0100
Received: by gw.home.vix.com id AA28395; Tue, 12 Sep 95 20:11:14 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA25170; Tue, 12 Sep 95 19:02:07 -0700
Received: from [205.197.236.11] (fozzie.cortex.net [205.197.236.11]) 
          by dino.cortex.net (8.6.10/Cortex 1.1) with SMTP id WAA22755;
          Tue, 12 Sep 1995 22:00:48 -0400
Posted-Date: Tue, 12 Sep 1995 22:00:48 -0400
X-Sender: brent@205.197.236.2
Message-Id: <v02120c03ac7bc0d89184@[205.197.236.11]>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Tue, 12 Sep 1995 22:08:06 -0400
To: perldb-interest@vix.com
From: Brent Halliburton <brent@cortex.net>
Cc: Tim.Bunce@ig.co.uk

I am attempting to get DBI installed on my Sparc 20 running Solaris 2.4.
It is none to happy when it hits test 5 but it doesn't core dump until a
bit later, which makes the whole process a bit more interesting.

I would really like to get this working pronto, so a quick diagnosis would
be much appreciated.

Brent Halliburton
brent@cortex.net



> make test TEST_VERBOSE=1
gcc -c  -O -fpic -I/usr/local/lib/perl5/sun4-solaris/CORE -Wall -pedantic -Wno-c
omment -Wpointer-arith -Wcast-align -Wconversion  DBI.c
DBI.c: In function `dbih_getcom':
DBI.c:220: warning: cast increases required alignment of target type
DBI.c:228: warning: cast increases required alignment of target type
DBI.c: In function `dbih_setup_handle':
DBI.c:306: warning: cast increases required alignment of target type
DBI.c:318: warning: value computed is not used
DBI.c:331: warning: value computed is not used
DBI.c:337: warning: value computed is not used
DBI.c:338: warning: value computed is not used
DBI.c:339: warning: value computed is not used
DBI.c: In function `dbih_sth_bind_col':
DBI.c:518: warning: value computed is not used
DBI.c: In function `dbih_set_attr':
DBI.c:569: warning: value computed is not used
DBI.c: In function `dbih_get_attr':
DBI.c:604: warning: value computed is not used
DBI.c: In function `XS_DBD_____st_fetchrow':
DBI.c:1330: warning: cast increases required alignment of target type
DBI.c:1330: warning: cast increases required alignment of target type
DBI.c:1334: warning: cast increases required alignment of target type
DBI.c: In function `XS_DBD_____st_fetch':
DBI.c:1367: warning: cast increases required alignment of target type
DBI.c: In function `XS_DBD___mem__common_DESTROY':
DBI.c:1457: warning: cast increases required alignment of target type
Running mkbootstrap for DBI ()
ld -o /import/dino/home/brent/dbi/DBI/blib/auto/DBI/DBI.so -G DBI.o
cp DBI.bs /import/dino/home/brent/dbi/DBI/blib/auto/DBI/DBI.bs
cp DBIXS.h /import/dino/home/brent/dbi/DBI/blib/DBI/DBIXS.h
cp lib/DBD/ExampleP.pm /import/dino/home/brent/dbi/DBI/blib/DBD/ExampleP.pm
cp lib/DBD/NullP.pm /import/dino/home/brent/dbi/DBI/blib/DBD/NullP.pm
cp DBI.pm /import/dino/home/brent/dbi/DBI/blib/DBI.pm
/usr/local/bin/perl -I/import/dino/home/brent/dbi/DBI/blib -I/import/dino/home/b
rent/dbi/DBI/blib -I/usr/local/lib/perl5/sun4-solaris -I/usr/local/lib/perl5 -e
'use Test::Harness qw(&runtests $verbose); $verbose=1; runtests @ARGV;' t/*.t
t/min...............1..6
ok 1
ok 2
ok 3
ok 4
FAILED on test 5
Failed 1 test, 0.00% okay.
Files=1,  Tests=6,  5 secs ( 0.21 cusr  0.20 csys =  0.41 cpu)
/usr/local/bin/perl -I/import/dino/home/brent/dbi/DBI/blib -I/import/dino/home/b
rent/dbi/DBI/blib -I/usr/local/lib/perl5/sun4-solaris -I/usr/local/lib/perl5 tes
t.pl
test.pl
DBI test application $Revision: 1.12 $
*** Signal 11 - core dumped
make: Fatal error: Command failed for target `test'



==========================================
The stack trace on the generated core file:
(gdb) where
#0  0x49124 in pp_entersub ()
#1  0x1ccdc in perl_call_sv ()
#2  0x1c9b0 in perl_call_method ()
#3  0x40e90 in magic_methpack ()
#4  0x40efc in magic_getpack ()
#5  0x3fa7c in mg_get ()
#6  0x4b50c in sv_2pv ()
#7  0x450a0 in pp_concat ()
#8  0x44730 in run ()
#9  0x1c598 in perl_run ()
#10 0x1b4e8 in main ()
(gdb)


---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <24906-3@lion>;
          Fri, 15 Sep 1995 10:16:17 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 15 Sep 95 08:36:20 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa01085;
          15 Sep 95 9:36 +0100
Received: by gw.home.vix.com id AA15694; Thu, 14 Sep 95 19:07:38 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA15689; Thu, 14 Sep 95 19:07:35 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa23880;
          14 Sep 95 14:48 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa24332;
          14 Sep 95 14:46 +0100
Received: from ig.co.uk by lion id <03244-0@lion>;
          Thu, 14 Sep 1995 14:09:03 +0100
To: mhm@austin.ibm.com, roehrich@cray.com
Subject: Re: Building the %attribs for bind_param ?
Cc: perldb-interest@vix.com
Date: Thu, 14 Sep 1995 14:09:03 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509141446.aa24332@post.demon.co.uk>


> From: Dean Roehrich <roehrich@cray.com>
> 
> >|> %hash2_ref = { A,1, %$hash1_ref, B,2 };
> >|>                     # %hash2_ref is ref to a hash with 3 key/value pairs 
> >|> Does that help?
> >
> >I think so, but I'll need to sleep on it before I fully understand it.
> >
> >Mike
> 
> That last one should be:
> 
> $hash2_ref = { A,1, %$hash1_ref, B,2 };
>                        # $hash2_ref is ref to a hash with 3 key/value pairs
> 
Well spotted, thanks Dean.

> Dean
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <11330-7@lion>;
          Mon, 18 Sep 1995 07:21:17 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 15 Sep 95 20:08:47 GMT
Received: from relay-1.mail.demon.net by punt.demon.co.uk id aa12053;
          15 Sep 95 20:27 +0100
Received: from gw.home.vix.com by relay-1.mail.demon.net id aa21480;
          15 Sep 95 19:17 +0100
Received: by gw.home.vix.com id AA02471; Fri, 15 Sep 95 00:04:18 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA02466; Fri, 15 Sep 95 00:04:12 -0700
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id JAA14448;
          Fri, 15 Sep 1995 09:03:04 +0200
Date: Fri, 15 Sep 1995 09:03:04 +0200
Message-Id: <199509150703.JAA14448@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: aks@hub.ucsb.edu
Cc: PerlDB Interest List <perldb-interest@vix.com>
In-Reply-To: <199509130538.WAA10119@dokoka> (message from Alan Stebbens on Tue, 12 Sep 1995 22:38:45 -0700)
Subject: Re: Another bug..
Reply-To: andreas.koenig@mind.de

>>>>> "Alan" == Alan Stebbens <aks@dokoka.ucsb.edu> writes:

Alan, I think there are very few people on perdb-interest using
MsqlPerl. It's not completely off topic here, but better suited is
msqlperl@franz.ww.tu-berlin.de, IMO. BTW, sending to me and CC-ing
whoever you want is *much* better.

    Alan> In the code fragment below use Msql;

    Alan>     ...

    Alan>     defined($sdbh) or carp "\$sdbh not set!\n";
    Alan>     my(@databases) = ListDBs $sdbh;

    Alan> I'm getting the following error:

    Alan>     "Use of uninitialized value at dbs line 640."

    Alan> The error is occuring on the "ListDBs $sdbh" line.

Sorry, I can't reproduce that here, neither on IRIX 5.3 nor on NeXT
3.3. Try this program:

% perl -lwe '
use Msql;
my @foo = Msql->Connect()->ListDBs;
'

I'm using MsqlPerl 1.02, perl 5.001m and msql 1.0.8. And you?

    Alan> Is there a way I can determine where, exactly, the error is
    Alan> being generated?

Good question, I don't know.

    Alan> AdThanksVance.

andreas


---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <11330-44@lion>;
          Mon, 18 Sep 1995 07:28:21 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 16 Sep 95 01:14:43 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa25618;
          16 Sep 95 2:14 +0100
Received: by gw.home.vix.com id AA06958; Fri, 15 Sep 95 08:50:11 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA06940; Fri, 15 Sep 95 08:50:10 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id KAA43306;
          Fri, 15 Sep 1995 10:49:59 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for roehrich@cray.com at austin.ibm.com; id AA27474;
          Fri, 15 Sep 1995 10:49:57 -0500
From: mhm@austin.ibm.com
Message-Id: <9509151549.AA27474@dax.austin.ibm.com>
To: perldb-interest@vix.com
Cc: roehrich@cray.com
Subject: Another hash ref question...
Date: Fri, 15 Sep 95 10:49:56 -0500


Tim.Bunce@ig.co.uk suggested:

    $new_attrib = { %$existing_attrib, db2_type => $new_type };

So, I attempted

     $attrib_dec = { %$attrib_char, 'Stype' => SQL_DECIMAL } ;

which returns the perl error "Odd number of elements in hash list".
Additionally, I substituted "," for "=>", same error.  

I don't see why it doesn't work.  Have I found a perl bug? Or, more
likely just being stupid?

Thanks.
Mike


------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <11330-51@lion>;
          Mon, 18 Sep 1995 07:29:11 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 16 Sep 95 02:10:50 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa18286;
          16 Sep 95 3:09 +0100
Received: by gw.home.vix.com id AA01212; Fri, 15 Sep 95 14:09:02 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA01206; Fri, 15 Sep 95 14:08:59 -0700
Received: by lafcol.lafayette.edu (4.1/SMI-4.1) id AA12948;
          Fri, 15 Sep 95 17:07:17 EDT
Date: Fri, 15 Sep 1995 17:07:16 -0400 (EDT)
From: Andy Dougherty <doughera@lafcol.lafayette.edu>
Subject: Re: ld.so: _stderr undefined symbol?!
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com, krak@alta.com, perl5-porters@africa.nicoh.com
In-Reply-To: <9509151230.ae21515@post.demon.co.uk>
Message-Id: <Pine.3.89.9509151747.A12098-0100000@lafcol>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Fri, 15 Sep 1995, Tim Bunce wrote:

> > From: Damian Martinez <krak@alta.com>
> 
> > ld.so: Undefined symbol: _stderr
> 
> > Somone said my LD_LIBRARY_PATH might be wrong...here it is too:
> > basalt ~/perldb/DBI-0.63 % echo $LD_LIBRARY_PATH
> > /usr/local/lib:/usr/lib:/usr/X11R5/lib:/u/moc/lib:/usr/openwin/lib:/usr/X11R5/lib/X11/lib

Hmm.  I thought including /usr/lib in LD_LIBRARY_PATH was the usual 
culprit for this sort of thing.

    Andy Dougherty		doughera@lafcol.lafayette.edu
    Dept. of Physics
    Lafayette College, Easton PA 18042

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <11330-54@lion>;
          Mon, 18 Sep 1995 07:29:38 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 16 Sep 95 02:35:32 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa28590;
          16 Sep 95 3:35 +0100
Received: by gw.home.vix.com id AA24332; Fri, 15 Sep 95 12:41:58 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA24327; Fri, 15 Sep 95 12:41:56 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id OAA176928;
          Fri, 15 Sep 1995 14:41:55 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA02882;
          Fri, 15 Sep 1995 14:41:53 -0500
From: mhm@austin.ibm.com
Message-Id: <9509151941.AA02882@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: Adding sqlstate to DBI...how?
In-Reply-To: Your message of Fri, 15 Sep 95 12:25:35 +0100. <9509151230.af21515@post.demon.co.uk>
Date: Fri, 15 Sep 95 14:41:52 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> 
> > Subject: Adding sqlstate to DBI...how?
> >
> > Ok, I give up.  I haven't found the correct magically incantation to
> > add sqlstate in with err and errstate.  So, how do you do it?
> > 
> Do what? 
> 

make a variable called sqlstate coexist with err and errstate such that
sqlstate is available to the perl side, and the C side of things.  So
far I have not been able to get sqlstate defined such that it is know
to both sides without generating some form of either perl error or
C compiler error.

Mike
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <11330-56@lion>;
          Mon, 18 Sep 1995 07:29:57 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 16 Sep 95 02:41:38 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa01047;
          16 Sep 95 3:41 +0100
Received: by gw.home.vix.com id AA21558; Fri, 15 Sep 95 12:05:16 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA21551; Fri, 15 Sep 95 12:05:05 -0700
Received: by disperse.demon.co.uk id aa12269; 15 Sep 95 19:46 +0100
Received: from [158.152.1.72] by disperse.demon.co.uk id al01989;
          15 Sep 95 15:24 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ae21515;
          15 Sep 95 12:30 +0100
Received: from ig.co.uk by lion id <26271-0@lion>;
          Fri, 15 Sep 1995 12:21:14 +0100
To: perldb-interest@vix.com, krak@alta.com
Subject: Re: ld.so: _stderr undefined symbol?!
Cc: perl5-porters@nicoh.com
Date: Fri, 15 Sep 1995 12:21:14 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509151230.ae21515@post.demon.co.uk>


> From: Damian Martinez <krak@alta.com>
> 
> Hello to all,
> 
> I have a feeling this is more of a compiler type problem,
> but this is the only place I can think of to come, esp
> since I only see this when doing the DBI tests...
> 
I've CC'd this to perl5-porters since it includes perl build problems
which may be related.

> I recently sent a message detailing the fact that I couldn't
> get the DBI to compile on a Sun 4.1.3_U1 with gcc 2.5.8.
> Response seemed to point at my ancient compiler so I built
> and installed gcc 2.6.3 and libg and libg++ (whatever the latest
> versions were)...
> 
libg may well be the problem here.

> OK, so DBI-0.63 compiles allright (or seems to) but when i run the
> tests, ld.so complains about not finding the _stderr symbol (!?)
> D'oH! this sounds really bad and I'm no expert on anything to do
> with C or linking or whatever this might point to...Can anyone help?
> 
> Here's some info on the make/make test/Configure...
> 
> ____________________
> 
> basalt ~/perldb/DBI-0.63 % perl -e 'use Config; print Config::myconfig()'
> Summary of my perl5 (patchlevel 1) configuration:
>   Platform:
>     osname=sunos, osver=4.1.3_u1, archname=sun4-sunos
>     uname='sunos basalt 4.1.3_u1 4 sun4c '
>     hint=recommended
>   Compiler:
>     cc='gcc', optimize='-O'
>     cppflags='-DDEBUGGING'
>     ccflags ='-DDEBUGGING'
>     ldflags =''
>     stdchar='unsigned char', d_stdstdio=define, usevfork=true
>     voidflags=15, castflags=0, d_casti32=define, d_castneg=define
>     intsize=4, alignbytes=8, usemymalloc=y, randbits=31
>   Libraries:
>     so=so
>     libpth=/lib /usr/lib /usr/ucblib /usr/local/lib
>     libs=-ldbm -ldl -lm -lc -lposix
>     libc=/usr/lib/libc.so.1.9.1
>   Dynamic Linking:
>     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
>     cccdlflags='-fpic', ccdlflags=' ', lddlflags='-assert nodefinitions'

> gcc -c -DDEBUGGING -O -fpic -I/usr/local/lib/perl5/sun4-sunos/CORE -Wall -pedantic -Wno-comment -Wpointer-arith -Wcast-align -Wconversion  DBI.c
> In file included from /usr/local/include/netinet/in.h:23,
>                  from /usr/local/lib/perl5/sun4-sunos/CORE/perl.h:205,
>                  from DBIXS.h:13,
>                  from DBI.c:19:
> /usr/local/include/sys/socket.h:41: warning: comma at end of enumerator list
> [...more similar errors...]

> ld.so: Undefined symbol: _stderr

> Somone said my LD_LIBRARY_PATH might be wrong...here it is too:
> basalt ~/perldb/DBI-0.63 % echo $LD_LIBRARY_PATH
> /usr/local/lib:/usr/lib:/usr/X11R5/lib:/u/moc/lib:/usr/openwin/lib:/usr/X11R5/lib/X11/lib
> 

> When I tried to rebuild the perl dist with the newer gcc, it died on this:
> basalt /src/packages/perl5.001m % make
> ...
> `sh  cflags libperl.a pp_sys.o`  pp_sys.c
>           CCCMD =  gcc -c -DDEBUGGING -O   
> pp_sys.c: In function `pp_sysread':
> pp_sys.c:954: warning: passing arg 6 of `recvfrom' from incompatible pointer type
> pp_sys.c: In function `pp_gpwent':
> pp_sys.c:3620: structure has no member named `pw_age'
> pp_sys.c:3629: structure has no member named `pw_comment'
> [...more similar errors...]

My guess is that libg is causing your problems. Libg offers little on
suns and is probably best avoided. I don't know how difficult it is to
stop gcc trying to use it.

You should get perl built and installed cleanly using the new compiler
before trying to build extensions with it. It's probable that an
extension built using libg is not compatible with a perl built using libc.

Don't forget to re-Configure (probably best to delete config.sh and
just do a Configure -des).

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <11330-58@lion>;
          Mon, 18 Sep 1995 07:30:26 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 16 Sep 95 02:59:46 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa07529;
          16 Sep 95 3:59 +0100
Received: by gw.home.vix.com id AA20878; Fri, 15 Sep 95 11:56:57 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA20867; Fri, 15 Sep 95 11:56:55 -0700
Received: by disperse.demon.co.uk id ab12186; 15 Sep 95 19:44 +0100
Received: from [158.152.1.72] by disperse.demon.co.uk id av01328;
          15 Sep 95 15:24 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id af21515;
          15 Sep 95 12:30 +0100
Received: from ig.co.uk by lion id <26306-0@lion>;
          Fri, 15 Sep 1995 12:25:35 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: Adding sqlstate to DBI...how?
Date: Fri, 15 Sep 1995 12:25:35 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509151230.af21515@post.demon.co.uk>


> Subject: Adding sqlstate to DBI...how?
>
> Ok, I give up.  I haven't found the correct magically incantation to
> add sqlstate in with err and errstate.  So, how do you do it?
> 
Do what? 

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <11330-66@lion>;
          Mon, 18 Sep 1995 07:32:16 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 16 Sep 95 07:34:09 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa10929;
          16 Sep 95 8:33 +0100
Received: by gw.home.vix.com id AA26087; Fri, 15 Sep 95 21:08:24 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA26082; Fri, 15 Sep 95 21:08:22 -0700
Received: by disperse.demon.co.uk id ak11891; 15 Sep 95 19:44 +0100
Received: from [158.152.1.72] by disperse.demon.co.uk id ak01918;
          15 Sep 95 15:24 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ac21515;
          15 Sep 95 12:30 +0100
Received: from ig.co.uk by lion id <26084-0@lion>;
          Fri, 15 Sep 1995 11:55:28 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: Error Handling.....
Date: Fri, 15 Sep 1995 11:55:28 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509151230.ac21515@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Ok, I finally made it to the point where I have to rework dbd_st_fetch 
> and as I worked my way through I encountered all the places where
> DBD::Oracle is checking for specific return codes.  The question is
> are they Oracle return codes or are they sql_state codes?
> 
They are Oracle specific.

> For portability across databases, I would like to see it be the
> standardized SQLSTATE codes.

So would I.

> But more of an impact on me is that DB2
> only has 7 cli return codes, all of the diagnostic info is returned
> in the SQLSTATE codes.
> 
> Any chance that DBDs could go to SQLSTATEs as we move to incorporating
> more of the CLI spec?
>
Yes, but it's not easy. Oracle has an entire book listing thousands of
error code and what they mean. It's unrealistic to map all of those
into SQLSTATE code. Some compromise will have to be worked out.

The *entire* error handling scheme in the DBI is incompletely designed.
It'll change to align with the CLI spec.

> Mike
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <11330-68@lion>;
          Mon, 18 Sep 1995 07:32:32 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 16 Sep 95 08:35:37 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa07103;
          16 Sep 95 9:35 +0100
Received: by gw.home.vix.com id AA26112; Fri, 15 Sep 95 21:08:56 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA26096; Fri, 15 Sep 95 21:08:47 -0700
Received: by disperse.demon.co.uk id ad12057; 15 Sep 95 19:45 +0100
Received: from [158.152.1.72] by disperse.demon.co.uk id at01437;
          15 Sep 95 15:24 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa21515;
          15 Sep 95 12:30 +0100
Received: from ig.co.uk by lion id <25717-0@lion>;
          Fri, 15 Sep 1995 11:30:30 +0100
To: perldb-interest@vix.com, msql-list@bond.edu.au, aks@hub.ucsb.edu
Subject: Re: DBI connection management
Date: Fri, 15 Sep 1995 11:30:30 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509151230.aa21515@post.demon.co.uk>


> From: Alan Stebbens <aks@dokoka.ucsb.edu>
> 
> Am I clueless, or is there no way to discover what databases exist
> for a given engine using DBI?
> 
Not yet.

SQL CLI defines DataSources() so DBI will also define that at some point.

Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <20799-0@lion>;
          Mon, 18 Sep 1995 21:08:57 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 18 Sep 95 19:42:25 GMT
Received: from gw.home.vix.com by punt2.demon.co.uk id aa28319;
          18 Sep 95 20:41 +0100
Received: by gw.home.vix.com id AA16559; Mon, 18 Sep 95 05:21:45 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA16554; Mon, 18 Sep 95 05:21:43 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id HAA115123;
          Mon, 18 Sep 1995 07:21:42 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA27070;
          Mon, 18 Sep 1995 07:21:37 -0500
From: mhm@austin.ibm.com
Message-Id: <9509181221.AA27070@dax.austin.ibm.com>
To: perldb-interest@vix.com, roehrich@cray.com
Subject: Re: Another hash ref question...
In-Reply-To: Your message of Mon, 18 Sep 95 12:21:16 +0100. <9509181237.ae05163@post.demon.co.uk>
Date: Mon, 18 Sep 95 07:21:37 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> 
> > From: mhm@austin.ibm.com
> > 
> > Tim.Bunce@ig.co.uk suggested:
> > 
> >     $new_attrib = { %$existing_attrib, db2_type => $new_type };
> > 
> > So, I attempted
> > 
> >      $attrib_dec = { %$attrib_char, 'Stype' => SQL_DECIMAL } ;
> > 
> > which returns the perl error "Odd number of elements in hash list".
> > Additionally, I substituted "," for "=>", same error.  
> > 
> > I don't see why it doesn't work.  Have I found a perl bug? Or, more
> > likely just being stupid?
> > 
> Run the code with perl -w, it'll probably say 'Use of uninitialized
> value'.
> (The number of times I've been tempted to make 'use DBI' set $^W=1 ...)

I am running with perl -w and I DON'T get the 'Use of uninitialized
value' message.  So perl atleast beleives it it initialized.

> The "Odd number of elements in hash list" is a bug in perl related to
> the expansion of @$ref and %$ref where $ref is undefined. I think it's
> been reported but I couldn't see it in a quick scan of the bug list so
> I've CC'd this to perlbug@perl.com.
> 
> Your next problem is why $attrib_char is undefined ...

It appears that it is uninitialized because it is imported from a
module.  If I move the defininition into the current script everything
works as expected, but if I do it in a seperate module which is loaded
by my script it is not recognized as a hash ref.

Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <21761-9@lion>;
          Mon, 18 Sep 1995 23:32:05 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 18 Sep 95 21:12:48 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa29087;
          18 Sep 95 22:12 +0100
Received: by gw.home.vix.com id AA13958; Mon, 18 Sep 95 04:49:02 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA13949; Mon, 18 Sep 95 04:49:00 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa09849;
          18 Sep 95 12:40 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ae05163;
          18 Sep 95 12:37 +0100
Received: from ig.co.uk by lion id <16736-0@lion>;
          Mon, 18 Sep 1995 12:21:16 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: Another hash ref question...
Cc: roehrich@cray.com, perlbug@perl.com
Date: Mon, 18 Sep 1995 12:21:16 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509181237.ae05163@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Tim.Bunce@ig.co.uk suggested:
> 
>     $new_attrib = { %$existing_attrib, db2_type => $new_type };
> 
> So, I attempted
> 
>      $attrib_dec = { %$attrib_char, 'Stype' => SQL_DECIMAL } ;
> 
> which returns the perl error "Odd number of elements in hash list".
> Additionally, I substituted "," for "=>", same error.  
> 
> I don't see why it doesn't work.  Have I found a perl bug? Or, more
> likely just being stupid?
> 
Run the code with perl -w, it'll probably say 'Use of uninitialized value'.
(The number of times I've been tempted to make 'use DBI' set $^W=1 ...)

The "Odd number of elements in hash list" is a bug in perl related to
the expansion of @$ref and %$ref where $ref is undefined. I think it's
been reported but I couldn't see it in a quick scan of the bug list so
I've CC'd this to perlbug@perl.com.

Your next problem is why $attrib_char is undefined ...

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <22284-0@lion>;
          Mon, 18 Sep 1995 23:36:08 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 18 Sep 95 22:34:42 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa09207;
          18 Sep 95 23:34 +0100
Received: by gw.home.vix.com id AA05702; Mon, 18 Sep 95 10:33:28 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA05697; Mon, 18 Sep 95 10:33:26 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa09663;
          18 Sep 95 17:39 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa18848;
          18 Sep 95 17:37 +0100
Received: from ig.co.uk by lion id <19350-0@lion>;
          Mon, 18 Sep 1995 17:39:27 +0100
To: lwall@scalpel.netlabs.com, mhm@austin.ibm.com
Subject: Re: Another hash ref question...
Cc: perldb-interest@vix.com
Date: Mon, 18 Sep 1995 17:39:27 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509181737.aa18848@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> 
> Larry Wall <lwall@scalpel.netlabs.com>  writes:
> > I fixed this one back in May.
> > 
> >     NETaa14160: @$undef should produce null list in list context
> 
> Not exactly the same problem.  My problem is that the hash ref is 
> defined and exported from a module that is being used by the current
> script.  
> 
Well you actually have two problems. Larry's given you the fix
for the second.

> use Some_package qw( $hash_ref );
> 
>      $attrib_dec = { %$hash_ref, 'Stype' => SQL_DECIMAL } ;
> 
> fails.   The question/problem is why is the hash_ref undefined when 
> it has been defined in Some_package and exported with EXPORT_OK ?
>
Your code:

    package DBD::DB2;
    require DBI;
    require DynaLoader;
    @ISA = qw(DynaLoader);
    @EXPORT_OK = qw($attrib_int );

you should have said:

    @ISA = qw(Exporter DynaLoader);

> Mike
> mhm@austin.ibm.com
> 
Tim. 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <24244-4@lion>;
          Tue, 19 Sep 1995 07:21:04 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 18 Sep 95 23:29:16 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id ad05407;
          19 Sep 95 0:28 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <21708-0@frigate.doc.ic.ac.uk>; Mon, 18 Sep 1995 23:12:53 +0100
Received: by gw.home.vix.com id AA23776; Mon, 18 Sep 95 07:26:46 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA23770; Mon, 18 Sep 95 07:26:42 -0700
Received: from WMX.WMDATA.SE (wmx.wmdata.se [164.9.179.100]) 
          by linda.fdata.se (8.6.12/8.6.9) with SMTP id QAA12661 
          for <perldb-interest@vix.com>; Mon, 18 Sep 1995 16:23:16 +0200
X400-Received: by /PRMD=WMDATAWMX/ADMD=WMDATA/C=SE/; Relayed;
               Mon, 18 Sep 1995 16:13:24 +0100
Date: Mon, 18 Sep 1995 16:13:24 +0100
X400-Originator: Johan.Widingsjo@STO4.wmdata.se
X400-Recipients: perldb-interest@vix.com
X400-Mts-Identifier: [/PRMD=WMDATA/ADMD=WMDATA/C=SE/;0012400001541748000002]
X400-Content-Type: P2-1988 (22)
Content-Identifier: CSI NC V3.0
From: "Widingsjo, Johan" <Johan.Widingsjo@sto4.wmdata.se>
Message-Id: <0004BC61.MAI*/S=WMJOWID/OU=STO4/OU=WMDATA/O=MSMAIL/PRMD=WMDATA/ADMD=WMDATA/C=SE/@MHS>
To: 'PerlDB-Interest' <perldb-interest@vix.com>
Subject: Select from Oracle


Hello,

I'm very new to this and have only a little experience of perl prior to
this, (no oop in perl, only c++, smalltalk and simula).
It seems to me when reading the dbispec v0.6 that things have
changed around quite a bit. So I'm wondering if there's any
examples or helpfiles. Or if someone could take a quick
look at my test code and see what I'm doing wrong.

I'm connecting to an Oracle 7.1.6 database from
a solaris 2.4 system.

The execute statement returns 1 and the fetch I don't know what it does   
:-)
The array comes out empty even tho I have a couple of records in the   
table
and the do function can insert more records.

Any help would be appreciated

/Johan

#!/usr/local/bin/perl -w

use DBI;
use DBD::Oracle;

$dbh = DBI->connect( "xxxx", "xxxx", "xxxx", "Oracle");

print "Databas: $dbh\n";

# This line actually inserts a record in the database
# So it seems to be connecting ok
$status = $dbh->do("insert into test (ID, TEXT) values (2,'insert from   
perl') ");

$st=$dbh->prepare("select * from test");
print "ST: $st\n";

$rc=$st->execute();
print "Execute returns: $rc\n";

@datat = $st->fetch();
print "#: $#datat\n";
print "Data: @datat\n";

$st->finish();

$dbh->disconnect();







---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <24244-7@lion>;
          Tue, 19 Sep 1995 07:21:20 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 18 Sep 95 23:29:21 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id ae05407;
          19 Sep 95 0:28 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <21804-0@frigate.doc.ic.ac.uk>; Mon, 18 Sep 1995 23:16:49 +0100
Received: by gw.home.vix.com id AA13926; Mon, 18 Sep 95 04:46:38 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA13920; Mon, 18 Sep 95 04:46:36 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa09851;
          18 Sep 95 12:40 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id af05163;
          18 Sep 95 12:37 +0100
Received: from ig.co.uk by lion id <16821-0@lion>;
          Mon, 18 Sep 1995 12:36:30 +0100
To: mhm@austin.ibm.com
Subject: Re: Adding sqlstate to DBI...how?
Cc: perldb-interest@vix.com, roehrich@cray.com
Date: Mon, 18 Sep 1995 12:36:30 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509181237.af05163@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> > 
> > > Subject: Adding sqlstate to DBI...how?
> > >
> > > Ok, I give up.  I haven't found the correct magically incantation to
> > > add sqlstate in with err and errstate.  So, how do you do it?
> > > 
> > Do what? 
> > 
> 
> make a variable called sqlstate coexist with err and errstate such that
> sqlstate is available to the perl side, and the C side of things.  So
> far I have not been able to get sqlstate defined such that it is know
> to both sides without generating some form of either perl error or
> C compiler error.
> 
Take a look at how the DBI implements DBI::err and especially DBI::errstr
(lines 35 thru 40 in DBI.pm and DBI::var::FETCH in DBI.xs).

The DBI has a special mechanism for this since the big problem is how to
relate the variable to the correct driver. The methods suggested by Dean
are great for normal situations but not appropriate for the DBI.

To cut a long story short here's what you need to do to implement
$DBI::sqlstate:

tie $DBI::sqlstate, 'DBI::var', '&sqlstate';  # call &sqlstate in last used pkg

and then write an sqlstate method for your DBD::DB2::db and DBD::DB2::st classes.

> Mike
>
Tim. 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <24244-47@lion>;
          Tue, 19 Sep 1995 07:26:56 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 19 Sep 95 01:52:08 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa03652;
          19 Sep 95 2:51 +0100
Received: by gw.home.vix.com id AA07474; Mon, 18 Sep 95 11:01:29 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA07468; Mon, 18 Sep 95 11:01:27 -0700
Received: from rijken.inter.NL.net by altrade.nijmegen.inter.nl.net 
          via root@ah99-11.Arnhem.NL.net [193.79.228.236] with ESMTP 
          id TAA22333 (8.6.10/1.5); Mon, 18 Sep 1995 19:58:55 +0200
Received: (from mrijken@localhost) by rijken.inter.NL.net (8.6.11/8.6.11) 
          id TAA00164; Mon, 18 Sep 1995 19:52:56 +0200
Date: Mon, 18 Sep 1995 19:52:55 +0200 (MET DST)
From: Marti Rijken <mrijken@solair1.inter.nl.net>
To: perldb-interest@vix.com
Cc: descarte@mcqueen.com
Subject: DBD-mSQL-0.60pl2 test failed
Message-Id: <Pine.LNX.3.91.950918175901.62A-100000@rijken.inter.NL.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I picked up DBD-mSQL-0.60pl2 and DBI-0.63 from 
ftp.mcqueen.com/pub/languages/perl5/DBPerl/ and I'm trying to get them
running with perl5.001m on linux-1.2.13.  Perl was installed successfully,
failing only on the test related to a known bash bug.  DBI compiled and
tested OK, and was subsequently installed.  But DBD-mSQL is giving me
trouble.  At first some compiler warnings:

  mSQL.c: In function `XS_DBD__mSQL__db_FETCH':
  mSQL.c:159: warning: initialization makes pointer from integer without a cast
  mSQL.c: In function `XS_DBD__mSQL__st_readblob':
  mSQL.c:476: warning: assignment makes pointer from integer without a cast
  mSQL.c: In function `XS_DBD__mSQL__st_FETCH':
  mSQL.c:517: warning: initialization makes pointer from integer without a cast

After I applied Andreas Koenig's patch from 5 september to mSQL.xs these
warnings were gone and compilation completed sucsessfully.  The test
however failed in the very beginning:

 Can't locate Msql.pm in @INC at t/msql.t line 6.
 BEGIN failed--compilation aborted at t/msql.t line 6

That's where it writes `use Msql'.  Msql..??  I found a file Msql.pm in
the MsqlPerl-1.02 package, but not in DBD-mSQL.  I tried changing it to
`use mSQL', but this didn't get me much further:

  Undefined symbols present after loading ./blib/auto/DBD/mSQL/mSQL.o:
    DBIc_ENDING dbd_st_readblob
  at mSQL.pm line 18

Anyone has an idea if I'm doing something wrong?  I appended a complete
typescript of compilation and test at the and of this message.

BTW.  My ultimate goal is writing scripts that with only minor
modifications will work with both DBD-mSQL (at home) and DBD-Oracle (at
work). I hope this is the right assumption? (I know it's still Alpha).
I have some working oraperl scripts that I hope will continue to work
with the oraperl emulation of DBD-Oracle.  Will this oraperl emulation
work with DBD-mSLQ after some modification? Anyone tried?

Thanks for your help,

Marti

___ Marti Rijken ____ mrijken@inter.nl.net ____ Arnhem, Netherlands ___
_______  Province of Gelderland, nature conservation department  ______


typescript:

Script started on Sun Sep 17 21:39:38 1995
# perl Makefile.PS

Configuring DBD::mSQL version 0.60pl1...
Remember to actually read the README file!

$MSQL_HOME not defined. Searching for mSQL...
Using mSQL in /usr/local/Minerva
mSQL sysliblist: -L/usr/local/Minerva/lib -lmsql -lm
System: perl5.001 linux rijken 1.2.13 #2 sat aug 19 12:07:17 met dst 1995 i486  i486-linux dl_dld.xs
Compiler: cc -O2 -D__USE_BSD_SIGNAL -Dbool=char -DHAS_BOOL

Writing Makefile for DBD::mSQL

# make
mkdir ./blib
mkdir ./blib/DBD
mkdir ./blib/auto
mkdir ./blib/auto/DBD
mkdir ./blib/auto/DBD/mSQL
cc -c -D__USE_BSD_SIGNAL -Dbool=char -DHAS_BOOL -O2  -I/usr/local/lib/perl5/i486-linux/CORE  -I/usr/local/Minerva/include -I/usr/local/lib/perl5/i486-linux/DBI dbdimp.c
/usr/bin/perl -I/usr/local/lib/perl5/i486-linux -I/usr/local/lib/perl5 /usr/local/lib/perl5/ExtUtils/xsubpp -typemap /usr/local/lib/perl5/ExtUtils/typemap mSQL.xs >mSQL.tc && mv mSQL.tc mSQL.c
cc -c -D__USE_BSD_SIGNAL -Dbool=char -DHAS_BOOL -O2  -I/usr/local/lib/perl5/i486-linux/CORE  -I/usr/local/Minerva/include -I/usr/local/lib/perl5/i486-linux/DBI mSQL.c
Running Mkbootstrap for DBD::mSQL (/usr/local/Minerva/lib/libmsql.a /usr/lib/libm.sa)
Writing mSQL.bs
chmod 644 mSQL.bs
LD_RUN_PATH="/usr/local/Minerva/lib" ld -o blib/auto/DBD/mSQL/mSQL.o -r  dbdimp.o mSQL.o -L/lib -L/usr/local/Minerva/lib  -L/usr/local/Minerva/lib
chmod 755 blib/auto/DBD/mSQL/mSQL.o
cp mSQL.bs ./blib/auto/DBD/mSQL/mSQL.bs
chmod 644 blib/auto/DBD/mSQL/mSQL.bs
cp mSQL.pm blib/DBD/mSQL.pm
chmod 644 blib/DBD/mSQL.pm
cp test2.pl blib/DBD/test2.pl
chmod 644 blib/DBD/test2.pl

# make test
/usr/bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/i486-linux -I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/msql..............Can't locate Msql.pm in @INC at t/msql.t line 6.
BEGIN failed--compilation aborted at t/msql.t line 6.
FAILED on test 0
Failed 1 test, 0.00% okay.
Files=0,  Tests=0,  0 secs ( 0.02 cusr  0.06 csys =  0.08 cpu)


Script started on Sun Sep 17 21:42:11 1995
# make test
/usr/bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/i486-linux -I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/msql..............Undefined symbols present after loading ./blib/auto/DBD/mSQL/mSQL.o: DBIc_ENDING dbd_st_readblob
 at mSQL.pm line 18
FAILED on test 0
Failed 1 test, 0.00% okay.
Files=0,  Tests=0,  2 secs ( 1.26 cusr  0.27 csys =  1.53 cpu)

# perl -e 'use Config; print Config::myconfig()'
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=linux, osver=1, archname=i486-linux
    uname='linux rijken 1.2.13 #2 sat aug 19 12:07:17 met dst 1995 i486'
    hint=recommended
  Compiler:
    cc='cc', optimize='-O2'
    cppflags='-D__USE_BSD_SIGNAL -Dbool=char -DHAS_BOOL'
    ccflags ='-D__USE_BSD_SIGNAL -Dbool=char -DHAS_BOOL'
    ldflags =''
    stdchar='char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=0, d_casti32=, d_castneg=define
    intsize=4, alignbytes=4, usemymalloc=n, randbits=31
  Libraries:
    so=sa
    libpth=/lib /usr/lib /usr/local/lib
    libs=-lgdbm -ldbm -ldb -ldld -lm -lc -lbsd
    libc=/usr/lib/libc.sa
  Dynamic Linking:
    dlsrc=dl_dld.xs, dlext=o, d_dlsymun=
    cccdlflags=' ', ccdlflags=' ', lddlflags='-r '
 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <24244-63@lion>;
          Tue, 19 Sep 1995 07:28:38 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 19 Sep 95 02:26:08 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa16275;
          19 Sep 95 3:25 +0100
Received: by gw.home.vix.com id AA01024; Mon, 18 Sep 95 09:22:06 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA01019; Mon, 18 Sep 95 09:22:04 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id LAA111883;
          Mon, 18 Sep 1995 11:21:06 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for Tim.Bunce@ig.co.uk at austin.ibm.com; id AA27286;
          Mon, 18 Sep 1995 11:20:52 -0500
From: mhm@austin.ibm.com
Message-Id: <9509181620.AA27286@dax.austin.ibm.com>
To: Larry Wall <lwall@scalpel.netlabs.com>
Cc: Tim Bunce <Tim.Bunce@ig.co.uk>, perldb-interest@vix.com, mhm@austin.ibm.com, 
    roehrich@cray.com, perlbug@perl.com
Subject: Re: Another hash ref question...
In-Reply-To: Your message of Mon, 18 Sep 95 08:56:30 -0700. <9509181556.AA28166@scalpel.netlabs.com>
Date: Mon, 18 Sep 95 11:20:51 -0500


Larry Wall <lwall@scalpel.netlabs.com>  writes:
> I fixed this one back in May.
> 
>     NETaa14160: @$undef should produce null list in list context
> 
> The resolution was
> 
>     It didn't check for list context before returning undef.
> 
> Here's the "unofficial" patch:
> 
> *** pp_hot.c@@/main/25	Sat May 27 22:42:22 1995
> --- pp_hot.c	Sun May 28 21:32:04 1995
> ***************
> *** 360,365 ****
> --- 360,367 ----
>   		    if (op->op_flags & OPf_REF ||
>   		      op->op_private & HINT_STRICT_REFS)
>   			DIE(no_usym, "an ARRAY");
> + 		    if (GIMME == G_ARRAY)
> + 			RETURN;
>   		    RETPUSHUNDEF;
>   		}
>   		sym = SvPV(sv,na);
> ***************
> *** 431,436 ****
> --- 433,442 ----
>   		    if (op->op_flags & OPf_REF ||
>   		      op->op_private & HINT_STRICT_REFS)
>   			DIE(no_usym, "a HASH");
> + 		    if (GIMME == G_ARRAY) {
> + 			SP--;
> + 			RETURN;
> + 		    }
>   		    RETSETUNDEF;
>   		}
>   		sym = SvPV(sv,na);
> 


Not exactly the same problem.  My problem is that the hash ref is 
defined and exported from a module that is being used by the current
script.  


use Some_package qw( $hash_ref );


     $attrib_dec = { %$hash_ref, 'Stype' => SQL_DECIMAL } ;

fails.   The question/problem is why is the hash_ref undefined when 
it has been defined in Some_package and exported with EXPORT_OK ?

Mike
mhm@austin.ibm.com


---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <24244-65@lion>;
          Tue, 19 Sep 1995 07:28:51 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 19 Sep 95 02:28:43 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa17337;
          19 Sep 95 3:28 +0100
Received: by gw.home.vix.com id AA13665; Mon, 18 Sep 95 12:23:08 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA13660; Mon, 18 Sep 95 12:23:07 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id OAA154240;
          Mon, 18 Sep 1995 14:23:05 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for lwall@scalpel.netlabs.com at austin.ibm.com; id AA03818;
          Mon, 18 Sep 1995 14:23:04 -0500
From: mhm@austin.ibm.com
Message-Id: <9509181923.AA03818@dax.austin.ibm.com>
To: perldb-interest@vix.com
Cc: lwall@scalpel.netlabs.com
Subject: Re: Another hash ref question...
In-Reply-To: Your message of Mon, 18 Sep 95 17:39:27 +0100. <9509181737.aa18848@post.demon.co.uk>
Date: Mon, 18 Sep 95 14:23:04 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:

|> Your code:
|> 
|>     package DBD::DB2;
|>     require DBI;
|>     require DynaLoader;
|>     @ISA = qw(DynaLoader);
|>     @EXPORT_OK = qw($attrib_int );
|> 
|> you should have said:
|> 
|>     @ISA = qw(Exporter DynaLoader);


Well, I did ask if it was a bug or something stupid on my
part :-)

Thanks.
Mike
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <24244-67@lion>;
          Tue, 19 Sep 1995 07:29:03 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 19 Sep 95 02:34:11 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa19178;
          19 Sep 95 3:33 +0100
Received: by gw.home.vix.com id AA04527; Mon, 18 Sep 95 10:15:09 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA04522; Mon, 18 Sep 95 10:15:08 -0700
Received: from dokoka (dokoka.ucsb.edu) by hub.ucsb.edu;
          id AA03491 sendmail 4.1/UCSB-2.1-sun Mon, 18 Sep 95 10:15:05 PDT 
          for perldb-interest@vix.com
Received: from dokoka.ucsb.edu by dokoka 
          via ESMTP (940816.SGI.8.6.9/940406.SGIv2) id KAA20127;
          Mon, 18 Sep 1995 10:15:03 -0700
Message-Id: <199509181715.KAA20127@dokoka>
To: andreas.koenig@mind.de
Cc: PerlDB Interest List <perldb-interest@vix.com>
Subject: Re: Another bug..
Reply-To: "Alan K. Stebbens" <aks@hub.ucsb.edu>
In-Reply-To: Your message of Fri, 15 Sep 1995 09:03:04 PDT. <199509150703.JAA14448@anna.mind.de>
Date: Mon, 18 Sep 1995 10:14:54 -0700
From: Alan Stebbens <aks@dokoka.ucsb.edu>

> I'm using MsqlPerl 1.02, perl 5.001m and msql 1.0.8. And you?

Ok.  Where is MsqlPerl 1.02?  As you noticed before, I've got a much
older version.

I do have perl5.001m, and msql-1.0.8.

>     Alan> Is there a way I can determine where, exactly, the error is
>     Alan> being generated?
> 
> Good question, I don't know.

Too bad.
Thanks for the pointers.

Alan
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <24244-69@lion>;
          Tue, 19 Sep 1995 07:29:15 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 19 Sep 95 02:41:52 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa21234;
          19 Sep 95 3:40 +0100
Received: by gw.home.vix.com id AA29302; Mon, 18 Sep 95 08:58:44 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA29297; Mon, 18 Sep 95 08:58:43 -0700
Received: by proxy.netlabs.com (4.1/SMI-4.1) id AA08137;
          Mon, 18 Sep 95 09:00:38 PDT
Received: from vaccine-bb.netlabs.com(192.190.199.1) by proxy.netlabs.com 
          via smap (V1.3) id sma008135; Mon Sep 18 09:00:23 1995
Received: from scalpel.netlabs.com by netlabs.com (4.1/SMI-4.1) id AA01786;
          Mon, 18 Sep 95 08:57:20 PDT
Received: from localhost.netlabs.com by scalpel.netlabs.com (4.1/SMI-4.1) 
          id AA28166; Mon, 18 Sep 95 08:56:30 PDT
Message-Id: <9509181556.AA28166@scalpel.netlabs.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com, mhm@austin.ibm.com, roehrich@cray.com, 
    perlbug@perl.com
Subject: Re: Another hash ref question...
In-Reply-To: Your message of "Mon, 18 Sep 95 12:21:16 BST." <9509181237.ae05163@post.demon.co.uk>
Date: Mon, 18 Sep 95 08:56:30 -0700
From: Larry Wall <lwall@scalpel.netlabs.com>

: > From: mhm@austin.ibm.com
: > 
: > Tim.Bunce@ig.co.uk suggested:
: > 
: >     $new_attrib = { %$existing_attrib, db2_type => $new_type };
: > 
: > So, I attempted
: > 
: >      $attrib_dec = { %$attrib_char, 'Stype' => SQL_DECIMAL } ;
: > 
: > which returns the perl error "Odd number of elements in hash list".
: > Additionally, I substituted "," for "=>", same error.  
: > 
: > I don't see why it doesn't work.  Have I found a perl bug? Or, more
: > likely just being stupid?
: > 
: Run the code with perl -w, it'll probably say 'Use of uninitialized value'.
: (The number of times I've been tempted to make 'use DBI' set $^W=1 ...)
: 
: The "Odd number of elements in hash list" is a bug in perl related to
: the expansion of @$ref and %$ref where $ref is undefined. I think it's
: been reported but I couldn't see it in a quick scan of the bug list so
: I've CC'd this to perlbug@perl.com.

I fixed this one back in May.

    NETaa14160: @$undef should produce null list in list context

The resolution was

    It didn't check for list context before returning undef.

Here's the "unofficial" patch:

*** pp_hot.c@@/main/25	Sat May 27 22:42:22 1995
--- pp_hot.c	Sun May 28 21:32:04 1995
***************
*** 360,365 ****
--- 360,367 ----
  		    if (op->op_flags & OPf_REF ||
  		      op->op_private & HINT_STRICT_REFS)
  			DIE(no_usym, "an ARRAY");
+ 		    if (GIMME == G_ARRAY)
+ 			RETURN;
  		    RETPUSHUNDEF;
  		}
  		sym = SvPV(sv,na);
***************
*** 431,436 ****
--- 433,442 ----
  		    if (op->op_flags & OPf_REF ||
  		      op->op_private & HINT_STRICT_REFS)
  			DIE(no_usym, "a HASH");
+ 		    if (GIMME == G_ARRAY) {
+ 			SP--;
+ 			RETURN;
+ 		    }
  		    RETSETUNDEF;
  		}
  		sym = SvPV(sv,na);

Larry
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <24244-95@lion>;
          Tue, 19 Sep 1995 07:32:04 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 19 Sep 95 04:36:37 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa29073;
          19 Sep 95 5:35 +0100
Received: by gw.home.vix.com id AA06379; Mon, 18 Sep 95 10:44:48 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA06371; Mon, 18 Sep 95 10:44:41 -0700
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id TAA23985;
          Mon, 18 Sep 1995 19:43:39 +0200
Date: Mon, 18 Sep 1995 19:43:39 +0200
Message-Id: <199509181743.TAA23985@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: aks@hub.ucsb.edu
Cc: Tim Bunce <Tim.Bunce@ig.co.uk>, perldb-interest@vix.com
In-Reply-To: <199509181715.KAA20127@dokoka> (message from Alan Stebbens on Mon, 18 Sep 1995 10:14:54 -0700)
Subject: Re: Another bug..
Reply-To: andreas.koenig@mind.de


    >> I'm using MsqlPerl 1.02, perl 5.001m and msql 1.0.8. And you?
    Alan> Ok.  Where is MsqlPerl 1.02?  As you noticed before, I've
    Alan> got a much older version.

Check the directory ANDK in one of these places

       ftp://ftp.funet.fi/pub/languages/perl/CPAN/mod/pml/byauthor/
       ftp://ftp.pasteur.fr/pub/Perl/CPAN/pml/byauthor/
       ftp://ftp.cs.ruu.nl/pub/PERL/perl5.0/CPAN/pml/byauthor/
       ftp://janus.sedl.org/pub/mirrors/CPAN/mod/pml/byauthor/
       ftp://franz.ww.TU-Berlin.DE/pub/pml/byauthor/


    Alan> I do have perl5.001m, and msql-1.0.8.

    Alan> Is there a way I can determine where, exactly, the error is
    Alan> being generated?
    >>  Good question, I don't know.

    Alan> Too bad.  Thanks for the pointers.

One very valuable option is always to cut the problem down to less
than 10 lines and send me the script, so I can reproduce the problem.


    Alan> Alan

andreas

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <26330-9@lion>;
          Tue, 19 Sep 1995 12:01:45 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 19 Sep 95 08:05:39 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa20841;
          19 Sep 95 9:04 +0100
Received: by gw.home.vix.com id AA09059; Mon, 18 Sep 95 19:31:04 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA09051; Mon, 18 Sep 95 19:30:57 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa14646;
          18 Sep 95 23:54 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa14967;
          18 Sep 95 23:52 +0100
Received: from ig.co.uk by lion id <22407-0@lion>;
          Mon, 18 Sep 1995 23:53:30 +0100
To: lwall@scalpel.netlabs.com
Subject: Re: Another hash ref question...
Cc: perldb-interest@vix.com
Date: Mon, 18 Sep 1995 23:53:30 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509182352.aa14967@post.demon.co.uk>


> From: Tim Bunce <Tim.Bunce@ig.co.uk>
> 
> > From: mhm@austin.ibm.com
> > 
> > use Some_package qw( $hash_ref );
> > 
> >      $attrib_dec = { %$hash_ref, 'Stype' => SQL_DECIMAL } ;
> > 
> > fails.   The question/problem is why is the hash_ref undefined when 
> > it has been defined in Some_package and exported with EXPORT_OK ?
> >
> Your code:
> 
>     package DBD::DB2;
>     require DBI;
>     require DynaLoader;
>     @ISA = qw(DynaLoader);
>     @EXPORT_OK = qw($attrib_int );
> 
> you should have said:
> 
>     @ISA = qw(Exporter DynaLoader);
> 
Thinking about this some more... this is actually a rather nasty problem.

The code

	use FOO qw(bar baz);

will 'fail' silently if no import method is found.

This is bad enough but probably quickly spotted if the imports are
needed (as in this case).

Consider the case where the user writes

	use FOO;

without actually needing to import anything (this is sadly very common).
If FOO is not an Exporter then the import will 'fail' silently.
So far, not so bad.

One day the module may be 'enhanced' and may now be an Exporter.
The user of the module may now, unknowingly, have all sorts of symbols
imported into the users namespace potentially causing obscure problems.

I'm probably trying to close the stable door after the horse has bolted
but I think it would be a good idea for the import an unimport methods
to _not_ be treaded specially (gv_fetchmethod() for those interested).

This would mean that modules which were not exporters could not be
loaded with 'use' but would have to be loaded with 'require'.

Taking this 'action at a distance through interface changes' to it's
logical conclusion would also mean forcing people to explicitly list
the imports they wanted or use :DEFAULT (but I know I've got no chance
with that argument now :-)

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <26330-14@lion>;
          Tue, 19 Sep 1995 12:02:06 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 19 Sep 95 08:33:20 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa03437;
          19 Sep 95 9:32 +0100
Received: by gw.home.vix.com id AA16674; Mon, 18 Sep 95 21:47:21 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA16668; Mon, 18 Sep 95 21:47:18 -0700
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id XAA29619; Mon, 18 Sep 1995 23:47:17 -0500
Date: Mon, 18 Sep 1995 23:47:16 -0500 (CDT)
From: Mouring Cat <mouring@netnet.net>
Cc: perldb-interest@vix.com
Subject: Oracle Driver note.
In-Reply-To: <9509182352.aa14967@post.demon.co.uk>
Message-Id: <Pine.SUN.3.91.950918230342.28438B-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I'm finally able to start to implement the beginning of the QuickBase 
drivers for DBI and noticed a few differences between the headers and
implementation in the Oracle Drivers.

1)
ora_error _((..... int rc .....));  is how it's defined in the dbdimp.h
and 
ora_error( ... sb2 rc ....)); is how it's defined in the .c file.
Which is the correct version? 


Hmm...Not much else...From what I see..Since I don't have my Oracle database
right now. =)



---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <04638-12@lion>;
          Wed, 20 Sep 1995 07:23:01 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 19 Sep 95 21:22:59 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa02980;
          19 Sep 95 22:22 +0100
Received: by gw.home.vix.com id AA19168; Tue, 19 Sep 95 06:06:10 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA19163; Tue, 19 Sep 95 06:06:08 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id ab11884;
          19 Sep 95 13:24 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa12249;
          19 Sep 95 13:21 +0100
Received: from ig.co.uk by lion id <25702-0@lion>;
          Tue, 19 Sep 1995 10:40:31 +0100
To: perldb-interest@vix.com, Johan.Widingsjo@sto4.wmdata.se
Subject: Re: Select from Oracle
Date: Tue, 19 Sep 1995 10:40:31 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509191321.aa12249@post.demon.co.uk>


> From: "Widingsjo, Johan" <Johan.Widingsjo@sto4.wmdata.se>
> 
> Hello,
> 
> I'm very new to this and have only a little experience of perl prior to
> this, (no oop in perl, only c++, smalltalk and simula).
> It seems to me when reading the dbispec v0.6 that things have
> changed around quite a bit.

Yes. The spec is very old now.

> So I'm wondering if there's any
> examples or helpfiles. Or if someone could take a quick
> look at my test code and see what I'm doing wrong.
> 
Technically the DBI interface is *unsupported* the only supported
interface at the moment is the Oraperl emulation interface (documented
by the original oraperl manuals).

> I'm connecting to an Oracle 7.1.6 database from
> a solaris 2.4 system.
> 
> The execute statement returns 1 and the fetch I don't know what it does   
> :-) The array comes out empty even tho I have a couple of records in the   
> table and the do function can insert more records.
> 
You don't say what versions of DBI and DBD::Oracle you're using.
Please check that you're using the latest (DBI 0.63, DBD::Oracle 0.25).

> use DBI;
> use DBD::Oracle;
> 
You should not say 'use DBD::Oracle' here (but it doesn't relate to this
problem). The DBI->connect loads DBD::Oracle for you.

> # This line actually inserts a record in the database
> # So it seems to be connecting ok
> $status = $dbh->do("insert into test (ID, TEXT) values (2,'insert from   
> perl') ");
> 
Perhaps you need to commit here.

> $st=$dbh->prepare("select * from test");
> print "ST: $st\n";
> 
> $rc=$st->execute();
> print "Execute returns: $rc\n";
> 
> @datat = $st->fetch();
> print "#: $#datat\n";
> print "Data: @datat\n";

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <04638-22@lion>;
          Wed, 20 Sep 1995 07:25:13 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 19 Sep 95 23:41:28 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa08635;
          20 Sep 95 0:40 +0100
Received: by gw.home.vix.com id AA06746; Tue, 19 Sep 95 10:33:12 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA06739; Tue, 19 Sep 95 10:33:11 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id MAA119284 
          for <perldb-interest@vix.com>; Tue, 19 Sep 1995 12:33:10 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA17310;
          Tue, 19 Sep 1995 12:33:09 -0500
From: mhm@austin.ibm.com
Message-Id: <9509191733.AA17310@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: disconnect is no working....
Date: Tue, 19 Sep 95 12:33:08 -0500


What is the DBI error message after DIB::END complete attempting to tell me?

Thanks
Mike 
mhm@austin.ibm.com

Log of debug info:



DBI->connect(inv, , , DB2, )
DBI->install_driver DBI DB2 
 at genreq.pl line 11
DBI->install_driver(DB2) loaded
install_driver(DB2): setup @ISA for DBD::DB2::dr
 at genreq.pl line 11
install_driver(DB2): setup @ISA for DBD::DB2::db
 at genreq.pl line 11
install_driver(DB2): setup @ISA for DBD::DB2::st
 at genreq.pl line 11
DB2_HOME set to /usr/lpp/db2_02_01
    New DBI::dr (for DBD::DB2::dr, parent=, id=)
    New DBI::dr => DBI::dr=HASH(0x2006860c)
(inner=DBI::dr=HASH(0x200c5e18)) for DBD::DB2::dr
DBI->install_driver(DB2) = DBI::dr=HASH(0x2006860c)
DBI->connect using DB2 driver DBI::dr=HASH(0x2006860c)
    New DBI::db (for DBD::DB2::db, parent=DBI::dr=HASH(0x200c5e18), id=)
   New DBI::db => DBI::db=HASH(0x200c5d94)
(inner=DBI::db=HASH(0x200c5d1c)) for DBD::DB2::db
DBI->connect = DBI::db=HASH(0x200c5d94)
    New DBI::st (for DBD::DB2::st, parent=DBI::db=HASH(0x200c5d1c), id=)
   New DBI::st => DBI::st=HASH(0x200c5dd0)
(inner=DBI::st=HASH(0x200c5cec)) for DBD::DB2::st
766336
Entering parsing phase
disconnect(DBI::db=HASH(0x200c5d1c)) invalidates 1 associated cursor(s)
at genreq.pl line 69.
DBI::END
DBI::disconnect_all DBI
DBI::disconnect_all for 'DB2'
DBI::END complete
SQLSTATE = 
ERROR EVENT: DBI::st=HASH(0x200c5cec)->DBI::default_handler:
        -2 
 at genreq.pl line 0



------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <04638-29@lion>;
          Wed, 20 Sep 1995 07:26:20 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 20 Sep 95 00:43:20 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa05847;
          20 Sep 95 1:43 +0100
Received: by gw.home.vix.com id AA22069; Tue, 19 Sep 95 06:58:40 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA22064; Tue, 19 Sep 95 06:58:34 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id aa12168;
          19 Sep 95 13:27 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa12929;
          19 Sep 95 13:25 +0100
Received: from ig.co.uk by lion id <29295-0@lion>;
          Tue, 19 Sep 1995 13:27:32 +0100
To: mouring@netnet.net
Subject: Re: Oracle Driver note.
Cc: perldb-interest@vix.com
Date: Tue, 19 Sep 1995 13:27:32 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509191325.aa12929@post.demon.co.uk>


> From: Mouring Cat <mouring@netnet.net>
> 
> I'm finally able to start to implement the beginning of the QuickBase 
> drivers for DBI and noticed a few differences between the headers and
> implementation in the Oracle Drivers.
> 
> 1)
> ora_error _((..... int rc .....));  is how it's defined in the dbdimp.h
> and 
> ora_error( ... sb2 rc ....)); is how it's defined in the .c file.
> Which is the correct version? 
> 
The second, but it doesn't really matter for you since ora_error is an
internal DBD::Oracle specific function which you sould replace with
something more suited to your database engine.

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <04638-71@lion>;
          Wed, 20 Sep 1995 07:31:57 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 20 Sep 95 03:10:59 GMT
Received: from gw.home.vix.com by punt.demon.co.uk id aa27542;
          20 Sep 95 4:10 +0100
Received: by gw.home.vix.com id AA00542; Tue, 19 Sep 95 15:39:07 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA00536; Tue, 19 Sep 95 15:39:05 -0700
Received: from alma.mcqueen.com (alma.mcqueen.com [193.133.160.249]) 
          by fruitbat.mcqueen.com (8.6.12/8.6.12) with ESMTP id XAA08336;
          Tue, 19 Sep 1995 23:34:58 +0100
From: descarte@mcqueen.com
Received: (from descarte@localhost) by alma.mcqueen.com (8.6.12/8.6.12) 
          id XAA01515; Tue, 19 Sep 1995 23:41:29 +0100
Message-Id: <199509192241.XAA01515@alma.mcqueen.com>
Subject: DBD::mSQL pl3 available
To: perldb-interest@vix.com, msql-list@bond.edu.au
Date: Tue, 19 Sep 1995 23:41:28 +0100 (BST)
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 664


A couple of minor bug-fixes in this patchlevel including support for
not specifying the database hostname ( it defaults to localhost )
and handling of NULLs ( fairly importanto! )

Also, a mirror of ftp.demon.co.uk has been taken on a nightly basis to
hopefully circumvent the problems people seem to have in connecting to
that machine to download any perl db stuff.

The location for any perldb stuff ( especially new DBD::mMSQL releases )
is:

	ftp://ftp.mcqueen.com/pub/dbperl

NOTE!: This address has changed today, so the old one wont work!

A.

-- 
Alligator Descartes	| PGP Key available on request.
descarte@mcqueen.com	| http://www.mcqueen.com/hermetica
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <14095-3@lion>;
          Thu, 21 Sep 1995 07:21:00 +0100
Received: from punt2.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 20 Sep 95 18:40:51 GMT
Received: from [192.5.5.1] by punt2.demon.co.uk id aa12349;
          20 Sep 95 19:38 +0100
Received: by gw.home.vix.com id AA28386; Tue, 19 Sep 95 23:20:59 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA28381; Tue, 19 Sep 95 23:20:56 -0700
Received: by disperse.demon.co.uk id ac17525; 20 Sep 95 0:08 +0100
Received: from post.demon.co.uk by disperse.demon.co.uk id ab07837;
          19 Sep 95 17:27 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id aa07394;
          19 Sep 95 17:24 +0100
Received: from ig.co.uk by lion id <01538-0@lion>;
          Tue, 19 Sep 1995 17:26:57 +0100
To: descarte@mcqueen.com
Subject: Re: $dbh->do behaviour
Cc: perldb-interest@vix.com
Date: Tue, 19 Sep 1995 17:26:57 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509191724.aa07394@post.demon.co.uk>


> From: descarte@mcqueen.com
> 
> Hi Tim.
> 
> Spotted another quirk with $dbh->do in DBD::Oracle ( haven't tested against
> DBD::mSQL yet ).
> 
> I get:
> 
> Statement handle DBI::st=HASH(0xa145c) destroyed without finish() at ...
> 
> After every $dbh->do call. Of course, $dbh->finish won't work.....
> 
> Any ideas? Or is still just a hangover from the DBI glitch I asked about 
> before?
> 
> I'm doing an 'undef $csr' after each call, incidentally. That cured the
> problem on cursors with the prepare, execute, finish cycle, but hasn't made
> any difference over do.
> 
On the one hand I could change do to call finish.

On the other hand I think the warning is probably over-picky.
I don't want to have to call finish before destroying a cursor.

The next release of DBD::Oracle will not have the warning. Feel free to
delete it from your copy now.

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <14096-39@lion>;
          Thu, 21 Sep 1995 07:27:16 +0100
Received: from punt.demon.co.uk via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 21 Sep 95 06:19:29 GMT
Received: from frigate.doc.ic.ac.uk by punt.demon.co.uk id ad08028;
          21 Sep 95 7:19 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <21838-0@frigate.doc.ic.ac.uk>; Thu, 21 Sep 1995 03:41:55 +0100
Received: by gw.home.vix.com id AA24863; Wed, 20 Sep 95 13:21:46 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA24858; Wed, 20 Sep 95 13:21:45 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id PAA23663 
          for <perldb-interest@vix.com>; Wed, 20 Sep 1995 15:21:43 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA18372;
          Wed, 20 Sep 1995 15:21:42 -0500
From: mhm@austin.ibm.com
Message-Id: <9509202021.AA18372@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: Lost in the flow ...
Date: Wed, 20 Sep 95 15:21:42 -0500


Starting to work on fetching data from DB2 and I don't understand the flow 
through DBI.

Normally, things would look something like this:

$sth = $dbh->prepare("select f1, f2, f3 from f_table");

$sth->execute();

fine except that in dbdimp.c,  dbd_st_repare calls dbd_preparse which insists 
that the statement contain parameters.

So, how does one call a nonparameterized select and later add the parameters  
to fetch to the same $sth? 

And to finish the example:    

$sth->bind_param(1,$f1,$attrib);
$sth->bind_param(2,$f2,$attrib);
$sth->bind_param(3,$f3,$attrib);
$sth->fetch();


Mike

------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <25246-12@lion>;
          Fri, 22 Sep 1995 02:22:12 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 22 Sep 95 01:16:04 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id al16509;
          22 Sep 95 2:14 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <07445-0@frigate.doc.ic.ac.uk>; Thu, 21 Sep 1995 21:17:15 +0100
Received: by gw.home.vix.com id AA26514; Thu, 21 Sep 95 04:57:54 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA26477; Thu, 21 Sep 95 04:57:50 -0700
Received: (from skimo@localhost) by dns.ufsia.ac.be (8.6.12/8.6.9) id OAA24209 
          for perldb-interest@vix.com; Thu, 21 Sep 1995 14:01:34 +0200
From: Sven Verdoolaege <skimo@dns.ufsia.ac.be>
Message-Id: <199509211201.OAA24209@dns.ufsia.ac.be>
Subject: DBI on NT, possible ?
To: perldb-interest@vix.com
Date: Thu, 21 Sep 1995 14:01:34 +0200 (MET DST)
X-Stardate: [-31]6322.50
X-Mailer: ELM [version 2.4 PL24 PGP3 *ALPHA*]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 134

Hi,

I know there's an ntperl,
but is it possible to run DBI and DBD::Oracle on it ?

Has anyone had any experience with this ?

Sven
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <26845-15@lion>;
          Fri, 22 Sep 1995 07:24:00 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 22 Sep 95 05:48:54 GMT
Received: from gw.home.vix.com by punt-1.mail.demon.net id aa02135;
          22 Sep 95 6:47 +0100
Received: by gw.home.vix.com id AA29545; Thu, 21 Sep 95 20:37:11 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA29540; Thu, 21 Sep 95 20:37:07 -0700
Received: from post.demon.co.uk by disperse.mail.demon.net id ac22085;
          22 Sep 95 2:24 +0100
Received: from ignite.demon.co.uk by post.mail.demon.net id aa05807;
          22 Sep 95 2:21 +0100
Received: from ig.co.uk by lion id <25733-0@lion>;
          Fri, 22 Sep 1995 02:23:33 +0100
To: perldb-interest@vix.com, skimo@dns.ufsia.ac.be
Subject: Re: DBI on NT, possible ?
Date: Fri, 22 Sep 1995 02:23:33 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509220221.aa05807@post.mail.demon.net>


> From: Sven Verdoolaege <skimo@dns.ufsia.ac.be>
> 
> Hi,
> 
> I know there's an ntperl,
> but is it possible to run DBI and DBD::Oracle on it ?
> 
Probably.

> Has anyone had any experience with this ?
>
Not that I'm aware of.

Seems like you've just volunteered :-)
 
> Sven
>
Tim. 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <28562-1@lion>;
          Fri, 22 Sep 1995 11:32:40 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 22 Sep 95 07:04:52 GMT
Received: from gw.home.vix.com by punt-1.mail.demon.net id aa01759;
          22 Sep 95 8:04 +0100
Received: by gw.home.vix.com id AA24931; Thu, 21 Sep 95 19:17:35 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA24926; Thu, 21 Sep 95 19:17:31 -0700
Received: from post.demon.co.uk by disperse.mail.demon.net id aa21920;
          22 Sep 95 2:21 +0100
Received: from ignite.demon.co.uk by post.mail.demon.net id ab05459;
          22 Sep 95 2:18 +0100
Received: from ig.co.uk by lion id <25103-0@lion>;
          Fri, 22 Sep 1995 01:51:20 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: disconnect is no working....
Date: Fri, 22 Sep 1995 01:51:20 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509220218.ab05459@post.mail.demon.net>


> From: mhm@austin.ibm.com
> 
> What is the DBI error message after DIB::END complete attempting to tell me?

> Entering parsing phase
> disconnect(DBI::db=HASH(0x200c5d1c)) invalidates 1 associated cursor(s)
> at genreq.pl line 69.
> DBI::END
> DBI::disconnect_all DBI
> DBI::disconnect_all for 'DB2'
> DBI::END complete
> SQLSTATE = 
> ERROR EVENT: DBI::st=HASH(0x200c5cec)->DBI::default_handler:
>         -2 
>  at genreq.pl line 0
> 
I don't know. It might be the invalidated cursor (note the ::st) being
DESTROY'd during global destruction and the DESTROY code having problems
because it's parent has been disconnect'd (and possibly DESTROY'd).

Try running it with perl -Do and/or PERL_DBI_DEBUG=2 in the environment.

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <28562-9@lion>;
          Fri, 22 Sep 1995 11:33:34 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 22 Sep 95 10:28:08 GMT
Received: from gw.home.vix.com by punt-1.mail.demon.net id aa03605;
          22 Sep 95 11:27 +0100
Received: by gw.home.vix.com id AA29412; Thu, 21 Sep 95 20:31:35 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA29399; Thu, 21 Sep 95 20:31:30 -0700
Received: from post.demon.co.uk by disperse.demon.co.uk id ab20085;
          21 Sep 95 12:22 +0100
Received: from ignite.demon.co.uk by post.demon.co.uk id ad24797;
          21 Sep 95 12:20 +0100
Received: from ig.co.uk by lion id <16687-0@lion>;
          Thu, 21 Sep 1995 11:14:38 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: Lost in the flow ...
Date: Thu, 21 Sep 1995 11:14:38 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509211220.ad24797@post.demon.co.uk>


> From: mhm@austin.ibm.com
> 
> Starting to work on fetching data from DB2 and I don't understand the flow 
> through DBI.
> 
> Normally, things would look something like this:
> 
> $sth = $dbh->prepare("select f1, f2, f3 from f_table");
> 
> $sth->execute();
> 
> fine except that in dbdimp.c,  dbd_st_repare calls dbd_preparse which insists 
> that the statement contain parameters.
> 
Why? What makes you think it "insists that the statement contain parameters"?
It works for DBD::Oracle.

> So, how does one call a nonparameterized select and later add the parameters  
> to fetch to the same $sth? 
>
I don't understand that sentance.
 
Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <12132-3@lion>;
          Mon, 25 Sep 1995 07:21:12 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 22 Sep 95 22:58:09 GMT
Received: from gw.home.vix.com by punt-2.mail.demon.net id aa03763;
          22 Sep 95 23:57 +0100
Received: by gw.home.vix.com id AA11104; Fri, 22 Sep 95 07:25:20 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA11099; Fri, 22 Sep 95 07:25:18 -0700
Received: from alma.mcqueen.com (alma.mcqueen.com [193.133.160.249]) 
          by fruitbat.mcqueen.com (8.6.12/8.6.12) with ESMTP id PAA03103 
          for <perldb-interest@vix.com>; Fri, 22 Sep 1995 15:21:26 +0100
From: descarte@mcqueen.com
Received: (from descarte@localhost) by alma.mcqueen.com (8.6.12/8.6.12) 
          id PAA23164 for perldb-interest@vix.com;
          Fri, 22 Sep 1995 15:28:02 +0100
Message-Id: <199509221428.PAA23164@alma.mcqueen.com>
Subject: DBperl WWW pages
To: perldb-interest@vix.com
Date: Fri, 22 Sep 1995 15:28:01 +0100 (BST)
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 252


For information on DBperl, DBI and DBD::Oracle, DBD::mSQL, please check out

	http://www.hermetica.com

Suggestions on content are most welcome!

-- 
Alligator Descartes	| PGP Key available on request.
descarte@mcqueen.com	| http://www.hermetica.com/
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <12133-4@lion>;
          Mon, 25 Sep 1995 07:21:22 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 22 Sep 95 20:02:35 GMT
Received: from gw.home.vix.com by punt-1.mail.demon.net id aa02510;
          22 Sep 95 21:01 +0100
Received: by gw.home.vix.com id AA02439; Fri, 22 Sep 95 05:09:32 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA02434; Fri, 22 Sep 95 05:09:30 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id HAA59010 
          for <perldb-interest@vix.com>; Fri, 22 Sep 1995 07:09:29 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA19790;
          Fri, 22 Sep 1995 07:08:05 -0500
From: mhm@austin.ibm.com
Message-Id: <9509221208.AA19790@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: Re: Lost in the flow ...
In-Reply-To: Your message of Thu, 21 Sep 95 11:14:38 +0100. <9509211220.ad24797@post.demon.co.uk>
Date: Fri, 22 Sep 95 07:08:05 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|> > From: mhm@austin.ibm.com
|> > 
|> > Starting to work on fetching data from DB2 and I don't understand the flow 
|> > through DBI.
|> > 
|> > Normally, things would look something like this:
|> > 
|> > $sth = $dbh->prepare("select f1, f2, f3 from f_table");
|> > 
|> > $sth->execute();
|> > 
|> > fine except that in dbdimp.c,  dbd_st_repare calls dbd_preparse which insists 
|> > that the statement contain parameters.
|> > 
|> Why? What makes you think it "insists that the statement contain parameters"?
|> It works for DBD::Oracle.

Well, I think most of it was related to a) being frustrated and b) not
having the total flow figured out.  Any rate, some how I managed to get
dbd_bind_ph called on a "select * from tab" with "Parameter pX unknown".

I have since, determined the correct sequences of thing and am proud to
say DB2perl is working ... database control, inserts, updates, and 
deletions.  All that is left is dealing with BLOBs, CLOBs, DLOBs, adding
parameter strings to fetch/fetchrow, adding a global SQLSTATE variable
and dealing with the closing database errors.


|> > So, how does one call a nonparameterized select and later add the 
|> > parameters to fetch to the same $sth? 
|> >
|> I don't understand that sentance.

It took me while to figure out how to do something like

$sth = $dbh->prepare("select f1,f2,f3,f4 from tab;");
$sth->execute();
$sth->fetchrow("using $sth into :field1, :field2, :field3, :junk;");

Which took me about three days to realize that all I really needed to
do was

($field1,$field2, $field3, $junk) = $sth->fetchrow();

Sometimes I can be so dense :-(

Mike
mhm@austin.ibm.com

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <12133-6@lion>;
          Mon, 25 Sep 1995 07:21:32 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 22 Sep 95 21:46:02 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa19603;
          22 Sep 95 22:45 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <25472-0@frigate.doc.ic.ac.uk>; Fri, 22 Sep 1995 22:28:23 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA01996 for perldb-interest-real; Fri, 22 Sep 1995 12:24:35 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from localhost (mellon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          with SMTP id MAA01992 for <perldb-interest@toccata.fugue.com>;
          Fri, 22 Sep 1995 12:24:34 -0700
Message-Id: <199509221924.MAA01992@toccata.fugue.com>
To: perldb-interest@toccata.fugue.com
Subject: Mailing list move...
Date: Fri, 22 Sep 1995 12:24:34 -0700
From: Ted Lemon <mellon@fugue.com>


I've moved the mailing list from vix.com to fugue.com so that it'll be
a little easier for me to maintain.   I've also added a bouncer to the
perldb-interest-request mailing list so that it confirms receipt of
all messages, which will hopefully reduce the number of subscribe
messages that go to the main list because somebody didn't get an
acknowledgement and got impatient (this is an amazingly common
occurrance).   I'm thinking of adding a filter to the main list that
notices administrivia messages and sends them only to me, but I don't
know when I'll have time to do that.

Meanwhile, if you're telling your friends about the mailing list,
please tell them the new addresses:

Administrivia:		perldb-interest-request@fugue.com
Content:		perldb-interest@fugue.com

Thanks!

			       _MelloN_

---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <12133-10@lion>;
          Mon, 25 Sep 1995 07:22:11 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 23 Sep 95 00:33:50 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ab07285;
          23 Sep 95 1:33 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <27446-0@frigate.doc.ic.ac.uk>; Sat, 23 Sep 1995 00:30:27 +0100
Received: by gw.home.vix.com id AA28569; Fri, 22 Sep 95 11:08:21 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA28564; Fri, 22 Sep 95 11:08:19 -0700
Received: from dino.sikorsky.com by rotor.sikorsky.com (4.1/SMI-4.1) id AA20058;
          Fri, 22 Sep 95 14:04:23 EDT
Received: from tss0.bpt.sikorsky.com by dino.sikorsky.com (4.1/SMI-4.1) 
          id AA13918; Fri, 22 Sep 95 14:08:41 EDT
Received: by tss0.bpt.sikorsky.com (5.65/DEC-Ultrix/4.3) id AA16461;
          Fri, 22 Sep 1995 14:07:55 -0400
Received: by sun38.sikorsky (5.x/SMI-SVR4) id AA07048;
          Fri, 22 Sep 1995 14:08:06 -0400
Date: Fri, 22 Sep 1995 14:08:06 -0400
From: Dave Rattanni <dave_rattanni@sikorsky.com>
Message-Id: <9509221808.AA07048@sun38.sikorsky>
To: perldb-interest@vix.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Md5: pxGAlCdpYRIs+BIsZuqvHw==

subscribe perldb-interest
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <12133-12@lion>;
          Mon, 25 Sep 1995 07:22:45 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 23 Sep 95 00:33:52 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ad07285;
          23 Sep 95 1:33 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <27482-0@frigate.doc.ic.ac.uk>; Sat, 23 Sep 1995 00:32:37 +0100
Received: by gw.home.vix.com id AA11843; Fri, 22 Sep 95 07:38:57 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA11838; Fri, 22 Sep 95 07:38:55 -0700
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id JAA45430 
          for <perldb-interest@vix.com>; Fri, 22 Sep 1995 09:38:54 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA03256;
          Fri, 22 Sep 1995 09:38:53 -0500
From: mhm@austin.ibm.com
Message-Id: <9509221438.AA03256@dax.austin.ibm.com>
To: perldb-interest@vix.com
Subject: Re: disconnect is not working....
In-Reply-To: Your message of Fri, 22 Sep 95 01:51:20 +0100. <9509220218.ab05459@post.mail.demon.net>
Date: Fri, 22 Sep 95 09:38:52 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|> > From: mhm@austin.ibm.com
|> > Entering parsing phase
|> > disconnect(DBI::db=HASH(0x200c5d1c)) invalidates 1 associated cursor(s)
|> > at genreq.pl line 69.
|> > DBI::END
|> > DBI::disconnect_all DBI
|> > DBI::disconnect_all for 'DB2'
|> > DBI::END complete
|> > SQLSTATE = 
|> > ERROR EVENT: DBI::st=HASH(0x200c5cec)->DBI::default_handler:
|> >         -2 
|> >  at genreq.pl line 0
|> > 
|> I don't know. It might be the invalidated cursor (note the ::st) being
|> DESTROY'd during global destruction and the DESTROY code having problems
|> because it's parent has been disconnect'd (and possibly DESTROY'd).
|>  
You're right, user error on my part.  I was explicitly calling
$dbh->disconnect()  which was being implicitly called by the END block.

Gosh, I really have a case of the stupids this week.....

Thanks for the pointer.
Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <12133-14@lion>;
          Mon, 25 Sep 1995 07:23:31 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 23 Sep 95 00:33:54 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ac07285;
          23 Sep 95 1:33 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <27455-0@frigate.doc.ic.ac.uk>; Sat, 23 Sep 1995 00:30:39 +0100
Received: by gw.home.vix.com id AA13238; Fri, 22 Sep 95 08:00:03 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA13214; Fri, 22 Sep 95 08:00:00 -0700
Received: from dino.sikorsky.com by rotor.sikorsky.com (4.1/SMI-4.1) id AA19001;
          Fri, 22 Sep 95 10:56:04 EDT
Received: from tss0.bpt.sikorsky.com by dino.sikorsky.com (4.1/SMI-4.1) 
          id AA13190; Fri, 22 Sep 95 11:00:22 EDT
Received: by tss0.bpt.sikorsky.com (5.65/DEC-Ultrix/4.3) id AA10787;
          Fri, 22 Sep 1995 10:59:37 -0400
Received: by sun38.sikorsky (5.x/SMI-SVR4) id AA06936;
          Fri, 22 Sep 1995 10:59:46 -0400
Date: Fri, 22 Sep 1995 10:59:46 -0400
From: Dave Rattanni <dave_rattanni@sikorsky.com>
Message-Id: <9509221459.AA06936@sun38.sikorsky>
To: perldb-interest@vix.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Md5: tfE1lYbBkkMInrepSHAAGA==

subscribe 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <12133-16@lion>;
          Mon, 25 Sep 1995 07:24:00 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 23 Sep 95 01:31:42 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa00239;
          23 Sep 95 2:31 +0100
Received: from gw.home.vix.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <28824-0@frigate.doc.ic.ac.uk>; Sat, 23 Sep 1995 02:11:45 +0100
Received: by gw.home.vix.com id AA29908; Fri, 22 Sep 95 11:29:39 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Precedence: junk
Sender: perldb-interest-request@vix.com
Received: by gw.home.vix.com id AA29898; Fri, 22 Sep 95 11:29:36 -0700
Received: from dino.sikorsky.com by rotor.sikorsky.com (4.1/SMI-4.1) id AA20144;
          Fri, 22 Sep 95 14:25:32 EDT
Received: from tss0.bpt.sikorsky.com by dino.sikorsky.com (4.1/SMI-4.1) 
          id AA14000; Fri, 22 Sep 95 14:29:50 EDT
Received: by tss0.bpt.sikorsky.com (5.65/DEC-Ultrix/4.3) id AA16576;
          Fri, 22 Sep 1995 14:29:04 -0400
Received: by sun38.sikorsky (5.x/SMI-SVR4) id AA07059;
          Fri, 22 Sep 1995 14:29:15 -0400
Date: Fri, 22 Sep 1995 14:29:15 -0400
From: Dave Rattanni <dave_rattanni@sikorsky.com>
Message-Id: <9509221829.AA07059@sun38.sikorsky>
To: perldb-interest@vix.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Md5: HRdq5g0y2I+ZoHHXHWPTyQ==

subscribe  perldb-interest-REQUEST@vix.com
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <12133-29@lion>;
          Mon, 25 Sep 1995 07:28:01 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 23 Sep 95 08:23:54 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa12480;
          23 Sep 95 9:23 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <02713-0@frigate.doc.ic.ac.uk>; Sat, 23 Sep 1995 09:22:54 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id AAA03315 for perldb-interest-real; Sat, 23 Sep 1995 00:03:24 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id AAA03311 
          for <perldb-interest@fugue.com>; Sat, 23 Sep 1995 00:03:22 -0700
Received: by gw.home.vix.com id AA17334; Sat, 23 Sep 95 00:05:28 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id JAA28109;
          Sat, 23 Sep 1995 09:02:57 +0200
Date: Sat, 23 Sep 1995 09:02:57 +0200
Message-Id: <199509230702.JAA28109@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: descarte@mcqueen.com
Cc: perldb-interest@vix.com
In-Reply-To: <199509221428.PAA23164@alma.mcqueen.com> (descarte@mcqueen.com)
Subject: Re: DBperl WWW pages
Reply-To: andreas.koenig@mind.de


     > For information on DBperl, DBI and DBD::Oracle, DBD::mSQL,
     > please check out

     > 	http://www.hermetica.com

     > Suggestions on content are most welcome!

Very nice page! Suggestions? I'd recommend it as it is.

     > -- Alligator Descartes

Regards,
andreas


---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <15055-5@lion>;
          Thu, 28 Sep 1995 15:04:41 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 28 Sep 95 11:41:28 GMT
Received: from disperse.demon.co.uk by punt-1.mail.demon.net id aa29969;
          28 Sep 95 12:40 +0100
Received: from punt2.demon.co.uk by relay-2.mail.demon.net id cx23394;
          28 Sep 95 6:28 +0100
Received: from relay-1.mail.demon.net by punt-2.mail.demon.net id aa08257;
          28 Sep 95 2:58 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id ab04324;
          27 Sep 95 6:09 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA01386 for perldb-interest-real; Tue, 26 Sep 1995 20:38:55 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id UAA01382 
          for <perldb-interest@fugue.com>; Tue, 26 Sep 1995 20:38:53 -0700
Received: by gw.home.vix.com id AA21814; Tue, 26 Sep 95 20:40:45 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-2.mail.demon.net id ah03704;
          26 Sep 95 19:38 GMT
Received: from ignite.demon.co.uk by post.mail.demon.net id ab08704;
          25 Sep 95 13:55 +0100
Received: from ig.co.uk by lion id <16196-0@lion>;
          Mon, 25 Sep 1995 12:44:07 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: Lost in the flow ...
Date: Mon, 25 Sep 1995 12:44:07 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509251355.ab08704@post.mail.demon.net>


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> |> > From: mhm@austin.ibm.com
> 
> I have since, determined the correct sequences of thing and am proud to
> say DB2perl is working ... database control, inserts, updates, and 
> deletions.

Great.

> |> > So, how does one call a nonparameterized select and later add the 
> |> > parameters to fetch to the same $sth? 
> |> >
> |> I don't understand that sentance.
> 
> It took me while to figure out how to do something like
> 
> $sth = $dbh->prepare("select f1,f2,f3,f4 from tab;");
> $sth->execute();
> $sth->fetchrow("using $sth into :field1, :field2, :field3, :junk;");
> 
> Which took me about three days to realize that all I really needed to
> do was
> 
> ($field1,$field2, $field3, $junk) = $sth->fetchrow();
> 
> Sometimes I can be so dense :-(
> 
Sometimes the DBI can be so undocumented ... :-(

If you are using av = DBIS->get_fbav (which you should be) then you can
also do this:

	$sth->bind_columns(undef, \$field1, \$field2, \$field3, \$junk);
	while($sth->fetch) {
	    ...
	}

which will be faster. You must also be using sv_set*() for this to
work. Since bind_col and bind_columns will be part of the DBI spec
you'll need to support them.

> Mike
> mhm@austin.ibm.com
> 
Tim. 
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <16160-0@lion>;
          Thu, 28 Sep 1995 16:13:17 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 28 Sep 95 15:10:40 GMT
Received: from relay-1.mail.demon.net by punt-2.mail.demon.net id aa23917;
          28 Sep 95 16:06 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa29223;
          28 Sep 95 15:49 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA07123 for perldb-interest-real; Thu, 28 Sep 1995 04:57:25 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id EAA07119 
          for <perldb-interest@fugue.com>; Thu, 28 Sep 1995 04:57:24 -0700
Received: by gw.home.vix.com id AA26724; Thu, 28 Sep 95 04:59:31 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by hatch.sonalysts.com (1.37.109.16/16.2) id AA020729539;
          Thu, 28 Sep 1995 07:58:59 -0400
Date: Thu, 28 Sep 1995 07:58:58 -0400 (EDT)
From: Matt Stahl <mgstahl@sonalysts.com>
To: perldb-interest@vix.com
Subject: DBI/DBD and perlNT
Message-Id: <Pine.HPP.3.91.950928073947.1065A-100000@hatch.sonalysts.com>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I'm a perl newbie, and would like to be able to use DBI to access Oracle 
databases under winNT3.51. Unfortunately, the latest (?) version of 
NTperl (5.001l) doesn't support dynamic loading.

Anyone know when the next release of NTperl is due (and whether or not it 
will support dynamic loading)?

Any other ideas?

--Matt
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <17620-1@lion>;
          Thu, 28 Sep 1995 18:27:45 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 28 Sep 95 17:23:32 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa06716;
          28 Sep 95 18:21 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA07292 for perldb-interest-real; Thu, 28 Sep 1995 06:34:32 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id GAA07288 
          for <perldb-interest@fugue.com>; Thu, 28 Sep 1995 06:34:30 -0700
Received: by gw.home.vix.com id AA02989; Thu, 28 Sep 95 06:36:39 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from mogate (mogate.sps.mot.com) 
          by spsgate.sps.mot.com (4.1/SMI-4.1/Email 2.1 10/25/93) id AA29912 
          for perldb-interest@vix.com; Thu, 28 Sep 95 06:36:34 MST
Received: from email56 by mogate (4.1/SMI-4.1/Email-2.0) id AA08604;
          Thu, 28 Sep 95 06:33:12 MST
Received: (from r28874@localhost) by ismuc.sps.mot.com (8.6.10/8.6.6) 
          id OAA13992; Thu, 28 Sep 1995 14:30:36 +0200
From: Christian Murphy <r28874@ismuc.sps.mot.com>
Message-Id: <199509281230.OAA13992@ismuc.sps.mot.com>
Subject: Re: DBI/DBD and perlNT
To: Matt Stahl <mgstahl@sonalysts.com>
Date: Thu, 28 Sep 1995 14:30:35 +0200 (MES)
Cc: perldb-interest@vix.com
In-Reply-To: <Pine.HPP.3.91.950928073947.1065A-100000@hatch.sonalysts.com> from "Matt Stahl" at Sep 28, 95 07:58:58 am
X-Mailer: ELM [version 2.4 PL23]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 969


Hi Matt,

> I'm a perl newbie, and would like to be able to use DBI to access Oracle 
> databases under winNT3.51. Unfortunately, the latest (?) version of 
> NTperl (5.001l) doesn't support dynamic loading.

I have used the DBI on UNIX SVR3, which does not support dynamic loading
either (aside: there is a shared library kludge that you wouldn't want to
know about).  It just means that you have to link it all statically.  That
makes your executable larger.  It's been a while since I did it, but I just
used "make LINKTYPE=static".  You may want to look at the Makefile and
Makefile.PL to see if you can do something like that.

> Anyone know when the next release of NTperl is due (and whether or not it 
> will support dynamic loading)?

Sorry, no ideas on this ... I've never seen NT in the flesh.

Hope this helps,
-christian

-- 
Christian Murphy <r28874@ismuc.sps.mot.com>
[ I've done this with cc because there seem to be long delays on the mailing list.]

---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <17755-0@lion>;
          Thu, 28 Sep 1995 18:37:45 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 28 Sep 95 17:36:35 GMT
Received: from relay-1.mail.demon.net by punt-2.mail.demon.net id aa14537;
          28 Sep 95 18:35 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa07021;
          28 Sep 95 18:33 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA07343 for perldb-interest-real; Thu, 28 Sep 1995 07:02:59 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA07339 
          for <perldb-interest@fugue.com>; Thu, 28 Sep 1995 07:02:54 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id ae23888;
          28 Sep 95 15:04 +0100
Received: from ig.co.uk by lion id <14204-0@lion>;
          Thu, 28 Sep 1995 12:02:48 +0100
To: perldb-interest@fugue.com
Subject: Ping
Date: Thu, 28 Sep 1995 12:02:48 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9509281504.ae23888@relay-3.mail.demon.net>

Just a test to see if the new address is working okay and to let
you know that I'm still alive - but rather snowed under with real work.

Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <17834-0@lion>;
          Thu, 28 Sep 1995 18:41:23 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 28 Sep 95 17:39:29 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa01528;
          28 Sep 95 18:38 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa07217;
          28 Sep 95 18:36 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA07433 for perldb-interest-real; Thu, 28 Sep 1995 07:33:48 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id HAA07429 
          for <perldb-interest@fugue.com>; Thu, 28 Sep 1995 07:33:46 -0700
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id PAA08805 for perldb-interest@fugue.com;
          Thu, 28 Sep 1995 15:32:02 +0100
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199509281432.PAA08805@fruitbat.mcqueen.com>
Subject: DBI WWW pages available
To: perldb-interest@fugue.com
Date: Thu, 28 Sep 1995 15:32:02 +0100 (BST)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 473


Just a quick reminder. WWW pages on DBI are available at:

		http://www.hermetica.com

Please take a look if you haven't already. Thanks to the load of people who
have stopped by and made suitably encouraging comments!

I'm not here until the 9th October, so don't expect any more stuff until
then!

All suggestions and other sundry conversation welcomed.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.mcqueen.com/hermetica 
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <20490-1@lion>;
          Fri, 29 Sep 1995 07:09:59 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 28 Sep 95 17:51:42 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa22351;
          28 Sep 95 18:49 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA07561 for perldb-interest-real; Thu, 28 Sep 1995 08:21:28 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA07557 
          for <perldb-interest@fugue.com>; Thu, 28 Sep 1995 08:21:26 -0700
Received: by gw.home.vix.com id AA09396; Thu, 28 Sep 95 08:23:28 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id ab23854;
          28 Sep 95 16:19 +0100
Received: from ig.co.uk by lion id <16257-0@lion>;
          Thu, 28 Sep 1995 16:18:42 +0100
To: perldb-interest@vix.com, mgstahl@sonalysts.com
Subject: Re: DBI/DBD and perlNT
Date: Thu, 28 Sep 1995 16:18:42 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509281619.ab23854@relay-3.mail.demon.net>


> From: Matt Stahl <mgstahl@sonalysts.com>
> 
> I'm a perl newbie, and would like to be able to use DBI to access Oracle 
> databases under winNT3.51. Unfortunately, the latest (?) version of 
> NTperl (5.001l) doesn't support dynamic loading.
> 
> Anyone know when the next release of NTperl is due (and whether or not it 
> will support dynamic loading)?
> 
> Any other ideas?
> 
Er, if dynamic loading doesn't work then try static loading.

Beyond that I can't help with NT issues. Maybe others can.

> --Matt
> 
Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <20490-13@lion>;
          Fri, 29 Sep 1995 07:13:13 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 28 Sep 95 19:40:26 GMT
Received: from disperse.demon.co.uk by punt-2.mail.demon.net id aa17861;
          28 Sep 95 20:38 +0100
Received: from punt2.demon.co.uk by relay-2.mail.demon.net id ae14729;
          27 Sep 95 20:31 +0100
Received: from relay-1.mail.demon.net by punt-2.mail.demon.net id aa12324;
          27 Sep 95 20:26 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa20152;
          25 Sep 95 22:41 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA10944 for perldb-interest-real; Mon, 25 Sep 1995 11:39:12 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from mail-relay1.cis.yale.edu (mail-relay1.cis.yale.edu [130.132.21.199]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id LAA10940 
          for <perldb-interest@fugue.com>; Mon, 25 Sep 1995 11:39:09 -0700
Received: from capitoline.cis.yale.edu by mail-relay1.cis.yale.edu with SMTP 
          id AA17129 (5.67a/IDA-1.5 for <perldb-interest@fugue.com>);
          Mon, 25 Sep 1995 14:35:25 -0400
Received: from morpheus.cis.yale.edu (morpheus [130.132.143.248]) 
          by capitoline.cis.yale.edu (8.6.12/8.6.12) with ESMTP id OAA29850 
          for <perldb-interest@fugue.com>; Mon, 25 Sep 1995 14:41:13 -0400
Received: (from rivory@localhost) by morpheus.cis.yale.edu (8.6.12/8.6.12) 
          id OAA09465; Mon, 25 Sep 1995 14:41:10 -0400
Date: Mon, 25 Sep 1995 14:41:10 -0400 (EDT)
From: Royal Hansen <rivory@minerva.cis.yale.edu>
X-Sender: rivory@morpheus
To: interest perl <perldb-interest@fugue.com>
Subject: mSQLperl
Message-Id: <Pine.SOL.3.91.950925143927.8781A-100000@mReceived: from punt2.demon.co.uk by lion with SMTP (PP) id <24759-2@lion>;
          Fri, 29 Sep 1995 12:27:53 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 29 Sep 95 09:40:31 GMT
Received: from disperse.demon.co.uk by punt-2.mail.demon.net id ab26420;
          29 Sep 95 10:38 +0100
Received: from punt2.demon.co.uk by relay-2.mail.demon.net id ak11976;
          29 Sep 95 10:38 +0100
Received: from disperse.demon.co.uk by punt-2.mail.demon.net id ab24990;
          28 Sep 95 11:46 +0100
Received: from punt2.demon.co.uk by relay-2.mail.demon.net id au22915;
          28 Sep 95 4:45 +0100
Received: from disperse.demon.co.uk by punt-2.mail.demon.net id ab13654;
          27 Sep 95 21:24 +0100
Received: from punt2.demon.co.uk by relay-2.mail.demon.net id ad16186;
          27 Sep 95 20:56 +0100
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa19562;
          27 Sep 95 20:40 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA03812 for perldb-interest-real; Wed, 27 Sep 1995 10:49:11 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from localhost (mellon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          with SMTP id KAA03807; Wed, 27 Sep 1995 10:49:10 -0700
Message-Id: <199509271749.KAA03807@toccata.fugue.com>
To: mhm@austin.ibm.com
cc: perldb-interest@fugue.com
Subject: Re: was the move successful ?
In-reply-to: Your message of "Tue, 26 Sep 1995 13:33:06 CDT." <9509261833.AA19360@dax.austin.ibm.com>
Date: Wed, 27 Sep 1995 10:49:10 -0700
From: Ted Lemon <mellon@fugue.com>


> Did the move work?  I haven't gotten any mail/news since receiving the
> above message.  Things slow or did I get dropped from the list.

As far as I know, it's working fine.   The fact that you got the
announcement is certainly indicative of that.   Hm.  It's possible
that the link from vix.com isn't working - I'll check on that...

			       _MelloN_
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <24761-3@lion>;
          Fri, 29 Sep 1995 12:27:55 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 29 Sep 95 09:37:11 GMT
Received: from disperse.demon.co.uk by punt-1.mail.demon.net id aa14920;
          29 Sep 95 10:36 +0100
Received: from punt2.demon.co.uk by relay-2.mail.demon.net id ac11976;
          29 Sep 95 10:36 +0100
Received: from disperse.demon.co.uk by punt-2.mail.demon.net id aa15997;
          28 Sep 95 11:22 +0100
Received: from punt2.demon.co.uk by relay-2.mail.demon.net id bp23973;
          28 Sep 95 6:27 +0100
Received: from relay-1.mail.demon.net by punt-2.mail.demon.net id aa07720;
          28 Sep 95 2:57 +0100
Received: from disperse by relay-1.mail.demon.net id aa03971;
          27 Sep 95 5:59 +0100
Received: from punt.demon.co.uk by relay-2.mail.demon.net id ad15446;
          26 Sep 95 22:04 GMT
Received: from disperse.demon.co.uk by punt-1.mail.demon.net id aa24772;
          27 Sep 95 5:02 +0100
Received: from punt2.demon.co.uk by relay-2.mail.demon.net id fx03836;
          26 Sep 95 19:47 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa19982;
          25 Sep 95 10:22 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id AAA08748 for perldb-interest-real; Mon, 25 Sep 1995 00:42:54 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from ppsw3.cam.ac.uk (pp@mauve.csi.cam.ac.uk [131.111.8.38]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id AAA08744 
          for <perldb-interest@fugue.com>; Mon, 25 Sep 1995 00:42:52 -0700
From: aml2@mrc-lmb.cam.ac.uk
Received: from server1.mrc-lmb.cam.ac.uk by mauve.csi.cam.ac.uk 
          with SMTP-CAM (XTPP8.1) as ppsw.cam.ac.uk;
          Mon, 25 Sep 1995 08:42:52 +0100
Received: from alf1.mrc-lmb.cam.ac.uk by server1.mrc-lmb.cam.ac.uk (5.65) 
          id AA25571; Mon, 25 Sep 1995 08:44:11 +0100
Received: by alf1.mrc-lmb.cam.ac.uk (5.65) id AA21849;
          Mon, 25 Sep 1995 08:44:11 +0100
Message-Id: <9509250744.AA21849@alf1.mrc-lmb.cam.ac.uk>
To: perldb-interest@fugue.com
Date: Mon, 25 Sep 1995 08:44:11 +0100 (BST)
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 27

subscribe perldb-interest

---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <24759-5@lion>;
          Fri, 29 Sep 1995 12:28:08 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 29 Sep 95 09:45:40 GMT
Received: from disperse.demon.co.uk by punt-2.mail.demon.net id aa29423;
          29 Sep 95 10:45 +0100
Received: from punt2.demon.co.uk by relay-2.mail.demon.net id ci11976;
          29 Sep 95 10:44 +0100
Received: from disperse.demon.co.uk by punt-2.mail.demon.net id aa11268;
          28 Sep 95 12:25 +0100
Received: from punt2.demon.co.uk by relay-2.mail.demon.net id bb23764;
          28 Sep 95 5:47 +0100
Received: from relay-1.mail.demon.net by punt-2.mail.demon.net id aa26187;
          28 Sep 95 0:57 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa17121;
          26 Sep 95 21:41 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA00466 for perldb-interest-real; Tue, 26 Sep 1995 11:31:09 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id LAA00462;
          Tue, 26 Sep 1995 11:31:03 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id NAA88043;
          Tue, 26 Sep 1995 13:33:08 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for mellon@fugue.com at austin.ibm.com; id AA19360;
          Tue, 26 Sep 1995 13:33:07 -0500
Message-Id: <9509261833.AA19360@dax.austin.ibm.com>
To: perldb-interest@fugue.com
Cc: mellon@fugue.com
Subject: was the move successful ?
Date: Tue, 26 Sep 95 13:33:06 -0500


_MelloN_ writes:
|> I've moved the mailing list from vix.com to fugue.com so that it'll be
|> a little easier for me to maintain.   I've also added a bouncer to the
|> perldb-interest-request mailing list so that it confirms receipt of
|> all messages, which will hopefully reduce the number of subscribe
|> messages that go to the main list because somebody didn't get an
|> acknowledgement and got impatient (this is an amazingly common
|> occurrance).   I'm thinking of adding a filter to the main list that
|> notices administrivia messages and sends them only to me, but I don't
|> know when I'll have time to do that.
|> 
|> Meanwhile, if you're telling your friends about the mailing list,
|> please tell them the new addresses:
|> 
|> Administrivia:		perldb-interest-request@fugue.com
|> Content:		perldb-interest@fugue.com
|> 

Did the move work?  I haven't gotten any mail/news since receiving the
above message.  Things slow or did I get dropped from the list.

Mike
------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <25812-0@lion>;
          Fri, 29 Sep 1995 14:24:52 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 29 Sep 95 13:22:06 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa05260;
          29 Sep 95 14:19 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA11425 for perldb-interest-real; Fri, 29 Sep 1995 04:30:19 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id EAA11421 
          for <perldb-interest@fugue.comReceived: from punt.demon.co.uk by lion with SMTP (PP) id <08285-9@lion>;
          Mon, 2 Oct 1995 07:08:05 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 30 Sep 95 02:09:11 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa11745;
          30 Sep 95 3:08 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa19404;
          30 Sep 95 2:52 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA12652 for perldb-interest-real; Fri, 29 Sep 1995 17:40:22 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id RAA12648 
          for <perldb-interest@fugue.com>; Fri, 29 Sep 1995 17:40:21 -0700
Received: by gw.home.vix.com id AA24063; Fri, 29 Sep 95 17:42:26 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from HQPACAF-Message_Server by wpgate.hqpacaf.af.mil 
          with Novell_GroupWise; Fri, 29 Sep 1995 14:33:36 -1000
Message-Id: <s06c03bf.066@wpgate.hqpacaf.af.mil>
X-Mailer: Novell GroupWise 4.1
Date: Fri, 29 Sep 1995 14:32:40 -1000
From: Damon LaCaille <LACAILLD@wpgate.hqpacaf.af.mil>
To: perldb-interest@vix.com
Subject: WOW Errors

Sorry to bug everyone again, but I think I've pretty much narrowed my
problem down to a few things, and hopefully somebody out on this
mailing list can help me out here...

I'm finally calling the procedure properly, I'm getting the following error
though:

dbLogon(): orlon() returns 1034d

In my last post I stated what the Oracle errors book says it could be. 
We've relinked oracle, it was initialized, and the ORACLE_SID
environment variable is pointing to the correct instance of Oracle (TRNG).
So I don't know what's wrong here... maybe somebody can help?  Listed
below is the "wow" shell that kicks off everything else.  Oh, and before I
forget,the 5 programs the WOW docs tell you to run, I ran.  BUt only the
first two (ht.sql, and wow.sql) compiled correctly, the others (emp.sql,
showemp.sql, hanoi.sql and math.sql) said "Warning: package body
created with compilation errors".  So perhaps that could be the problem
as well... well anyhow, here is the current WOW shell we're using to
kick off wowstub, etc.

=========================================================
#!/bin/csh
setenv ORACLE_HOME /ora
set path = ( ${ORACLE_HOME}/bin /bin /usr/bin /usr/ucb /usr/local/bin . )
setenv DEBUG NONE
setenv WOW_UID scott/tiger
setenv ORACLE_SID TRNG
if ( $DEBUG == "NONE" ) then
	./wowstub $1
else if ( $DEBUG == "POST" ) then
	setenv REQUEST_METHOD POST
	setenv PATH_INFO "/math.decimal2nbase"
	setenv CONTENT_LENGTH 11
	echo "a=1234&b=22" | ./wowstub
else if ( $DEBUG == "GET" ) then
	setenv REQUEST_METHOD GET
	setenv PATH_INFO "/math.decimal2nbase"
	setenv QUERY_STRING "a=1234&b=22"
	./wowstub "a=1234&b=22"
else
	/usr/5bin/echo "Content-type: text/html\n\n"
	echo "<h3>Error</h3>"
	echo "The <strong>WOW</strong> gateway is
            improperlyconfigured."
	echo "The DEBUG variable must be set to either <italic>NONE,"
	echo "POST, or GET.</italic>"
endif

exit 0
=========================================================

So please, if somebody can help, please respond to this e-mail.

Thanks a bunch.

Damon LaCaille


---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <08285-44@lion>;
          Mon, 2 Oct 1995 07:21:18 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 30 Sep 95 09:17:04 GMT
Received: from [204.254.239.2] by punt-1.mail.demon.net id aa16378;
          30 Sep 95 10:16 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id BAA13150 for perldb-interest-real; Sat, 30 Sep 1995 01:16:55 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id BAA13146 
          for <perldb-interest@fugue.com>; Sat, 30 Sep 1995 01:16:52 -0700
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id JAA14788 for perldb-interest@fugue.com;
          Sat, 30 Sep 1995 09:15:08 +0100
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199509300815.JAA14788@fruitbat.mcqueen.com>
Subject: DBD::Sybase anyone?
To: perldb-interest@fugue.com
Date: Sat, 30 Sep 1995 09:15:07 +0100 (BST)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 335


Just a thought, does anyone want to pick up developing a Sybase DBD
for DBI?

If so, let me know.

If anyone's willing to give it a crack, and needs some help, I'll put together
a "How-to" document for next week.

Ta.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.mcqueen.com/hermetica 
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <08285-50@lion>;
          Mon, 2 Oct 1995 07:23:15 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 30 Sep 95 12:14:32 GMT
Received: from disperse.demon.co.uk by punt-1.mail.demon.net id aa25574;
          30 Sep 95 13:14 +0100
Received: from punt.demon.co.uk by relay-2.mail.demon.net id cn03630;
          30 Sep 95 13:08 +0100
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa03816;
          27 Sep 95 5:35 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <15625-0@frigate.doc.ic.ac.uk>; Wed, 27 Sep 1995 05:35:22 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA01316 for perldb-interest-real; Tue, 26 Sep 1995 20:09:05 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id UAA01312 
          for <perldb-interest@fugue.com>; Tue, 26 Sep 1995 20:09:03 -0700
Received: by gw.home.vix.com id AA19950; Tue, 26 Sep 95 20:11:09 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-2.mail.demon.net id nh00252;
          26 Sep 95 19:36 GMT
Received: from ignite.demon.co.uk by post.mail.demon.net id ab19406;
          25 Sep 95 12:06 +0100
Received: from ig.co.uk by lion id <15464-0@lion>;
          Mon, 25 Sep 1995 11:37:32 +0100
To: mellon@fugue.com
Subject: Re: Mailing list move...
Cc: perldb-interest@vix.com
Date: Mon, 25 Sep 1995 11:37:32 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509251206.ab19406@post.mail.demon.net>


> From: Ted Lemon <mellon@fugue.com>
> 
> 
> I've moved the mailing list from vix.com to fugue.com so that it'll be
> a little easier for me to maintain.   I've also added a bouncer to the
> perldb-interest-request mailing list so that it confirms receipt of
> all messages, which will hopefully reduce the number of subscribe
> messages that go to the main list because somebody didn't get an
> acknowledgement and got impatient (this is an amazingly common
> occurrance).   I'm thinking of adding a filter to the main list that
> notices administrivia messages and sends them only to me, but I don't
> know when I'll have time to do that.
> 
> Meanwhile, if you're telling your friends about the mailing list,
> please tell them the new addresses:
> 
> Administrivia:		perldb-interest-request@fugue.com
> Content:		perldb-interest@fugue.com
> 
> Thanks!
> 
> 			       _MelloN_
> 
Thanks Ted.

I presume perldb-interest*@vix.com will continue as aliases for a while
(they're mentioned in many places).


Tim.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <08283-79@lion>;
          Mon, 2 Oct 1995 07:28:32 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 30 Sep 95 17:06:36 GMT
Received: from relay-4.mail.demon.net by punt-2.mail.demon.net id aa02645;
          30 Sep 95 18:05 +0100
Received: from punt.demon.co.uk by relay-4.mail.demon.net id cc03122;
          30 Sep 95 14:49 +0100
Received: from [204.254.239.2] by punt-1.mail.demon.net id aa24768;
          28 Sep 95 11:14 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id BAA05370 for perldb-interest-real; Thu, 28 Sep 1995 01:08:03 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id BAA05366 
          for <perldb-interest@fugue.com>; Thu, 28 Sep 1995 01:08:01 -0700
Received: by gw.home.vix.com id AA10479; Thu, 28 Sep 95 01:09:47 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by disperse.mail.demon.net id bo12154; 26 Sep 95 14:12 +0100
Received: from [158.152.1.72] by disperse.mail.demon.net id be26985;
          26 Sep 95 9:39 +0100
Received: from ignite.demon.co.uk by post.mail.demon.net id aa08704;
          25 Sep 95 13:54 +0100
Received: from ig.co.uk by lion id <16132-0@lion>;
          Mon, 25 Sep 1995 12:35:46 +0100
To: perldb-interest@vix.com, mhm@austin.ibm.com
Subject: Re: disconnect is not working....
Date: Mon, 25 Sep 1995 12:35:46 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9509251354.aa08704@post.mail.demon.net>


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> |> > From: mhm@austin.ibm.com
> |> > Entering parsing phase
> |> > disconnect(DBI::db=HASH(0x200c5d1c)) invalidates 1 associated cursor(s)
> |> > at genreq.pl line 69.
> |> > DBI::END
> |> > DBI::disconnect_all DBI
> |> > DBI::disconnect_all for 'DB2'
> |> > DBI::END complete
> |> > SQLSTATE = 
> |> > ERROR EVENT: DBI::st=HASH(0x200c5cec)->DBI::default_handler:
> |> >         -2 
> |> >  at genreq.pl line 0
> |> > 
> |> I don't know. It might be the invalidated cursor (note the ::st) being
> |> DESTROY'd during global destruction and the DESTROY code having problems
> |> because it's parent has been disconnect'd (and possibly DESTROY'd).
> |>  
> You're right, user error on my part.  I was explicitly calling
> $dbh->disconnect()  which was being implicitly called by the END block.
> 
Well, actually the DBI only calls $drh->disconnect_all(); for each driver.
None of the drivers that I'm aware of actually implement it!

Even so calling $dbh->disconnect() multiple times should never be a problem
because the DBIcf_COMSET, DBIcf_IMPSET and DBIcf_ACTIVE flags should be
tested/reset as appropriate (and, as ever DBD::Oracle is the reference
implementation for this). All the above also applies to $sth->finish().

Testing/resetting those flags and understanding that a DESTROY of a
parent handle does NOT actually free the parents dbihcom struct while
any child dbihcom structs still have references to it are the key points.

> Thanks for the pointer.
> Mike
> mhm@austin.ibm.com
> 
Tim.
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <08285-127@lion>;
          Mon, 2 Oct 1995 07:42:04 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 30 Sep 95 16:39:29 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa04119;
          30 Sep 95 17:39 +0100
Received: from punt.demon.co.uk by relay-4.mail.demon.net id dj02880;
          30 Sep 95 14:30 +0100
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ad10369;
          28 Sep 95 4:42 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <01493-0@frigate.doc.ic.ac.uk>; Thu, 28 Sep 1995 02:37:39 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA04674 for perldb-interest-real; Wed, 27 Sep 1995 16:38:11 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id QAA04670 
          for <perldb-interest@fugue.com>; Wed, 27 Sep 1995 16:38:06 -0700
Received: by gw.home.vix.com id AA11694; Wed, 27 Sep 95 16:40:03 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by eve.mscs.mu.edu (Smail3.1.28.1 #9) id m0sy61O-0002DiC;
          Wed, 27 Sep 95 18:36 CDT
Message-Id: <m0sy61O-0002DiC@eve.mscs.mu.edu>
From: Saima Zobair <zobair@marque.mscs.mu.edu>
Subject: PERL4.036 HELP!!! installation stuff
To: perldb-interest@vix.com
Date: Wed, 27 Sep 1995 18:36:13 -0500 (CDT)
X-Mailer: ELM [version 2.4 PL23]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 12057



Hello,
 
I am in a REAL big mess!! PLEASE HELP!!!
 
I am trying to install perl-4.036 on a solaris2.4. I made changes
that were suggested in README.solaris2  (from http://www.hermetica.com).
After following the instructions I ran the Configure and makedepend.

the function: 
dbm_clearerr() in hash.c  given in the perl4.036 installation packet
is giving me the problem!!

Also I dont understand the output from the 'make' very well.
 
Please send me an answer !!
 
 
Thanks,
Saima Zobair
zobair@mscs.mu.edu
 
On running the 'make' I got the following output:





Expect 27 shift/reduce and 57 reduce/reduce conflicts
/usr/ccs/bin/yacc -d perly.y

conflicts: 27 shift/reduce, 57 reduce/reduce
sh  ./perly.fixer y.tab.c perly.c
mv y.tab.h perly.h
echo 'extern YYSTYPE yylval;' >>perly.h
`sh  cflags perly.o` perly.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from perly.y:41:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags array.o` array.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from array.c:25:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags cmd.o` cmd.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from cmd.c:35:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags cons.o` cons.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from cons.c:36:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags consarg.o` consarg.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from consarg.c:35:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags doarg.o` doarg.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from doarg.c:61:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags doio.o` doio.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from doio.c:52:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
In file included from /usr/include/fcntl.h:18,
                 from doio.c:97:
/usr/include/sys/fcntl.h:137: warning: `O_ACCMODE' redefined
/usr/local/include/compat.h:153: warning: this is the location of the previous definition
`sh  cflags dolist.o` dolist.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from dolist.c:52:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags dump.o` dump.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from dump.c:22:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags eval.o` eval.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from eval.c:48:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
In file included from /usr/include/fcntl.h:18,
                 from eval.c:55:
/usr/include/sys/fcntl.h:137: warning: `O_ACCMODE' redefined
/usr/local/include/compat.h:153: warning: this is the location of the previous definition
`sh  cflags form.o` form.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from form.c:32:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags perl.o` perl.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from perl.c:60:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags regcomp.o` regcomp.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from regcomp.c:75:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags regexec.o` regexec.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from regexec.c:66:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags stab.o` stab.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from stab.c:45:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags str.o` str.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from str.c:48:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
`sh  cflags toke.o` toke.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from toke.c:62:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
In file included from /usr/include/fcntl.h:18,
                 from toke.c:68:
/usr/include/sys/fcntl.h:137: warning: `O_ACCMODE' redefined
/usr/local/include/compat.h:153: warning: this is the location of the previous definition
`sh cflags util.o` util.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from util.c:46:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
In file included from /usr/include/fcntl.h:18,
                 from util.c:61:
/usr/include/sys/fcntl.h:137: warning: `O_ACCMODE' redefined
/usr/local/include/compat.h:153: warning: this is the location of the previous definition
`sh  cflags hash.o` hash.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from hash.c:26:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
In file included from /usr/include/fcntl.h:18,
                 from hash.c:588:
/usr/include/sys/fcntl.h:137: warning: `O_ACCMODE' redefined
/usr/local/include/compat.h:153: warning: this is the location of the previous definition
`sh  cflags usersub.o` usersub.c
          CCCMD =  gcc -c -fpcc-struct-return -traditional -Dvolatile=__volatile__ -I/opt/gnu/lib/gcc-lib/sparc-sun-solaris2/2.5.6/include -O  
In file included from /usr/local/include/db.h:40,
                 from /usr/local/include/ndbm.h:42,
                 from perl.h:332,
                 from usersub.c:20:
/usr/local/include/sys/cdefs.h:68: warning: `volatile' redefined
*Initialization*:1: warning: this is the location of the previous definition
/opt/gnu/bin/gcc   array.o cmd.o cons.o consarg.o doarg.o doio.o dolist.o dump.o eval.o form.o  perl.o regcomp.o regexec.o stab.o str.o toke.o util.o hash.o perly.o usersub.o -lsocket -lnsl -lm  -o perl
Undefined                       first referenced
 symbol                             in file
dbm_clearerr                        hash.o
ld: fatal: Symbol referencing errors. No output written to perl
make: *** [perl] Error 1
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <08285-149@lion>;
          Mon, 2 Oct 1995 07:46:45 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 30 Sep 95 17:05:03 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa15973;
          30 Sep 95 18:04 +0100
Received: from punt.demon.co.uk by relay-4.mail.demon.net id be03122;
          30 Sep 95 14:47 +0100
Received: from [204.254.239.2] by punt-1.mail.demon.net id aa28703;
          28 Sep 95 10:12 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id AAA05271 for perldb-interest-real; Thu, 28 Sep 1995 00:17:59 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id AAA05267 
          for <perldb-interest@fugue.com>; Thu, 28 Sep 1995 00:17:57 -0700
Received: by gw.home.vix.com id AA08215; Thu, 28 Sep 95 00:20:04 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by solair1.inter.NL.net (5.65b/solair1.Inter.NL.net-1.31) id AA16275;
          Thu, 28 Sep 1995 08:19:53 +0100
Date: Thu, 28 Sep 1995 08:19:52 +0100 (MET)
From: Marti Rijken <mrijken@inter.nl.net>
To: perldb-interest@vix.com
Subject: Re: DBD-mSQL-0.60pl2 test failed
In-Reply-To: <Pine.LNX.3.91.950918175901.62A-100000@rijken.inter.NL.net>
Message-Id: <Pine.SUN.3.91.950928081521.15472A-100000@solair1.inter.NL.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

In followup to my mail from 18 Sep, that has just arrived in
perldb-interest, I can say that my question has been solved
for some time (Thanks Alligator Descartes!).
Somehow a mail relay had blocked my message for 10 days....

-Marti Rijken <mrijken@inter.nl.net>
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <08285-174@lion>;
          Mon, 2 Oct 1995 07:52:27 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 01 Oct 95 03:27:04 GMT
Received: from [204.254.239.2] by punt-1.mail.demon.net id aa09474;
          1 Oct 95 4:26 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id TAA15646 for perldb-interest-real; Sat, 30 Sep 1995 19:09:53 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id TAA15642 
          for <perldb-interest@fugue.com>; Sat, 30 Sep 1995 19:09:50 -0700
Received: by gw.home.vix.com id AA20315; Sat, 30 Sep 95 19:12:00 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from rodan.syr.edu (spoliset@rodan.syr.EDU [128.230.1.55]) 
          by mailsender.syr.edu (8.7/8.7) with SMTP id WAA16659 
          for <perldb-interest@vix.com>; Sat, 30 Sep 1995 22:23:22 -0400 (EDT)
Received: by rodan.syr.edu (4.1/Spike-2.0) id AA05887;
          Sat, 30 Sep 95 22:11:24 EDT
Date: Sat, 30 Sep 1995 22:11:24 -0400 (EDT)
From: Srinivas Polisetty <spoliset@mailbox.syr.edu>
X-Sender: spoliset@rodan.syr.edu
To: perldb-interest@vix.com
Subject: oraperl installation errors... please help...
In-Reply-To: <s06c03bf.066@wpgate.hqpacaf.af.mil>
Message-Id: <Pine.SUN.3.91.950930215548.5121A-100000@rodan.syr.edu>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

Hi All,
	Could someone help me with my installation of 'oraperl' for which 
I had been struggling for a while now, and in vain. 

My machine specs:

Sun4 Sparc, running SunOS UNIX

My makefile reads:

---------------------------------------------------------
ORACLE_HOME     = /usr/oracle
SRC             = /home/T6D/HPFI/users/sairam/installed/perl/perl-4.036
OTHERLIBS       = `cat $(ORACLE_HOME)/rdbms/lib/sysliblist`
CLIBS           = $(OTHERLIBS)
OCILIB          = $(ORACLE_HOME)/lib/libocic.a
NETLIBS         = $(ORACLE_HOME)/lib/osntab.o \
                        $(ORACLE_HOME)/lib/libsqlnet.a
ORALIBS         = $(ORACLE_HOME)/lib/libora.a

ALL_ORA_LIBS    = $(CLIBS) $(OCILIB) $(NETLIBS) $(ORALIBS)
GLOBINCS        =
LOCINCS         =
LIBS            = `. $(SRC)/config.sh; echo $$libs`
DEBUG           = -DPERL_DEBUGGING
DBUG_O          = dbug/dbug.o
CURSELIB        = -lcurses
TESTDATA        = nodb furma TianpfWS
SRCS            = oracle.mus orafns.c getcursor.c colons.c usersub.c \
                  debug.c strtoul.c
OBJS            = oracle.o orafns.o getcursor.o colons.o debug.o $(STRTOUL)
OOBJS           = $(OBJS) usersub.o $(DBUG_O)
COBJS           = $(OBJS) cusersub.o $(DBUG_O)
HDRS            = patchlevel.h orafns.h
DEFS            = $(STRTOL) $(PUTENV) $(STR_2MORTAL) $(DEBUG) $(CACHE) 
$(BIND)

CFLAGS          = -Idbug -I$(SRC) $(GLOBINCS) $(LOCINCS) $(DEFS)

oraperl: $(SRC)/uperl.o $(OOBJS)
        $(CC) -o oraperl $(SRC)/uperl.o $(OOBJS)                        \
              -lm $(ALL_ORA_LIBS) $(LIBS)
coraperl: $(SRC)/uperl.o $(COBJS) $(SRC)/usub/curses.o
        $(CC) -o coraperl $(SRC)/uperl.o $(COBJS) $(SRC)/usub/curses.o  \
              -lm $(ALL_ORA_LIBS) $(LIBS) $(CURSELIB)

all:    oraperl coraperl

test:   oraperl
        @oraperl -e '&ora_version'
        @(cd testdir 
;                                                        \
          rm -f My-Results 
;                                                  \
          echo "Testing oraperl, please wait ..." 
;                           \
          for i in *.pl ; do ../oraperl $$i $(TESTDATA) ; done > 
My-Results ; \
          if cmp -s Standard-Results My-Results 
;                             \
          then echo "Test successful" 
;                                       \
          else echo "Test failed - compare My-Results with 
Standard-Results" ;\
          fi; echo)
install:        oraperl install.pl
        @./oraperl ./install.pl ${SRC}

cusersub.c:     usersub.c
        @rm -f cusersub.c
        ln usersub.c cusersub.c

cusersub.o:     cusersub.c
        $(CC) -c $(CFLAGS) -DCURSES cusersub.c

oracle.c: $(SRC)/usub/mus oracle.mus
        $(SRC)/usub/mus oracle.mus >oracle.c

$(OOBJS) $(COBJS):      $(HDRS)

dbug/dbug.o:
        (cd dbug ; $(MAKE) dbug.o)
        @echo " (back to main directory)"

clean:
        (cd dbug ; $(MAKE) clean)
        @echo " (back to main directory)"
        rm -f nohup.out *.o oracle.c cusersub.c
        rm -f testdir/My-Results listing tags core

realclean clobber:      clean
        (cd dbug ; $(MAKE) clobber)
        (cd doc ; $(MAKE) clobber)
        @echo " (back to main directory)"
        rm -f oraperl coraperl

listing:
        pr -fn Makefile $(HDRS) $(SRCS) >listing

docs:
        (cd doc ; $(MAKE) docs)
        @echo " (back to main directory)"

shar:   clean
        shar -n oraperl-v2 -a -s kstock@encore.com -F -o :Part -l 64    \
                Readme [C-Q]* Row* [S-z]*
------------------------------------------------------------------


Also a transcript of the session that followed:

pacman:/home/T6D/HPFI/users/sairam/installed/oraperl/oraperl-v2.4% make oraperl 
cc -Idbug -I/home/T6D/HPFI/users/sairam/installed/perl/perl-4.036
-DPERL_DE
BUGGING    -target sun4 -c  oracle.c
cc -Idbug -I/home/T6D/HPFI/users/sairam/installed/perl/perl-4.036
-DPERL_DE
BUGGING    -target sun4 -c  orafns.c
cc -Idbug -I/home/T6D/HPFI/users/sairam/installed/perl/perl-4.036
-DPERL_DE
BUGGING    -target sun4 -c  getcursor.c
cc -Idbug -I/home/T6D/HPFI/users/sairam/installed/perl/perl-4.036
-DPERL_DE
BUGGING    -target sun4 -c  colons.c
cc -Idbug -I/home/T6D/HPFI/users/sairam/installed/perl/perl-4.036
-DPERL_DE
BUGGING    -target sun4 -c  debug.c
cc -Idbug -I/home/T6D/HPFI/users/sairam/installed/perl/perl-4.036
-DPERL_DE
BUGGING    -target sun4 -c  strtoul.c
cc -Idbug -I/home/T6D/HPFI/users/sairam/installed/perl/perl-4.036
-DPERL_DE
BUGGING    -target sun4 -c  usersub.c
(cd dbug ; make dbug.o)
cc   -target sun4 -c  dbug.c
        (back to main directory)
cc -o oraperl /home/T6D/HPFI/users/sairam/installed/perl/perl-4.036/uperl.o
orac
le.o orafns.o getcursor.o colons.o debug.o strtoul.o usersub.o dbug/dbug.o
  \
      -lm `cat /usr/oracle/rdbms/lib/sysliblist`
/usr/oracle/rdbms/lib/libocic.a
 /usr/oracle/rdbms/lib/osntab.o  /usr/oracle/rdbms/lib/libsqlnet.a
/usr/oracle/r
dbms/lib/libora.a `.
/home/T6D/HPFI/users/sairam/installed/perl/perl-4.036/confi
g.sh; echo $libs`
ld: /usr/oracle/rdbms/lib/libocic.a: No such file or directory
*** Error code 4
make: Fatal error: Command failed for target `oraperl'


-------------------------------
Then I saw that the required files were in /usr/oracle/lib directory and 
changed the variables as they appear on the Makefile reproduced above. 
And when I said 'make oraperl' again, I had the following error.

-------------------------------


pacman:/home/T6D/HPFI/users/sairam/installed/oraperl/oraperl-v2.4% make oraperl
cc -o oraperl /home/T6D/HPFI/users/sairam/installed/perl/perl-4.036/uperl.o
orac
le.o orafns.o getcursor.o colons.o debug.o strtoul.o usersub.o dbug/dbug.o
  \
      -lm `cat /usr/oracle/rdbms/lib/sysliblist` /usr/oracle/lib/libocic.a
/usr/
oracle/lib/osntab.o  /usr/oracle/lib/libsqlnet.a /usr/oracle/lib/libora.a
`. /ho
me/T6D/HPFI/users/sairam/installed/perl/perl-4.036/config.sh; echo $libs`
ld: Undefined symbol
   _ligraw
   _liclas
   _licbas
   _lircpu
   _lmemupr
   _sslsig
   _lmfeecb
   _limopen
   _lintrn
   _ligcnv
   _ldtsto
   _liwalpx
   _limspax
   _limcpcx
   _limpuc
   _lmemup
   _lihcurrlangid
   _lmsrcbn
   _lstrlcomp
   _limnceq
   _ldtini
   _ss_memmove
   _ligstm
   _sldtgd
   _ldtdts
   _lmemlcomp
   _lnmscn
   _lnmren
   _lmemlcmp
   _lmfegks
   _lmsrtrm
   _limc2wx
   _lihmupr
   _lmsrgbf
   _liwc2ux
   _lincml
   _liisch
   _sltbev
   _lmemlo
   _lmsrcin
   _lmsrip
   _sslsleep
   _ligpth
   _liiskip
   _limr2w
   _ligratio
   _limdigx
   _liwlowx
   _lircop
   _ora_sprintf
   _btoi
   _lmfehtl
   _lmfepwe
   _ora_vsprintf
   _limfwdx
   _liwdigx
   _osnqrn
   _liwc2mx
   _liwctex
   _limalpx
   _lnmnur
   _limcpen
   _lihci2h
   _lihcrenv
   _ligncc
   _liicml
   _liclas
   _debug
   _lihcsn
   _lihlinfo
   _init_oracle
   _licbas
*** Error code 2
make: Fatal error: Command failed for target `oraperl'

-----------------------------------------

Some thing is terribly wrong, and I can't figure out what!! Could anyone 
please help me with this.

Thank you very much,
Srinvas.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <19055-0@lion>;
          Mon, 2 Oct 1995 17:33:43 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 02 Oct 95 16:30:48 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa08617;
          2 Oct 95 17:29 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA19836 for perldb-interest-real; Mon, 2 Oct 1995 06:21:25 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id GAA19832 
          for <perldb-interest@fugue.com>; Mon, 2 Oct 1995 06:21:22 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id IAA25055 
          for <perldb-interest@fugue.com>; Mon, 2 Oct 1995 08:23:34 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA24494;
          Mon, 2 Oct 1995 08:23:29 -0500
Message-Id: <9510021323.AA24494@dax.austin.ibm.com>
To: Chet Murthy <chet@lusitania.watson.ibm.com>
Cc: perldb-interest@fugue.com
Subject: Re: DB2perl
In-Reply-To: Your message of Sun, 01 Oct 95 00:47:56 -0400. <9510010447.AA35053@lusitania.watson.ibm.com>
Date: Mon, 02 Oct 95 08:23:29 -0500


Tim,
   What sort of optimizations were thinking about for dbd_st_fetch?  
DBD::Oracle, as well as DBD::DB2 both carry your comment about
the ability to optimize later.

   One of my alpha testers is asking if the following change is a valid
fix for null variables returned from the database.  Given the availability
of null indicators I see no reason to make the change unless it can
be worked into the optimizations you have been thinking about.

Mike
mhm@austin.ibm.com

   
Chet Murthy <chet@lusitania.watson.ibm.com>  writes:
> 
> 
> Hi, Mike,
> 
> I found two problems.  I don't know what to do about either, but I
> figure I'll throw them your way, and see what you think:
> 
> (1) When a field is NULL, the "rlen" of a fbh_t ends up being set to
> -1.  This isn't handled, and I change the following in dbd_st_fetch.
> 
> #ifdef ISTHISAFIX
>        if (fbh->rlen < 0) {
>          sv_setsv (sv,Nullsv);
>        } else {
>           SvCUR(fbh->sv) = fbh->rlen;
>           sv_setsv(sv, fbh->sv);    /* XXX can be optimised later   */
>        }
> #else
>           SvCUR(fbh->sv) = fbh->rlen;
>           sv_setsv(sv, fbh->sv);    /* XXX can be optimised later   */
> #endif
> 
> The problem is that if you project on a single field, and that field
> happens come up NULL sometimes ...  Perhaps the right thing to do is
> to return instead the empty string.  But then how to differentiate
> that from an empty string ...
> 
> If you get the IBMSAMPL database, then you can tickle this problem with
> the perl script I enclose in this file, and:
> 

That's the entire purpose of null indicators.  Do your select using
a null indicator variable, then either if or unless to skip your
code on a null.

This also gets rid of the differentiation problem.
---+++---
Received: from punt2.demon.co.uk by lion with SMTP (PP) id <19153-0@lion>;
          Mon, 2 Oct 1995 17:43:47 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 02 Oct 95 16:43:05 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa14577;
          2 Oct 95 17:41 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA20003 for perldb-interest-real; Mon, 2 Oct 1995 07:55:04 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id HAA19999 
          for <perldb-interest@fugue.com>; Mon, 2 Oct 1995 07:55:02 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id JAA44311 
          for <perldb-interest@fugue.com>; Mon, 2 Oct 1995 09:57:10 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA26246;
          Mon, 2 Oct 1995 09:57:09 -0500
Message-Id: <9510021457.AA26246@dax.austin.ibm.com>
To: perldb-interest@fugue.com
Subject: Dealing with null indicator variables
Date: Mon, 02 Oct 95 09:57:09 -0500


How does one deal with null indicator variables specified by the enduser?

From what I can tell it doesn't appear to be done at the present time.
Am I correct or just missing the appropriate piece of magic?

Mike

--------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <25744-15@lion>;
          Tue, 3 Oct 1995 02:30:29 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 03 Oct 95 01:24:56 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ai10955;
          3 Oct 95 2:23 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <25398-0@frigate.doc.ic.ac.uk>; Tue, 3 Oct 1995 00:01:56 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA20744 for perldb-interest-real; Mon, 2 Oct 1995 13:29:45 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id NAA20740 
          for <perldb-interest@fugue.com>; Mon, 2 Oct 1995 13:29:38 -0700
Received: by gw.home.vix.com id AA29890; Mon, 2 Oct 95 13:31:48 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from euterpe.cas.american.edu by beach.cas.american.edu (8.6.10/) 
          id QAA25148; Mon, 2 Oct 1995 16:40:45 -0400
Received: by euterpe.cas.american.edu (8.6.10) id QAA21963;
          Mon, 2 Oct 1995 16:25:07 -0400
Date: Mon, 2 Oct 1995 16:25:07 -0400 (EDT)
From: Abinash Tripathy <abinash@cage.home.vix.com>
X-Sender: abinash@euterpe
To: perldb-interest@vix.com
Subject: Make Errors in DBI on SunOS 4.1.3 and Perl 5.0
Message-Id: <Pine.SUN.3.91.951002162216.10158B-200000@cage>
Mime-Version: 1.0
Content-Type: MULTIPART/MIXED; BOUNDARY="1430353583-216079660-812665507=:21959"

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

--1430353583-216079660-812665507=:21959
Content-Type: TEXT/PLAIN; charset=US-ASCII

Hi,

	I have followed the steps needed to Make DBI.  

1. >perl Makefile.PL (works fine - no errors)

2. >make (error - listed in the attachment)

Any help will be greatly appreciated. Thanks, Abinash

Abinash Tripathy
4201 Massachusetts Ave, N.W Apt 3030C    Ph:(202) 363 0604(home)
Washington D.C 20016   (202) 885 1479 (FAX) (202) 885 2767(work)
email:abinash@email.cas.american.edu at0509a@american.edu
WWW  :http://www.cas.american.edu/~abinash/
--

--1430353583-216079660-812665507=:21959
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="makerror.txt"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.SUN.3.91.951002162507.21959A@euterpe>
Content-Description: Bummer

bWFrZQ0KbWtkaXIgLi9ibGliDQpta2RpciAuL2JsaWIvYXV0bw0KbWtkaXIg
Li9ibGliL2F1dG8vREJJDQovdXNyL2xvY2FsL2Jpbi9wZXJsIC1JL3Vzci9s
b2NhbC9saWIvcGVybDUvc3VuNC1zdW5vcyAtSS91c3IvbG9jYWwvbGliL3Bl
cmw1IC91cw0Kci9sb2NhbC9saWIvcGVybDUvRXh0VXRpbHMveHN1YnBwIC10
eXBlbWFwIC91c3IvbG9jYWwvbGliL3Blcmw1L0V4dFV0aWxzL3R5cGVtYXAN
CiBEQkkueHMgPkRCSS50YyAmJiBtdiBEQkkudGMgREJJLmMNCmNjIC1jIC1P
IC1waWMgLUkvdXNyL2xvY2FsL2xpYi9wZXJsNS9zdW40LXN1bm9zL0NPUkUg
ICBEQkkuYw0KLi9EQklYUy5oOiAzNTogdW5kZWZpbmVkIGNvbnRyb2wNCm1h
a2U6ICoqKiBbREJJLm9dIEVycm9yIDI=
--1430353583-216079660-812665507=:21959--
---+++---
Received: from punt.demon.co.uk by lion with SMTP (PP) id <25744-17@lion>;
          Tue, 3 Oct 1995 02:30:37 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 03 Oct 95 01:24:59 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aj10955;
          3 Oct 95 2:24 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <25491-0@frigate.doc.ic.ac.uk>; Tue, 3 Oct 1995 00:06:12 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA20820 for perldb-interest-real; Mon, 2 Oct 1995 13:49:56 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from studsys.mscs.mu.edu (studsys.mscs.mu.edu [134.48.4.25]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA20816 
          for <perldb-interest@fugue.com>; Mon, 2 Oct 1995 13:49:52 -0700
Received: from studsys by studsys.mscs.mu.edu with smtp (Smail3.1.28.1 #9) 
          id m0szrqD-0001NdC; Mon, 2 Oct 95 15:52 CDT
Message-Id: <m0szrqD-0001NdC@studsys.mscs.mu.edu>
Date: Mon, 02 Oct 95 15:52:01 -0500
From: Malathi Gade <gade@studsys.mscs.mu.edu>
X-Mailer: Mozilla 1.1N (X11; I; SunOS 5.4 sun4m)
MIME-Version: 1.0
To: perldb-interest@fugue.com
Subject: Installation of DBI!! HELP!!
X-URL: http://www.hermetica.com/technologia/DBI/faq.html#q13
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=us-ascii

Hello,
 
I am trying to install DBI.  I am getting an error message which
seems like I am missing a config.sh file in perl directory...

Can you please help me with this.

thanks,
Malathi Gade 
gade@mscs.mu.edu


here it goes:   


Build, TEST and INSTALL Perl 5 first. Use version 5.001m or later.
 
    DO NOT build the DBI under the Perl source tree.
 
    Use 'make test' to execute self tests.
 
MakeMaker
        NAME = 'DBI'
        VERSION = '0.63'


Use of uninitialized value at /usr/local/lib/perl5/ExtUtils/MakeMaker.pm line
198.
Can't find config.sh at /usr/local/lib/perl5/ExtUtils/MakeMaker.pm line 198.





-- 
********************************************************************************Malathi
Gade
Department of Mathematics, Statistics and Computerscience
Marquette University
Milwaukee WI 53233
Voice-mail: (414)342-2288
E-mail: gade@studsys.mscs.mu.edu
********************************************************************************


---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06079-2@ignite.demon.co.uk>; Wed, 4 Oct 1995 07:05:53 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 03 Oct 95 21:01:10 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa14873;
          3 Oct 95 22:00 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa10839;
          3 Oct 95 20:57 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA23870 for perldb-interest-real; Tue, 3 Oct 1995 10:19:51 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from hub.ucsb.edu (hub.ucsb.edu [128.111.24.40]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id KAA23866 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 10:19:45 -0700
Received: from dokoka (dokoka.ucsb.edu) by hub.ucsb.edu;
          id AA16472 sendmail 4.1/UCSB-2.1-sun Tue, 3 Oct 95 10:21:31 PDT 
          for perldb-interest@fugue.com
Received: from dokoka.ucsb.edu by dokoka 
          via ESMTP (940816.SGI.8.6.9/940406.SGIv2) id KAA10281;
          Tue, 3 Oct 1995 10:21:25 -0700
Message-Id: <199510031721.KAA10281@dokoka>
To: mhm@austin.ibm.com
Cc: perldb-interest@fugue.com
Subject: Re: Fetching null columns
Reply-To: "Alan K. Stebbens" <aks@hub.ucsb.edu>
In-Reply-To: Your message of Tue, 03 Oct 1995 10:40:51 PDT. <9510031540.AA21984@dax.austin.ibm.com>
Date: Tue, 03 Oct 1995 10:21:24 -0700
From: Alan Stebbens <aks@dokoka.ucsb.edu>

> Ok, question time.  How do we expect the DBI::DBD interfaces to work
> when it comes to columns returning null?
> 
> Suppose we have a table which contains a mixture of null and nonnull
> columns.  As it stands now, the order of the columns is determined by
> either the order in the requesting sql statement or by the order
> returned by "DescribeColumn" (name determined by whether you DB vendor
> if more closely following X/Open CLI or MicroSoft ODBC standards).  As
> such we have a small problem.
> 
> Take the following:
> 
> 
>     #!/usr/local/bin/perl
>     use DBI;
> 
>     DBI->_debug_dispatch(5);
>     $dbh = DBI->connect('sample');
> 
>     $stmt = $ARGV[0];
>     $sth = $dbh->prepare($stmt);
>     print "NUM Params: ",$sth->{'NUM_OF_PARAMS'},"\n";
>     $sth->execute();
>     while (@row = $sth->fetchrow) {
>     	$" = "||"; print "Row: @row\n";
>     }
>     $sth->finish();
> 
> Depending on the number and order of requested columns the while loop
> may not execute.  If the $stmt requests only one column from the table
> and the column can contain NULLs then it is possible to return only
> part of the data. If $stmt requests more than one column and the first
> column requested can contain NULLs, we break again.
> 
> I guess, my point is that we need some method of returning something
> other than a Nullsv or sv_undef and giving the enduser a method of 
> checking the null indicator from the fbh struct.

Why not have "fetchrow" return "undef" for `no more data'?  Then, the
loop looks like this:

    while (defined(@row = $sth->fetchrow)) {
	...
    }

Each column (array element) can then be "undef" (for null), or a defined
value, including the empty string.  A special "isnull" function is
unnecessary. 

> perl -de 0

Loading DB routines from $RCSfile: perl5db.pl,v $$Revision: 4.1 $$Date: 92/08/07 18:24:07 $
Emacs support available.

Enter h for help.

main::(-e:1):   0
  DB<1> $x[0] = 1

  DB<2> $x[1] = ''

  DB<3> $x[2] = 2

  DB<4> $x[3] = undef

  DB<5> $x[4] = 'foo'

  DB<6> p join(', ', @x)
1, , 2, , foo
  DB<7> p join(', ', map(defined, @x))
1, 1, 1, , 1
  DB<8> 
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06079-7@ignite.demon.co.uk>; Wed, 4 Oct 1995 07:06:49 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 02:19:40 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa08290;
          4 Oct 95 3:18 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa10141;
          4 Oct 95 3:11 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA25119 for perldb-interest-real; Tue, 3 Oct 1995 17:48:30 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id RAA25115 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 17:48:28 -0700
Received: by gw.home.vix.com id AA28419; Tue, 3 Oct 95 17:50:39 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id bb26504;
          3 Oct 95 12:45 +0100
Received: from ig.co.uk by lion id <26421-0@lion>;
          Tue, 3 Oct 1995 02:36:16 +0100
To: perldb-interest@vix.com, abinash@cage.home.vix.com
Subject: Re: Make Errors in DBI on SunOS 4.1.3 and Perl 5.0
Date: Tue, 3 Oct 1995 02:36:16 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510031245.bb26504@relay-3.mail.demon.net>


> From: Abinash Tripathy <abinash@cage.home.vix.com>
> Content-Type> : > MULTIPART/MIXED> ; > BOUNDARY="1430353583-216079660-812665507=:21959"> 
> 
> 	I have followed the steps needed to Make DBI.  
> 
> 1. >perl Makefile.PL (works fine - no errors)
> 
> 2. >make (error - listed in the attachment)
> 
> Any help will be greatly appreciated. Thanks, Abinash
> 
> Abinash Tripathy
> 4201 Massachusetts Ave, N.W Apt 3030C    Ph:(202) 363 0604(home)
> Washington D.C 20016   (202) 885 1479 (FAX) (202) 885 2767(work)
> email:abinash@email.cas.american.edu at0509a@american.edu
> WWW  :http://www.cas.american.edu/~abinash/
> --
> 
> --1430353583-216079660-812665507=:21959
> Content-Type: TEXT/PLAIN; charset=US-ASCII; name="makerror.txt"
> Content-Transfer-Encoding: BASE64
> Content-ID: <Pine.SUN.3.91.951002162507.21959A@euterpe>
> Content-Description: Bummer
> 
> bWFrZQ0KbWtkaXIgLi9ibGliDQpta2RpciAuL2JsaWIvYXV0bw0KbWtkaXIg
> Li9ibGliL2F1dG8vREJJDQovdXNyL2xvY2FsL2Jpbi9wZXJsIC1JL3Vzci9s
> b2NhbC9saWIvcGVybDUvc3VuNC1zdW5vcyAtSS91c3IvbG9jYWwvbGliL3Bl
> cmw1IC91cw0Kci9sb2NhbC9saWIvcGVybDUvRXh0VXRpbHMveHN1YnBwIC10
> eXBlbWFwIC91c3IvbG9jYWwvbGliL3Blcmw1L0V4dFV0aWxzL3R5cGVtYXAN
> CiBEQkkueHMgPkRCSS50YyAmJiBtdiBEQkkudGMgREJJLmMNCmNjIC1jIC1P
> IC1waWMgLUkvdXNyL2xvY2FsL2xpYi9wZXJsNS9zdW40LXN1bm9zL0NPUkUg
> ICBEQkkuYw0KLi9EQklYUy5oOiAzNTogdW5kZWZpbmVkIGNvbnRyb2wNCm1h
> a2U6ICoqKiBbREJJLm9dIEVycm9yIDI=
> --1430353583-216079660-812665507=:21959--
> 
You'll find me rather more helpful if you avoid encodings I can't read
as plain text since I'm not using a mime reader and I've not time to fiddle.

Given the size of the attachment I presume you've not read the part of
the README which lists what to info to send.

Tim.
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06079-11@ignite.demon.co.uk>; Wed, 4 Oct 1995 07:08:06 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 02:36:06 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa13235;
          4 Oct 95 3:34 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa06468;
          3 Oct 95 19:50 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA23664 for perldb-interest-real; Tue, 3 Oct 1995 08:38:49 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA23660 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 08:38:47 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id KAA120593 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 10:40:53 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA21984;
          Tue, 3 Oct 1995 10:40:51 -0500
Message-Id: <9510031540.AA21984@dax.austin.ibm.com>
To: perldb-interest@fugue.com
Subject: Fetching null columns
Date: Tue, 03 Oct 95 10:40:51 -0500


Ok, question time.  How do we expect the DBI::DBD interfaces to work
when it comes to columns returning null?

Suppose we have a table which contains a mixture of null and nonnull
columns.  As it stands now, the order of the columns is determined by
either the order in the requesting sql statement or by the order
returned by "DescribeColumn" (name determined by whether you DB vendor
if more closely following X/Open CLI or MicroSoft ODBC standards).  As
such we have a small problem.

Take the following:


    #!/usr/local/bin/perl
    use DBI;

    DBI->_debug_dispatch(5);
    $dbh = DBI->connect('sample');

    $stmt = $ARGV[0];
    $sth = $dbh->prepare($stmt);
    print "NUM Params: ",$sth->{'NUM_OF_PARAMS'},"\n";
    $sth->execute();
    while (@row = $sth->fetchrow) {
    	$" = "||"; print "Row: @row\n";
    }
    $sth->finish();

Depending on the number and order of requested columns the while loop
may not execute.  If the $stmt requests only one column from the table
and the column can contain NULLs then it is possible to return only
part of the data. If $stmt requests more than one column and the first
column requested can contain NULLs, we break again.

I guess, my point is that we need some method of returning something
other than a Nullsv or sv_undef and giving the enduser a method of 
checking the null indicator from the fbh struct.

We already maintain the information, so it is just a matter of making it
available to the enduser.  In essence, an $sth->isnull($index) function
or $sth->{'Column Name'}

Problems:
  For $sth->isnull($index):
    1) requires the enduser to be able to determine the order of the
       columns requested.  Not much of a problem if the enduser
       specified all the columns in the SQL, but a major problem is
       the enduser did a "select * from...."

  For $sth->{'column name'}:
    1) the memory overhead. 
	2) Do we create a hash for every column or only those that can
       contain NULLs.  What do we return if the enduser decides to
       test a column which can not contain NULLs.

Any thoughts? Comments?

Mike
mhm@austin.ibm.com

1) provide 


---------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06079-14@ignite.demon.co.uk>; Wed, 4 Oct 1995 07:10:45 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 04:49:37 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa20545;
          4 Oct 95 5:49 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa04567;
          4 Oct 95 1:53 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA24802 for perldb-interest-real; Tue, 3 Oct 1995 16:34:07 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from eve.mscs.mu.edu (eve.mscs.mu.edu [134.48.4.166]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id QAA24798 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 16:34:05 -0700
Received: by eve.mscs.mu.edu (Smail3.1.28.1 #9) id m0t0Gp6-0002DjC;
          Tue, 3 Oct 95 18:32 CDT
Message-Id: <m0t0Gp6-0002DjC@eve.mscs.mu.edu>
From: Saima Zobair <zobair@marque.mscs.mu.edu>
Subject: subscribe
To: perldb-interest@fugue.com
Date: Tue, 3 Oct 1995 18:32:32 -0500 (CDT)
X-Mailer: ELM [version 2.4 PL23]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 138



Hello,

I would like to subscribe to the perldb-interest mailing list.
Please include me in!!

Thanks,
Saima Zobair

zobair@mscs.mu.edu
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06079-17@ignite.demon.co.uk>; Wed, 4 Oct 1995 07:11:21 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 05:50:35 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa04078;
          4 Oct 95 6:49 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa16352;
          4 Oct 95 4:37 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id TAA25469 for perldb-interest-real; Tue, 3 Oct 1995 19:08:05 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id TAA25465 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 19:07:59 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id be26504;
          3 Oct 95 12:46 +0100
Received: from ig.co.uk by lion id <26473-0@lion>;
          Tue, 3 Oct 1995 02:47:56 +0100
To: skimo@dns.ufsia.ac.be
Subject: Re: Multiple DBD's
Cc: perldb-interest@fugue.com
Date: Tue, 3 Oct 1995 02:47:56 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510031246.be26504@relay-3.mail.demon.net>


> From: Sven Verdoolaege <skimo@dns.ufsia.ac.be>
> 
> > > From: Sven Verdoolaege <skimo@dns.ufsia.ac.be>
> > > 
> > > I hope my email troubles are over; if not and if you
> > > get this message but can't reach me here, try SVEN.VERDOOLAEGE@student.kuleuven.ac.be; though not until tomorrow.
> > > 
> > > I sent you a long version of my question earlier (don't know whether you got it)
> > > 
> > I got it and replied. My reply may be heldup/lost.
> > 
> > > Here's the short version:
> > > Can i connect to two databases using different DBD's simultaneously 
> > 
> > Yes.
> > 
> > > If it is possible, could you give me a small example ?
> > > (something with an Oracle and an mSQL db is the object)
> > > 
> > 	$dbh1 = DBI->connect(..., 'Oracle') or die "...";
> > 	$dbh2 = DBI->connect(..., 'mSQL') or die "...";
> > 
> doesn't seem to work for me; maybe this is a bug in DBD::mSQL then ?

Maybe. CC'd to perldb-interest.

> my script:
> #!/u01/home/verdools/bin/perl
> use DBI;
> $DB='ufpers';
> $ENV{'MSQL_HOME'} = "/usr/local/Minerva";
> $ENV{'MSQL_TCP_PORT'} = 22532;
> $dbhD = DBI->connect( 'dns',$DB,'','mSQL') || die("geen database");
> $dbhD->disconnect;
> $ENV{'ORACLE_HOME'} = "/u01/home/oracle/product/7.1.4";
> $ENV{'ORAHOME'} = "/u01/home/oracle/product/7.1.4";
> print "before\n";
> $dbhS = DBI->connect( $DB, 'job_verdool_s', 'my password:-)','Oracle' ) || die("geen ;
> print "after\n";
> $dbhS->disconnect;
> 
> my output:
> before
> rc: 0   what: Unknown MSQL Server Host (ufpers)
> Database handle DBI::db=HASH(0x1400fff18) DESTROY ignored - never set up at /u0.
> geen database at ./cp2 line 11.
> 
> if i comment the connect and disconnect lines from mSQL, i get
> before
> after
> 
> if i put the oracle stuff before the mSQL stuff, i get
> before 
> after
> Memory fault - core dumped
> 
A stack trace from the core dump may be very helpful.
A log trace from PERL_DBI_DEBUG=3 may also be very helpful.

> Sven
>
Tim. 
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06080-21@ignite.demon.co.uk>; Wed, 4 Oct 1995 07:12:48 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 03 Oct 95 22:53:24 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id aj20995;
          3 Oct 95 23:52 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <07872-0@frigate.doc.ic.ac.uk>; Tue, 3 Oct 1995 22:26:01 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA24204 for perldb-interest-real; Tue, 3 Oct 1995 12:58:58 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA24200 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 12:58:56 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id PAA72943;
          Tue, 3 Oct 1995 15:01:09 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for mhm@austin.ibm.com at austin.ibm.com; id AA25860;
          Tue, 3 Oct 1995 15:01:03 -0500
Message-Id: <9510032001.AA25860@dax.austin.ibm.com>
To: "Alan K. Stebbens" <aks@hub.ucsb.edu>
Cc: mhm@austin.ibm.com, perldb-interest@fugue.com
Subject: Re: Fetching null columns
In-Reply-To: Your message of Tue, 03 Oct 95 10:21:24 -0700. <199510031721.KAA10281@dokoka>
Date: Tue, 03 Oct 95 15:01:02 -0500


Alan Stebbens <aks@dokoka.ucsb.edu>  writes:
> 
> Why not have "fetchrow" return "undef" for `no more data'?  Then, the
> loop looks like this:
> 
>     while (defined(@row = $sth->fetchrow)) {
> 	...
>     }
> 
> Each column (array element) can then be "undef" (for null), or a defined
> value, including the empty string.  A special "isnull" function is
> unnecessary. 

If the first item in @row is undef then the loop is terminated.  Other
than defining a new method of detmining a NULL  column, the only thing
left is to do something along the lines of 
"($status,@row) = $sth->fetchrow();" or assuming that $row[0] is always
the status.

Mike
mhm@austin.ibm.com
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06080-25@ignite.demon.co.uk>; Wed, 4 Oct 1995 07:13:43 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 03 Oct 95 22:53:22 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id ak20995;
          3 Oct 95 23:52 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <07959-0@frigate.doc.ic.ac.uk>; Tue, 3 Oct 1995 22:29:32 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA24198 for perldb-interest-real; Tue, 3 Oct 1995 12:57:33 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA24194 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 12:57:32 -0700
From: lm_truong@ccmail.pnl.gov
Received: by gw.home.vix.com id AA07360; Tue, 3 Oct 95 12:59:46 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from ccmail.pnl.gov by pnl.gov (PMDF V4.3-13 #6012) 
          id <01HW0651XB3494DNM0@pnl.gov>;
          Tue, 03 Oct 1995 12:59:42 -0700 (PDT)
Date: Tue, 03 Oct 1995 13:10 -0700 (PDT)
Subject: oraperl &ora_open and &ora_close problem
To: perldb-interest@vix.com
Message-Id: <01HW0651YCR694DNM0@pnl.gov>
Mime-Version: 1.0
Content-Transfer-Encoding: 7BIT

     
     
     I have a problem with oraperl &ora_open and &ora_close.  Whenever I 
     execute a sql statement using ora_open, I have to close it.  This 
     degrades my program's performance.  Is there a way to tell ORACLE to 
     reuse the cursor in oraperl?
     
     Thanks in advance for any help!
     
     Lien
     
      
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06080-34@ignite.demon.co.uk>; Wed, 4 Oct 1995 07:15:34 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 03 Oct 95 23:53:52 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id ag17202;
          4 Oct 95 0:52 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <11401-0@frigate.doc.ic.ac.uk>; Wed, 4 Oct 1995 00:47:19 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA24624 for perldb-interest-real; Tue, 3 Oct 1995 15:07:07 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from merlin.nando.net (root@merlin.nando.net [152.52.2.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA24620 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 15:06:59 -0700
Received: from nando.net.nando.net (parsifal.nando.net) 
          by merlin.nando.net (4.1/davel-nando/dec93) id AA14039;
          Tue, 3 Oct 95 18:09:00 EDT
Received: by nando.net.nando.net (4.1/SMI-4.1) id AB07391;
          Tue, 3 Oct 95 18:09:07 EDT
From: Chip Salzenberg <chs@nando.net>
Message-Id: <9510032209.AB07391@nando.net.nando.net>
Subject: Re: Fetching null columns
To: mhm@austin.ibm.com
Date: Tue, 3 Oct 1995 18:09:02 -0400 (EDT)
Cc: aks@hub.ucsb.edu, perldb-interest@fugue.com
In-Reply-To: <9510032001.AA25860@dax.austin.ibm.com> from "mhm@austin.ibm.com" at Oct 3, 95 03:01:02 pm
X-Mailer: ELM [version 2.4 PL23]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 623

According to mhm@austin.ibm.com:
> Alan Stebbens <aks@dokoka.ucsb.edu>  writes:
> > Each column (array element) can then be "undef" (for null), or a defined
> > value, including the empty string.  A special "isnull" function is
> > unnecessary. 
> 
> If the first item in @row is undef then the loop is terminated.

If that's true in 5.001m, then there's a bug in 5.001m.  It's still a
good interface to use undef "NULL column" and () for "no more rows".
-- 
               Chip Salzenberg, aka <chs@nando.net>
        "Hey, it's the Miss Alternate Universe Pageant!"
          -- Crow T. Robot, MST3K: "Stranded In Space"
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06080-40@ignite.demon.co.uk>; Wed, 4 Oct 1995 07:16:39 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 02:10:07 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id ac04946;
          4 Oct 95 3:09 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <12948-0@frigate.doc.ic.ac.uk>; Wed, 4 Oct 1995 02:14:42 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA24855 for perldb-interest-real; Tue, 3 Oct 1995 16:40:35 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from eve.mscs.mu.edu (eve.mscs.mu.edu [134.48.4.166]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id QAA24851 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 16:40:34 -0700
Received: by eve.mscs.mu.edu (Smail3.1.28.1 #9) id m0t0GvJ-0002DjC;
          Tue, 3 Oct 95 18:38 CDT
Message-Id: <m0t0GvJ-0002DjC@eve.mscs.mu.edu>
From: Saima Zobair <zobair@marque.mscs.mu.edu>
Subject: subscription
To: perldb-interest@fugue.com
Date: Tue, 3 Oct 1995 18:38:56 -0500 (CDT)
X-Mailer: ELM [version 2.4 PL23]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 261


Hello,

I am a little confused about the 2 mailing lists. I want to
be on both the mailing lists for perldb-interest...
I am not sure which one I am on right now. Please put
me on both of them if they are not the same.

Thanks,
Saima Zobair
zobair@mscs.mu.edu
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06080-46@ignite.demon.co.uk>; Wed, 4 Oct 1995 07:17:46 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 02:15:37 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa06994;
          4 Oct 95 3:14 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA25125 for perldb-interest-real; Tue, 3 Oct 1995 17:48:49 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id RAA25121 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 17:48:40 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id bk26504;
          3 Oct 95 12:46 +0100
Received: from ig.co.uk by lion id <26793-0@lion>;
          Tue, 3 Oct 1995 03:44:22 +0100
To: chet@watson.ibm.com
Subject: Re: FYI -- progress on problem
Cc: mhm@austin.ibm.com, perldb-interest@fugue.com
Date: Tue, 3 Oct 1995 03:44:22 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510031246.bk26504@relay-3.mail.demon.net>


> From: Chet Murthy <chet@watson.ibm.com>
> 
> Hi, Tim, Mike,
> 
> I finally have a relatively precise profile of the problem I'm seeing.
> 
> It is that the parent handle of a database implementation
> datastructure is being freed before the kid.  In particular, in this
> case, it is the root handle (the driver handle, I think?) which is
> being freed.
> 
Remember that the dbihcom structure will hang around until all the
references to it (in its kids) are freed. At least that's what's
supposed to happen. Things get a little wild during global destruction!

> I will investigate further, and I think that I can fix this, but I
> figured I'd let you know.  Also, there's a one-line typo in:
> 
>     if (parent) {
> 	imp_xxh_t *parent_com = DBIh_COM(parent);
> 	DBIc_PARENT_H(imp)   = SvREFCNT_inc(parent); /* ensure it lives	*/
> 	DBIc_PARENT_COM(imp) = parent_com;	  /* shortcut for speed	*/
> 	DBIc_TYPE(imp)	     = DBIc_TYPE(parent_com) + 1;	/* XXX	*/
> 	DBIc_FLAGS(imp)      = DBIc_FLAGS(parent_com) & DBIcf_INHERITMASK;
> 	++DBIc_KIDS(parent_com);
> 
>     } else {			/* only a driver (drh) has no parent	*/
> 	DBIc_PARENT_H(imp)   = &sv_undef;
> 	DBIc_PARENT_COM(imp)   = NULL;
> ----------------^^^----------------------------------
> 
>         This was _DBIc_PARENT_H in the sources that I FTP'd.
> 
> 	DBIc_TYPE(imp)	     = DBIt_DR;
> 	DBIc_FLAGS(imp)      = 0;
> 	DBIc_WARN_on(imp);	/* only set here, childern inherit	*/
>     }
> 
> 
> I assume that this shoudl DBIc_PARENT_COM, as I have written it above.

Thanks. Fixed in my copy now.

The best way to show code changes is a context diff. Failing that something
like this works well:

        DBIc_PARENT_H(imp)   = &sv_undef;
-       DBIc_PARENT_H(imp)   = NULL;
+       DBIc_PARENT_COM(imp) = NULL;
        DBIc_TYPE(imp)       = DBIt_DR;

It's often important that I can read and understand these things without
any ambiguity.

> But that didn't fix my problem (unfortunately).
> 
Off-hand I can't think of any nasty effects of that one.

> From: Chet Murthy <chet@watson.ibm.com>
>
> It seems that there is a problem in the dbih_clearcom function.
> Here's the scenario: if we're doing global destruction, and the
> handles get destroyed in the wrong order, then during that very same
> destruction the memory for those handles could get re-used.  So if:
> 
> (1) handle H2 points to handle H1
> 
> (2) H1 is freed *first*
> 
> (3) H1's memory is re-used
> 
> (4) H2 is then freed, and decrements the "kid" count of H1
> 
> (5) This corrupts the memory of H1, which is being used for something
> completely different.
> 
You're not making it clear if H1 etc is a handle, a dbihcom struct or both.

> There is definitely one problem,
> 
>     if (DBIc_PARENT_COM(imp_xxh) && !gd) {
> --------------------------------^^^^^^^---------------HERE
>     --DBIc_KIDS(DBIc_PARENT_COM(imp_xxh));
>     }

I can't tell without looking at the code what it is you're saying...

> Does this sound right?  And if so, is the fix I propose the right one?
> And if not (or even if yes) are there other places where I might look
> for such things?

[rummage] Ah, you're suggesting adding the "&& !gd" test. Umm, okay. Done.
Note that drivers which test DBIc_KIDS should not bother if dirty is true
(DBD::Oracle checks the dirty flag already).

> Thanks,
> --chet--

Thanks Chet - welcome to the team! :-)

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06080-51@ignite.demon.co.uk>; Wed, 4 Oct 1995 07:18:42 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 03:53:35 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa18689;
          4 Oct 95 4:51 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id TAA25508 for perldb-interest-real; Tue, 3 Oct 1995 19:19:04 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id TAA25504 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 19:19:01 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id bc26504;
          3 Oct 95 12:45 +0100
Received: from ig.co.uk by lion id <26440-0@lion>;
          Tue, 3 Oct 1995 02:40:23 +0100
To: perldb-interest@fugue.com, gade@studsys.mscs.mu.edu
Subject: Re: Installation of DBI!! HELP!!
Date: Tue, 3 Oct 1995 02:40:23 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510031245.bc26504@relay-3.mail.demon.net>


> From: Malathi Gade <gade@studsys.mscs.mu.edu>
> 
> Hello,
>  
> I am trying to install DBI.  I am getting an error message which
> seems like I am missing a config.sh file in perl directory...
> 
> Can you please help me with this.
> 
> thanks,
> Malathi Gade 
> gade@mscs.mu.edu
> 
> here it goes:   
> 
> Build, TEST and INSTALL Perl 5 first. Use version 5.001m or later.
>     DO NOT build the DBI under the Perl source tree.
>     Use 'make test' to execute self tests.
> MakeMaker
>         NAME = 'DBI'
>         VERSION = '0.63'
> 
> Use of uninitialized value at /usr/local/lib/perl5/ExtUtils/MakeMaker.pm line
> 198.
> Can't find config.sh at /usr/local/lib/perl5/ExtUtils/MakeMaker.pm line 198.
> 
Looks like a perl installation problem.

Make sure you have Perl5.001*m* built, tested and installed cleanly.

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06080-59@ignite.demon.co.uk>; Wed, 4 Oct 1995 07:20:06 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 04:39:23 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa09067;
          4 Oct 95 5:35 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA25661 for perldb-interest-real; Tue, 3 Oct 1995 20:06:06 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from hub.ucsb.edu (hub.ucsb.edu [128.111.24.40]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id UAA25657 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 20:06:00 -0700
Received: from dokoka (dokoka.ucsb.edu) by hub.ucsb.edu;
          id AA03201 sendmail 4.1/UCSB-2.1-sun Tue, 3 Oct 95 20:08:11 PDT 
          for perldb-interest@fugue.com
Received: from dokoka.ucsb.edu by dokoka 
          via ESMTP (940816.SGI.8.6.9/940406.SGIv2) id UAA12642;
          Tue, 3 Oct 1995 20:08:09 -0700
Message-Id: <199510040308.UAA12642@dokoka>
To: Chip Salzenberg <chs@nando.net>
Cc: mhm@austin.ibm.com, perldb-interest@fugue.com
Subject: Re: Fetching null columns
Reply-To: "Alan K. Stebbens" <aks@hub.ucsb.edu>
In-Reply-To: Your message of Tue, 03 Oct 1995 18:09:02 PDT. <9510032209.AB07391@nando.net.nando.net>
Date: Tue, 03 Oct 1995 20:08:03 -0700
From: Alan Stebbens <aks@dokoka.ucsb.edu>


> According to mhm@austin.ibm.com:
> > Alan Stebbens <aks@dokoka.ucsb.edu>  writes:
> > > Each column (array element) can then be "undef" (for null), or a defined
> > > value, including the empty string.  A special "isnull" function is
> > > unnecessary. 
> > 
> > If the first item in @row is undef then the loop is terminated.
> 
> If that's true in 5.001m, then there's a bug in 5.001m.  It's still a
> good interface to use undef "NULL column" and () for "no more rows".

This is not true in 5.001m.  It is safe to use the construct:

    while (defined(@row = dbfetchrow $dbh)) {
	...
    }

Here's a piece of Perl 5.001m:

    > perl -de 0

    Loading DB routines from $RCSfile: perl5db.pl,v $$Revision: 4.1 $$Date: 92/08/07 18:24:07 $
    Emacs support available.

    Enter h for help.

    main::(-e:1):   0
      DB<1> $x[0] = undef;

      DB<2> $x[1] = 'foo';

      DB<3> p join(',',@x);
    ,foo
      DB<4> p join(',',map(defined,@x))
    ,1
-->   DB<5> if(defined(@x)){print "ok\n";}else{print"undef\n";}
    ok

      DB<6> p $]
    5.001
      DB<7> 
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <08661-0@ignite.demon.co.uk>; Wed, 4 Oct 1995 11:21:50 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 07:45:18 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id ab02921;
          4 Oct 95 8:44 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa27491;
          4 Oct 95 8:43 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id XAA26118 for perldb-interest-real; Tue, 3 Oct 1995 23:32:29 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id XAA26112 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 23:32:26 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id az26504;
          3 Oct 95 12:45 +0100
Received: from ig.co.uk by lion id <25722-0@lion>;
          Tue, 3 Oct 1995 02:26:27 +0100
To: mhm@austin.ibm.com, chet@watson.ibm.com
Subject: Re: DB2perl
Cc: perldb-interest@fugue.com
Date: Tue, 3 Oct 1995 02:26:27 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510031245.az26504@relay-3.mail.demon.net>


> From: mhm@austin.ibm.com
> 
> Tim,
>    What sort of optimizations were thinking about for dbd_st_fetch?  
> DBD::Oracle, as well as DBD::DB2 both carry your comment about
> the ability to optimize later.
> 
Mainly using native types where possible. For Oracle we currently use
strings for everything which is not optimal.

>    One of my alpha testers is asking if the following change is a valid
> fix for null variables returned from the database.  Given the availability
> of null indicators I see no reason to make the change unless it can
> be worked into the optimizations you have been thinking about.

> From: mhm@austin.ibm.com
> Subject: Dealing with null indicator variables
> 
> How does one deal with null indicator variables specified by the enduser?
> 
> >From what I can tell it doesn't appear to be done at the present time.
> Am I correct or just missing the appropriate piece of magic?

To be a DBI conforming driver for a database which supports NULLS you
must return NULLS as undefs and accept undefs as meaning NULL for bind
variables. Here's the DBD::Oracle code:

In dbd_bind_ph:

    if (SvOK(newvalue)) {
        ...
    } else {
        value_ptr = "";
        value_len = 0;
        phs->indp = -1;
    }


In dbd_st_fetch:

        } else if (rc == 1405) {        /* field is null - return undef */
            (void)SvOK_off(sv);

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <08660-5@ignite.demon.co.uk>; Wed, 4 Oct 1995 11:23:55 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 07:44:36 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa26487;
          4 Oct 95 8:43 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id XAA26095 for perldb-interest-real; Tue, 3 Oct 1995 23:32:14 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id XAA26091 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 23:32:12 -0700
Received: by gw.home.vix.com id AA25382; Tue, 3 Oct 95 23:34:21 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id au26504;
          3 Oct 95 12:45 +0100
Received: from ig.co.uk by lion id <25524-0@lion>;
          Tue, 3 Oct 1995 01:22:24 +0100
To: perldb-interest@vix.com, LACAILLD@wpgate.hqpacaf.af.mil
Subject: Re: WOW Errors
Date: Tue, 3 Oct 1995 01:22:24 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510031245.au26504@relay-3.mail.demon.net>


> From: Damon LaCaille <LACAILLD@wpgate.hqpacaf.af.mil>
> 
> Sorry to bug everyone again, but I think I've pretty much narrowed my
> problem down to a few things, and hopefully somebody out on this
> mailing list can help me out here...
> 
> I'm finally calling the procedure properly, I'm getting the following error
> though:
> 
> dbLogon(): orlon() returns 1034d
> 
> In my last post I stated what the Oracle errors book says it could be. 
> We've relinked oracle, it was initialized, and the ORACLE_SID
> environment variable is pointing to the correct instance of Oracle (TRNG).
> So I don't know what's wrong here... maybe somebody can help?

I've got no experience with WOW and this list is not really the place
for supporting it. Sorry.

Try comp.database.oracle and comp.infosystems.www.authoring.cgi.

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <08660-7@ignite.demon.co.uk>; Wed, 4 Oct 1995 11:24:17 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 07:45:42 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa26962;
          4 Oct 95 8:44 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id XAA26114 for perldb-interest-real; Tue, 3 Oct 1995 23:32:27 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id XAA26109 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 23:32:25 -0700
Received: by gw.home.vix.com id AA25399; Tue, 3 Oct 95 23:34:37 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id ay26504;
          3 Oct 95 12:45 +0100
Received: from ig.co.uk by lion id <25680-0@lion>;
          Tue, 3 Oct 1995 02:14:00 +0100
To: perldb-interest@vix.com, spoliset@mailbox.syr.edu
Subject: Re: oraperl installation errors... please help...
Date: Tue, 3 Oct 1995 02:14:00 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510031245.ay26504@relay-3.mail.demon.net>


> From: Srinivas Polisetty <spoliset@mailbox.syr.edu>
> 
> Hi All,
> 	Could someone help me with my installation of 'oraperl' for which 
> I had been struggling for a while now, and in vain. 
> 
> My machine specs:  Sun4 Sparc, running SunOS UNIX
> 
> [...]
> 
> Some thing is terribly wrong, and I can't figure out what!! Could anyone 
> please help me with this.
> 
> Thank you very much,
> Srinvas.
> 
This list is not really the place toget support for Perl4 oraperl.

Take a look in ftp.demon.co.uk:/pub/perl/db/perl4/oraperl/ and if
you still have problems post a message in comp.lang.perl.misc and
comp.databases.oracle.

Sorry I can't be more help. No time. Home to bed.

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <08660-9@ignite.demon.co.uk>; Wed, 4 Oct 1995 11:24:26 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 07:50:32 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa29024;
          4 Oct 95 8:49 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id XAA26089 for perldb-interest-real; Tue, 3 Oct 1995 23:31:45 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id XAA26085 
          for <perldb-interest@fugue.com>; Tue, 3 Oct 1995 23:31:44 -0700
Received: by gw.home.vix.com id AA25370; Tue, 3 Oct 95 23:33:56 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id ar26504;
          3 Oct 95 12:44 +0100
Received: from ig.co.uk by lion id <25439-0@lion>;
          Tue, 3 Oct 1995 00:56:38 +0100
To: perldb-interest@vix.com, ks@ic.uva.nl
Subject: Re: Happy birthday DBperl!
Date: Tue, 3 Oct 1995 00:56:38 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510031244.ar26504@relay-3.mail.demon.net>

Thanks Karel.

And thanks to everyone who has put up with my alternate ranting
and silences over the last three years.

I'm busy again at the moment but maybe not for too much longer.

Tim.

----- Begin Included Message -----

From: "ks@ic.uva.nl" <ks@ic.uva.nl>

As Tim Bunce <Tim.Bunce@ig.co.uk> wrote on Thu, 17 Aug 1995 22:39:06
+0100:
>
> For those too young to remember, the DBperl effort will have its
> third birthday on September 29th. It would be kind'a nice to have
> something to show for it after three years :-)
>

              ^  ^  ^
              |  |  |
             --------
            ==========
           \----------/

It's a small cake for me but a big one for mankind Tim!

Regards,
Karel Sprenger <ks@ic.uva.nl>

----- End Included Message -----


---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <12965-4@ignite.demon.co.uk>; Wed, 4 Oct 1995 16:01:41 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 13:51:31 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa06696;
          4 Oct 95 14:50 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA28243 for perldb-interest-real; Wed, 4 Oct 1995 04:56:58 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-1.mail.demon.net (relay-1.mail.demon.net [158.152.1.140]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id EAA28239 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 04:56:55 -0700
Received: from post.demon.co.uk by relay-1.mail.demon.net id ad12625;
          4 Oct 95 12:18 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <10170-0@ignite.demon.co.uk>;
          Wed, 4 Oct 1995 11:59:13 +0100
To: perldb-interest@fugue.com, zobair@marque.mscs.mu.edu
Subject: Re: subscription
Date: Wed, 4 Oct 1995 11:59:13 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510041218.ad12625@relay-1.mail.demon.net>


> From: Saima Zobair <zobair@marque.mscs.mu.edu>
> 
> Hello,
> 
> I am a little confused about the 2 mailing lists. I want to
> be on both the mailing lists for perldb-interest...
> I am not sure which one I am on right now. Please put
> me on both of them if they are not the same.
> 
There is only one list. The perldb-interest-request address is for
administration messages such as subscription requests.

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <14653-0@ignite.demon.co.uk>; Wed, 4 Oct 1995 17:53:48 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 16:50:08 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa24326;
          4 Oct 95 17:49 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id FAA28443 for perldb-interest-real; Wed, 4 Oct 1995 05:38:33 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id FAA28439 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 05:38:29 -0700
Received: by gw.home.vix.com id AA22744; Wed, 4 Oct 95 05:40:07 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from skimo@localhost) by dns.ufsia.ac.be (8.6.12/8.6.9) id OAA11350;
          Wed, 4 Oct 1995 14:41:55 +0100
From: Sven Verdoolaege <skimo@dns.ufsia.ac.be>
Message-Id: <199510041341.OAA11350@dns.ufsia.ac.be>
Subject: Re: Multiple DBD's
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Date: Wed, 4 Oct 1995 14:41:55 +0100 (MET)
Cc: perldb-interest@vix.com
In-Reply-To: <9510031246.be26504@relay-3.mail.demon.net> from "Tim Bunce" at Oct 3, 95 02:47:56 am
X-Stardate: [-31]6387.85
X-Url: http://dns.ufsia.ac.be/~skimo
X-Mailer: ELM [version 2.4 PL24 ME8a]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 10748

For those on the list: i have problems connecting to
both an mSQL and an Oracle database

here's the trace from PERL_DBI_DEBUG=3
IN DBI.pm
    DBI dispatch debug level set to 3
install_method DBI::db::EXISTS	
install_method DBI::db::event	    usage: min 2, max 3, '$message, $retvalue', flags 0x1
install_method DBI::db::errstr	
install_method DBI::db::debug	    usage: min 1, max 2, '[$debug_level]', flags 0x1
install_method DBI::db::CLEAR	
install_method DBI::db::NEXTKEY	
install_method DBI::db::commit	    usage: min 1, max 1, '', flags 0x1
install_method DBI::db::DESTROY	
install_method DBI::db::FETCH	
install_method DBI::db::rollback	    usage: min 1, max 1, '', flags 0x1
install_method DBI::db::errstate	    usage: min 1, max 1, '', flags 0x1
install_method DBI::db::disconnect	    usage: min 1, max 1, '', flags 0x1
install_method DBI::db::rows	
install_method DBI::db::func	, flags 0x2
install_method DBI::db::STORE	
install_method DBI::db::prepare	    usage: min 2, max 3, '$statement [, \%attribs]', flags 0x1
install_method DBI::db::errmsg	    usage: min 1, max 1, '', flags 0x1
install_method DBI::db::FIRSTKEY	
install_method DBI::db::do	    usage: min 2, max 3, '$statement [, \%attribs]', flags 0x1
install_method DBI::db::private_data	    usage: min 1, max 1, '', flags 0x1
install_method DBI::db::handler	    usage: min 2, max 2, '\&handler', flags 0x1
install_method DBI::dr::EXISTS	
install_method DBI::dr::disconnect_all	    usage: min 1, max 1, '', flags 0x1
install_method DBI::dr::event	    usage: min 2, max 3, '$message, $retvalue', flags 0x1
install_method DBI::dr::errstr	
install_method DBI::dr::debug	    usage: min 1, max 2, '[$debug_level]', flags 0x1
install_method DBI::dr::CLEAR	
install_method DBI::dr::NEXTKEY	
install_method DBI::dr::connect	    usage: min 1, max 5, '[$db [,$user [,$passwd [,\%attr]]]]', flags 0x1
install_method DBI::dr::FETCH	
install_method DBI::dr::DESTROY	
install_method DBI::dr::rows	
install_method DBI::dr::func	, flags 0x2
install_method DBI::dr::STORE	
install_method DBI::dr::FIRSTKEY	
install_method DBI::dr::private_data	    usage: min 1, max 1, '', flags 0x1
install_method DBI::st::EXISTS	
install_method DBI::st::finish	    usage: min 1, max 1, '', flags 0x1
install_method DBI::st::fetchrow	
install_method DBI::st::event	    usage: min 2, max 3, '$message, $retvalue', flags 0x1
install_method DBI::st::errstr	
install_method DBI::st::debug	    usage: min 1, max 2, '[$debug_level]', flags 0x1
install_method DBI::st::CLEAR	
install_method DBI::st::NEXTKEY	
install_method DBI::st::fetch	
install_method DBI::st::FETCH	
install_method DBI::st::DESTROY	
install_method DBI::st::rows	
install_method DBI::st::func	, flags 0x2
install_method DBI::st::bind_param	    usage: min 3, max 4, '$parameter, $var [, \%attribs]', flags 0x1
install_method DBI::st::STORE	
install_method DBI::st::FIRSTKEY	
install_method DBI::st::execute	    usage: min 1, max 0, '[@args]', flags 0x1
install_method DBI::st::private_data	    usage: min 1, max 1, '', flags 0x1
install_method DBI::st::bind_col	    usage: min 3, max 4, '$column, \$var [, \%attribs]', flags 0x1
install_method DBI::st::readblob	    usage: min 4, max 5, '$field, $offset, $len [, \$buf [, $bufoffset]]', flags 0x1
install_method DBI::st::bind_columns	    usage: min 3, max 0, '\%attribs, \$var1 [, \$var2, ...]', flags 0x1
install_driver(Switch): setup @ISA for DBD::Switch::dr
 at /u01/home/verdools/lib/perl5/DBI.pm line 346
install_driver(Switch): setup @ISA for DBD::Switch::db
 at /u01/home/verdools/lib/perl5/DBI.pm line 346
install_driver(Switch): setup @ISA for DBD::Switch::st
 at /u01/home/verdools/lib/perl5/DBI.pm line 346
DBI->connect(dns, ufpers, , mSQL, )
DBI->install_driver DBI mSQL 
 at ./cp2 line 6
DBI->install_driver(mSQL) loaded
install_driver(mSQL): setup @ISA for DBD::mSQL::dr
 at ./cp2 line 6
install_driver(mSQL): setup @ISA for DBD::mSQL::db
 at ./cp2 line 6
install_driver(mSQL): setup @ISA for DBD::mSQL::st
 at ./cp2 line 6
    New DBI::dr (for DBD::mSQL::dr, parent=, id=)
    dbih_setup_handle(DBI::dr=HASH(0x140085538)=>DBI::dr=HASH(0x1400eb098), DBD::mSQL::dr, NULL)
    New DBI::dr => DBI::dr=HASH(0x140085538) (inner=DBI::dr=HASH(0x1400eb098)) for DBD::mSQL::dr
DBI->install_driver(mSQL) = DBI::dr=HASH(0x140085538)
DBI->connect using mSQL driver DBI::dr=HASH(0x140085538)
    >> connect     DISPATCH (DBI::dr=HASH(0x140085538) @4 g0 a1400e8828 r1)
    -> connect for DBD::mSQL::dr (DBI::dr=HASH(0x140085538)~0x1400eb098 'dns' 'ufpers' '')
    New DBI::db (for DBD::mSQL::db, parent=DBI::dr=HASH(0x1400eb098), id=)
    dbih_setup_handle(DBI::db=HASH(0x1400e0718)=>DBI::db=HASH(0x1400e0228), DBD::mSQL::db, NULL)
    New DBI::db => DBI::db=HASH(0x1400e0718) (inner=DBI::db=HASH(0x1400e0228)) for DBD::mSQL::db
    <- connect= DBI::db=HASH(0x1400e0718)
DBI->connect = DBI::db=HASH(0x1400e0718)
    >> disconnect  DISPATCH (DBI::db=HASH(0x1400e0718) @1 g0 a1400e1588 r1)
    -> disconnect for DBD::mSQL::db (DBI::db=HASH(0x1400e0718)~0x1400e0228)
    <- disconnect= 1
DBI->connect(ufpers, job_verdool_s, h7mq24ll, Oracle, )
DBI->install_driver DBI Oracle 
 at ./cp2 line 10
DBI->install_driver(Oracle) loaded
install_driver(Oracle): setup @ISA for DBD::Oracle::dr
 at ./cp2 line 10
install_driver(Oracle): setup @ISA for DBD::Oracle::db
 at ./cp2 line 10
install_driver(Oracle): setup @ISA for DBD::Oracle::st
 at ./cp2 line 10
    New DBI::dr (for DBD::Oracle::dr, parent=, id=)
    dbih_setup_handle(DBI::dr=HASH(0x1400e0728)=>DBI::dr=HASH(0x1400eb468), DBD::Oracle::dr, NULL)
    New DBI::dr => DBI::dr=HASH(0x1400e0728) (inner=DBI::dr=HASH(0x1400eb468)) for DBD::Oracle::dr
DBI->install_driver(Oracle) = DBI::dr=HASH(0x1400e0728)
DBI->connect using Oracle driver DBI::dr=HASH(0x1400e0728)
    >> connect     DISPATCH (DBI::dr=HASH(0x1400e0728) @4 g0 a1400e8828 r1)
    -> connect for DBD::Oracle::dr (DBI::dr=HASH(0x1400e0728)~0x1400eb468 'ufpers' 'job_verdool_s' 'h7mq24ll')
    New DBI::db (for DBD::Oracle::db, parent=DBI::dr=HASH(0x1400eb468), id=)
    dbih_setup_handle(DBI::db=HASH(0x140100fa8)=>DBI::db=HASH(0x1400eb408), DBD::Oracle::db, NULL)
    New DBI::db => DBI::db=HASH(0x140100fa8) (inner=DBI::db=HASH(0x1400eb408)) for DBD::Oracle::db
    >> DESTROY     DISPATCH (DBI::db=HASH(0x140100fa8) @1 g0 a0 r2)
       (outer handle DESTROY ignored)
    >> DESTROY     DISPATCH (DBI::db=HASH(0x1400eb408) @1 g0 a0 r2)
    -> DESTROY for DBD::Oracle::db (DBI::db=HASH(0x1400eb408))
Database handle DBI::db=HASH(0x1400eb408) DESTROY ignored - never set up at /u01/home/verdools/lib/perl5/DBI.pm line 140.
    <- DESTROY= 1
dbih_clearcom 0x140100f48 (com 0x140025c08)
    FLAGS 11: COMSET WARN 
    IMP_DATA 'DBI::db=HASH(0x1400eb408)'
    PARENT DBI::dr=HASH(0x1400eb468)
    dbih_clearcom 0x140025c08 done
    <- connect= undef
DBI->connect = 
geen database at ./cp2 line 10.
DBI::END
DBI::disconnect_all DBI
DBI::disconnect_all for 'mSQL'
    >> disconnect_all DISPATCH (DBI::dr=HASH(0x140085538) @1 g0 a1400e1248 r2)
    -> disconnect_all for DBD::mSQL::dr (DBI::dr=HASH(0x140085538)~0x1400eb098)
    <- disconnect_all= 1
DBI::disconnect_all for 'Oracle'
    >> disconnect_all DISPATCH (DBI::dr=HASH(0x1400e0728) @1 g0 a1400e1248 r2)
    -> disconnect_all for DBD::Oracle::dr (DBI::dr=HASH(0x1400e0728)~0x1400eb468)
    <- disconnect_all= 1
DBI::END complete
    >> DESTROY     DISPATCH (DBI::dr=HASH(0x1400eb468) @1 g0 a0 r0)
dbih_clearcom 0x140100f88 (com 0x140107188)
    FLAGS 11: COMSET WARN 
    IMP_DATA 'DBI::dr=HASH(0x1400eb468)'
    PARENT NULL
    dbih_clearcom 0x140107188 done
    >> DESTROY     DISPATCH (DBI::dr=HASH(0x1400e0728) @1 g0 a0 r0)
       (inner handle already deleted)
    >> DESTROY     DISPATCH (DBI::db=HASH(0x1400e0228) @1 g0 a0 r0)
    -> DESTROY for DBD::mSQL::db (DBI::db=HASH(0x1400e0228))
    <- DESTROY= 1
dbih_clearcom 0x1400e0218 (com 0x140025808)
    FLAGS 11: COMSET WARN 
    IMP_DATA 'DBI::db=HASH(0x1400e0228)'
    PARENT DBI::dr=HASH(0x1400eb098)
    >> DESTROY     DISPATCH (DBI::dr=HASH(0x1400eb098) @1 g0 a0 r0)
dbih_clearcom 0x1400e06f8 (com 0x1400f4688)
    FLAGS 11: COMSET WARN 
    IMP_DATA 'DBI::dr=HASH(0x1400eb098)'
    PARENT NULL
    dbih_clearcom 0x1400f4688 done
    dbih_clearcom 0x140025808 done
    >> DESTROY     DISPATCH (DBI::dr=HASH(0x140085538) @1 g0 a0 r0)
       (inner handle already deleted)
    >> DESTROY     DISPATCH (DBI::db=HASH(0x1400e0718) @1 g0 a0 r0)
       (inner handle already deleted)
Attempt to free unreferenced scalar during global destruction.
Bad free() ignored during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.


here's my config again:
chulu.ufsia.ac.be> perl -e 'use Config; print Config::myconfig()'
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=dec_osf, osver=3.2, archname=alpha-dec_osf
    uname='osf1 chulu.ufsia.ac.be v3.2 214 alpha '
    hint=previous
  Compiler:
    cc='cc', optimize='-O2 -Olimit 2900'
    cppflags='-DSTANDARD_C'
    ccflags ='-DSTANDARD_C'
    ldflags =''
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=0, d_casti32=define, d_castneg=define
    intsize=4, alignbytes=8, usemymalloc=y, randbits=15
  Libraries:
    so=so
    libpth=/usr/shlib /lib /usr/lib /usr/ccs/lib
    libs=-ldbm -lm -lc -lbsd -lPW
    libc=/usr/shlib/libc.so
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
    cccdlflags=' ', ccdlflags=' ', lddlflags='-shared -expect_unresolved "*" -s'

> > my script:
> > #!/u01/home/verdools/bin/perl
> > use DBI;
> > $DB='ufpers';
> > $ENV{'MSQL_HOME'} = "/usr/local/Minerva";
> > $ENV{'MSQL_TCP_PORT'} = 22532;
> > $dbhD = DBI->connect( 'dns',$DB,'','mSQL') || die("geen database");
> > $dbhD->disconnect;
> > $ENV{'ORACLE_HOME'} = "/u01/home/oracle/product/7.1.4";
> > $ENV{'ORAHOME'} = "/u01/home/oracle/product/7.1.4";
> > print "before\n";
> > $dbhS = DBI->connect( $DB, 'job_verdool_s', 'my password:-)','Oracle' ) || die("geen ;
> > print "after\n";
> > $dbhS->disconnect;
> > 
> > my output:
> > before
> > rc: 0   what: Unknown MSQL Server Host (ufpers)
> > Database handle DBI::db=HASH(0x1400fff18) DESTROY ignored - never set up at /u0.
> > geen database at ./cp2 line 11.
> > 
> > if i comment the connect and disconnect lines from mSQL, i get
> > before
> > after
> > 
> > if i put the oracle stuff before the mSQL stuff, i get
> > before 
> > after
> > Memory fault - core dumped
> > 
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <17498-4@ignite.demon.co.uk>; Thu, 5 Oct 1995 07:08:34 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 04 Oct 95 18:01:35 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa28435;
          4 Oct 95 19:01 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA29199 for perldb-interest-real; Wed, 4 Oct 1995 08:14:37 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA29195 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 08:14:36 -0700
Received: by gw.home.vix.com id AA03449; Wed, 4 Oct 95 08:16:48 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-1.mail.demon.net id ac12625;
          4 Oct 95 12:18 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <10159-0@ignite.demon.co.uk>;
          Wed, 4 Oct 1995 11:56:55 +0100
To: perldb-interest@vix.com, lm_truong@ccmail.pnl.gov
Subject: Re: oraperl &ora_open and &ora_close problem
Date: Wed, 4 Oct 1995 11:56:55 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510041218.ac12625@relay-1.mail.demon.net>


> From: lm_truong@ccmail.pnl.gov
>      
>      I have a problem with oraperl &ora_open and &ora_close.  Whenever I 
>      execute a sql statement using ora_open, I have to close it.  This 
>      degrades my program's performance.  Is there a way to tell ORACLE to 
>      reuse the cursor in oraperl?
>      
Yes, in a limited way. You can re-bind parameters to repeat a query or
insert etc using the same cursor.

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <17500-16@ignite.demon.co.uk>; Thu, 5 Oct 1995 07:11:21 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 05 Oct 95 00:55:15 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ae02572;
          5 Oct 95 1:54 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <23124-0@frigate.doc.ic.ac.uk>; Wed, 4 Oct 1995 22:46:23 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA29993 for perldb-interest-real; Wed, 4 Oct 1995 12:01:32 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from proxy.netlabs.com (ns.sems.com [192.94.48.47]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id MAA29989 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 12:01:30 -0700
Received: by proxy.netlabs.com (4.1/SMI-4.1) id AA21412;
          Wed, 4 Oct 95 12:02:49 PDT
Received: from vaccine-bb.sems.com(192.190.199.1) by proxy.netlabs.com 
          via smap (V1.3) id sma021409; Wed Oct 4 12:02:23 1995
Received: from scalpel.netlabs.com by netlabs.com (4.1/SMI-4.1) id AA21532;
          Wed, 4 Oct 95 11:59:25 PDT
Received: from localhost.netlabs.com by scalpel.netlabs.com (4.1/SMI-4.1) 
          id AA26792; Wed, 4 Oct 95 11:58:24 PDT
Message-Id: <9510041858.AA26792@scalpel.netlabs.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@fugue.com, mhm@austin.ibm.com, perlbug@perl.com, 
    Mark Jefferys <mark@skye.as.utexas.edu>
Subject: Re: perl bug: array of undefs is falsely false (was: Fetching null 
         columns)
In-Reply-To: Your message of "Wed, 04 Oct 95 12:29:37 BST." <9510041229.aa14202@relay-1.mail.demon.net>
Date: Wed, 04 Oct 95 11:58:23 -0700
From: Larry Wall <lwall@scalpel.netlabs.com>

I've added Mark Jefferys to this discussion, since he was involved in
the change to list assignment, I believe.

Larry

: > From: mhm@austin.ibm.com
: > 
: > Ok, question time.  How do we expect the DBI::DBD interfaces to work
: > when it comes to columns returning null?
: > 
: Instances of NULLS are represented on input and output as undefs. Period.
: 
: 
: >     $sth->execute();
: >     while (@row = $sth->fetchrow) {
: >        ...
: >     }
: > 
: > If the $stmt requests only one column from the table
: > and the column can contain NULLs then it is possible to return only
: > part of the data.
: 
: This is a perl bug discovered recently by Michael Peppler working on Sybase.
: I CC'd a reply to perlbug@perl.com but I think it bounced. I'll CC this.
: 
: > If $stmt requests more than one column and the first
: > column requested can contain NULLs, we break again.
: >
: Not quite. It breaks if *all* the columns are nulls. Here's a test case:
: 
: 	sub undef_a { (undef, undef,     1, undef) }
: 	sub undef_b { (undef, undef, undef, undef) }
: 	sub undef_c { (undef) }
: 	
: 	(@ary = undef_a()) ? print "ok\n" : print "not ok\n";
: 	(@ary = undef_b()) ? print "ok\n" : print "not ok\n";
: 	(@ary = undef_c()) ? print "ok\n" : print "not ok\n";
: 
: It prints:
: 
: 	ok
: 	not ok
: 	not ok
: 
: This *is* a serious problem for database work!
: 
: > I guess, my point is that we need some method of returning something
: > other than a Nullsv or sv_undef and giving the enduser a method of 
: > checking the null indicator from the fbh struct.
: > 
: Nope. Perl needs fixing! This really needs to be fixed before 5.002.
: (Note: _never_ return Nullsv on the stack, always use &sv_undef.)
: 
: In the meantime you can use the alternative (and faster) $sth->fetch
: method upon which fetchrow is implemented:
: 
: 	while($aryref = $sth->fetch) {
: 	    .... code using @$aryref or $aryref->[n] ...
: 	}
: 
: but this won't help people who need to stick to the Oraperl emulation interface.
: 
: 
: Tim.
: 
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <17498-22@ignite.demon.co.uk>; Thu, 5 Oct 1995 07:13:26 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 05 Oct 95 01:57:57 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa19334;
          5 Oct 95 2:57 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA01008 for perldb-interest-real; Wed, 4 Oct 1995 17:35:25 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id RAA01004 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 17:35:23 -0700
Received: by gw.home.vix.com id AA15366; Wed, 4 Oct 95 17:37:37 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id TAA16211; Wed, 4 Oct 1995 19:35:23 -0500
Date: Wed, 4 Oct 1995 19:35:23 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: DBI perl <perldb-interest@vix.com>
Subject: I need a little help here..
Message-Id: <Pine.SUN.3.91.951004193256.12937E-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I've been very quiet for too  long. =)


I'm trying to understand the different between dbd_db_* commands and dbd_st_*
commands in the dbdimp.c file.

Could someone enlight me on mainly the differents between the
FETCH and STORE in both areas?  I'm sorta lost.

---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <17500-27@ignite.demon.co.uk>; Thu, 5 Oct 1995 07:15:09 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 05 Oct 95 02:39:38 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa09078;
          5 Oct 95 3:38 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <24252-0@frigate.doc.ic.ac.uk>; Thu, 5 Oct 1995 00:00:07 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA00443 for perldb-interest-real; Wed, 4 Oct 1995 13:48:05 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id NAA00439 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 13:48:02 -0700
From: rantapaa@math.umn.edu
Received: by gw.home.vix.com id AA27334; Wed, 4 Oct 95 13:50:14 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from s6.math.umn.edu by s5.math.umn.edu;
          Wed, 4 Oct 1995 15:50:06 -0500
Received: by s6.math.umn.edu (8.6.12) id UAA24055; Wed, 4 Oct 1995 20:49:51 GMT
Date: Wed, 4 Oct 1995 20:49:51 GMT
Message-Id: <199510042049.UAA24055@s6.math.umn.edu>
To: perldb-interest@vix.com
Subject: Can I get meta-information without having to create a oraperl handle?


A few revisions ago I was able to do the following:

$drh = DBI->install_driver('Oracle');
$dbh = $drh->connect($Database, $User, $Auth);

$c = $dbh->prepare("select * from $Table");
die "Prepare failed ($DBI::err): $DBI::errstr\n" unless ($c);

@name = @{$c->{NAME}};
# @nullable = @{$c->{NULLABLE}};
@type = @{$c->{ora_types}};
@length = @{$c->{ora_lengths}};

With the most recent version of the Oracle DBD, this no longer works.
Examining the code reveals that "ora_types" and "ora_lengths" are only
available if the handle is "oraperl compatible" (tm) ;-).

I'd like to get at this meta-information.  Is there some way to do this
or is there a way being planned to get at it?

Thanks,

Erik Rantapaa
rantapaa@math.umn.edu
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <21666-0@ignite.demon.co.uk>; Thu, 5 Oct 1995 12:38:54 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 05 Oct 95 07:23:10 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa20198;
          5 Oct 95 8:22 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id ab02677;
          4 Oct 95 14:35 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA28170 for perldb-interest-real; Wed, 4 Oct 1995 04:33:24 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id EAA28166 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 04:33:22 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id GAA65548;
          Wed, 4 Oct 1995 06:35:36 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA25130;
          Wed, 4 Oct 1995 06:35:31 -0500
Message-Id: <9510041135.AA25130@dax.austin.ibm.com>
To: Chip Salzenberg <chs@nando.net>
Cc: perldb-interest@fugue.com
Subject: Re: Fetching null columns
In-Reply-To: Your message of Tue, 03 Oct 95 18:09:02 -0400. <9510032209.AB07391@nando.net.nando.net>
Date: Wed, 04 Oct 95 06:35:31 -0500


chs@nando.net (Chip Salzenberg)  writes:
|> According to mhm@austin.ibm.com:
|> > Alan Stebbens <aks@dokoka.ucsb.edu>  writes:
|> > > Each column (array element) can then be "undef" (for null), or a defined
|> > > value, including the empty string.  A special "isnull" function is
|> > > unnecessary. 
|> > 
|> > If the first item in @row is undef then the loop is terminated.
|> 
|> If that's true in 5.001m, then there's a bug in 5.001m.  It's still a
|> good interface to use undef "NULL column" and () for "no more rows".

Most definitely true in 5.001m :-(  In the mean time, I still need to
find away to support NULL columns that doesn't break loops.

Mike

------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <21666-2@ignite.demon.co.uk>; Thu, 5 Oct 1995 12:39:07 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 05 Oct 95 07:44:12 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa25750;
          5 Oct 95 8:43 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa03649;
          4 Oct 95 14:40 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA28212 for perldb-interest-real; Wed, 4 Oct 1995 04:49:06 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-1.mail.demon.net (relay-1.mail.demon.net [158.152.1.140]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id EAA28208 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 04:49:03 -0700
Received: from post.demon.co.uk by relay-1.mail.demon.net id aa14202;
          4 Oct 95 12:29 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <10534-0@ignite.demon.co.uk>;
          Wed, 4 Oct 1995 12:29:37 +0100
To: perldb-interest@fugue.com, mhm@austin.ibm.com
Subject: perl bug: array of undefs is falsely false (was: Fetching null columns)
Cc: perlbug@perl.com, lwall@sems.com
Date: Wed, 4 Oct 1995 12:29:37 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510041229.aa14202@relay-1.mail.demon.net>


> From: mhm@austin.ibm.com
> 
> Ok, question time.  How do we expect the DBI::DBD interfaces to work
> when it comes to columns returning null?
> 
Instances of NULLS are represented on input and output as undefs. Period.


>     $sth->execute();
>     while (@row = $sth->fetchrow) {
>        ...
>     }
> 
> If the $stmt requests only one column from the table
> and the column can contain NULLs then it is possible to return only
> part of the data.

This is a perl bug discovered recently by Michael Peppler working on Sybase.
I CC'd a reply to perlbug@perl.com but I think it bounced. I'll CC this.

> If $stmt requests more than one column and the first
> column requested can contain NULLs, we break again.
>
Not quite. It breaks if *all* the columns are nulls. Here's a test case:

	sub undef_a { (undef, undef,     1, undef) }
	sub undef_b { (undef, undef, undef, undef) }
	sub undef_c { (undef) }
	
	(@ary = undef_a()) ? print "ok\n" : print "not ok\n";
	(@ary = undef_b()) ? print "ok\n" : print "not ok\n";
	(@ary = undef_c()) ? print "ok\n" : print "not ok\n";

It prints:

	ok
	not ok
	not ok

This *is* a serious problem for database work!

> I guess, my point is that we need some method of returning something
> other than a Nullsv or sv_undef and giving the enduser a method of 
> checking the null indicator from the fbh struct.
> 
Nope. Perl needs fixing! This really needs to be fixed before 5.002.
(Note: _never_ return Nullsv on the stack, always use &sv_undef.)

In the meantime you can use the alternative (and faster) $sth->fetch
method upon which fetchrow is implemented:

	while($aryref = $sth->fetch) {
	    .... code using @$aryref or $aryref->[n] ...
	}

but this won't help people who need to stick to the Oraperl emulation interface.


Tim.
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <21666-4@ignite.demon.co.uk>; Thu, 5 Oct 1995 12:39:24 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 05 Oct 95 08:32:10 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa12105;
          5 Oct 95 9:32 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id ab06420;
          4 Oct 95 14:58 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA28257 for perldb-interest-real; Wed, 4 Oct 1995 04:57:22 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-1.mail.demon.net (relay-1.mail.demon.net [158.152.1.140]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id EAA28253 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 04:57:19 -0700
Received: from post.demon.co.uk by relay-1.mail.demon.net id ae12625;
          4 Oct 95 12:18 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <10235-0@ignite.demon.co.uk>;
          Wed, 4 Oct 1995 12:11:55 +0100
To: zobair@marque.mscs.mu.edu
Subject: Re: DBI Installation HELP!!
Cc: perldb-interest@fugue.com
Date: Wed, 4 Oct 1995 12:11:55 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510041218.ae12625@relay-1.mail.demon.net>


> From: Saima Zobair <zobair@mscs.mu.edu>
> 
> Hello,
>  
> I am trying to install DBI on a solaris2.4/oracle7 .
> $ perl Makefile.PL  (works perfectly)
> $ make              (works with some warnings)
> $ make test         - There is an error in test #5 with a core dump.
>  
> Someone please help me with this!!
> Any help will be greatly appreciated. 
> 
> ----------------perl Makefile.PL output------------------------
> 
> $ perl Makefile.PL
>     Build, TEST and INSTALL Perl 5 first. Use version 5.001m or later.
>     DO NOT build the DBI under the Perl source tree.
>     Use 'make test' to execute self tests.
> 
> MakeMaker
>         DEFINE => '-Wall -pedantic -Wno-comment -Wpointer-arith -Wcast-align -Wconversion'
>         NAME => 'DBI'
>         VERSION => '0.63'
> Using header files found in /usr/local/lib/perl5.0/lib/sun4-solaris/CORE
> Looking for perl 5 by these names: 
> miniperl perl, 
> in these dirs:
> /usr/openwin/bin /usr/openwin/bin/xview /usr/openwin/demo /usr/X11/bin /usr/openwin/bin /usr/openwin/bin/xview /usr/openwin/demo /usr/X11/bin /usr/openwin/bin /usr/openwin/bin/xview /usr/openwin/demo /usr/X11/bin /usr/local/www//bin /usr/local/bin /usr/openwin/bin /usr/bin /usr/ccs/bin /usr/sbin /usr/local/www/HOTJAVA/bin /serva_usr_local . /usr/sbin /usr/bin /usr/local/bin /usr/local/etc /usr/ccs/bin /usr/lib/lp/postscript /usr/games /usr/openwin/demo /usr/ucb /usr/local/www//bin /usr/etc /etc /usr/local/www/tools/GATEWAY/bin /opt/SUNWits/Graphics-sw/xil/bin /opt/SUNWguide/bin /opt/SUNWsunsol/bin /opt/SUNWdiag/bin  /opt/SUNWwabi/bin /opt/SUNWdxlib/bin /opt/SUNWspro/bin /rsch_oracle/home/dba/roracle/product/7.0.16/bin /usr/local/bin
> Executing /usr/local/bin/perl
> Writing Makefile for DBI

Are you using Perl5.001m ?

> --------------------------------make output-------------------------------

> gcc -c  -O    -fpic -I/usr/local/lib/perl5.0/lib/sun4-solaris/CORE -Wall -pedantic -Wno-comment -Wpointer-arith -Wcast-align -Wconversion  DBI.c
> In file included from /usr/local/lib/gcc-lib/sparc-sun-solaris2.2/2.5.0/include/sys/param.h:37,

Your GCC is not only *very* old, it's also an x.y.0 release. I strongly suggest
you upgrade. I recommend 2.6.3 as a solid release.


> -------------------------------make test output-------------------------

> /usr/local/bin/perl -I/rsch_oracle/workarea/www/tools/GATEWAY/DBI/blib -I/rsch_oracle/workarea/www/tools/GATEWAY/DBI/blib -I/usr/local/lib/perl5.0/lib/sun4-solaris -I/usr/local/lib/perl5.0/lib test.pl
> test.pl 
> DBI test application $Revision: 1.12 $
> make: *** [test] Segmentation Fault (core dumped)

To summarise: make sure you're using Perl5.001*m* and upgrade your compiler.

Out of idle curiosity I'd also be interested in a stack trace from the
core dump (after building with -g instead of -O) and the last part of
the output of running make test with PERL_DBI_DEBUG environment
variable set to 2.

Tim.
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <22307-0@ignite.demon.co.uk>; Thu, 5 Oct 1995 13:25:34 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 05 Oct 95 11:50:57 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa20440;
          5 Oct 95 12:50 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa16539;
          4 Oct 95 16:11 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA28548 for perldb-interest-real; Wed, 4 Oct 1995 06:02:25 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id GAA28544 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 06:02:22 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id IAA89256 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 08:04:36 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA21960;
          Wed, 4 Oct 1995 08:04:34 -0500
Message-Id: <9510041304.AA21960@dax.austin.ibm.com>
To: perldb-interest@fugue.com
Cc: chet@watson.ibm.com
Subject: Re: DB2perl
In-Reply-To: Your message of Tue, 03 Oct 95 02:26:27 +0100. <9510031245.az26504@relay-3.mail.demon.net>
Date: Wed, 04 Oct 95 08:04:34 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|> To be a DBI conforming driver for a database which supports NULLS you
|> must return NULLS as undefs and accept undefs as meaning NULL for bind
|> variables. Here's the DBD::Oracle code:
|> 
|> In dbd_bind_ph:
|> 
|>     if (SvOK(newvalue)) {
|>         ...
|>     } else {
|>         value_ptr = "";
|>         value_len = 0;
|>         phs->indp = -1;
|>     }

Well, this parts is easily covered....I didn't have to change anything
:-)

|> 
|> In dbd_st_fetch:
|> 
|>         } else if (rc == 1405) {        /* field is null - return undef */
|>             (void)SvOK_off(sv);

This is the hard part as DB2 does not provide a return code to indicate
a NULL column.  I get a successful rc and an indicator variable set to
SQL_NULL_DATA if the column is null.  Fortunately, the indicator is
carried in the fbh structure.....time to restructure the code.

Mike
------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <24013-0@ignite.demon.co.uk>; Thu, 5 Oct 1995 16:27:00 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 05 Oct 95 14:54:17 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa12127;
          5 Oct 95 15:53 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA03226 for perldb-interest-real; Thu, 5 Oct 1995 04:39:49 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id EAA03222 
          for <perldb-interest@fugue.com>; Thu, 5 Oct 1995 04:39:46 -0700
From: Kenneth.Holmlund@physics.umu.se
Received: by gw.home.vix.com id AA00509; Thu, 5 Oct 95 04:42:00 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from minerva.tp.umu.se (minerva [192.36.171.34]) 
          by duessa.tp.umu.se (8.6.9/8.6.9) with ESMTP id MAA20206 
          for <perldb-interest@vix.com>; Thu, 5 Oct 1995 12:29:15 +0100
Received: (holmlund@localhost) by minerva.tp.umu.se (8.6.9/8.6.9) id MAA20353 
          for perldb-interest@vix.com; Thu, 5 Oct 1995 12:31:52 +0100
Date: Thu, 5 Oct 1995 12:31:52 +0100
Message-Id: <199510051131.MAA20353@minerva.tp.umu.se>
To: perldb-interest@vix.com
Subject: subscribe

subscribe Kenneth Holmlund
Hi,
I've tried to contact the listserv to add me to this
list but I didn't succeed so I guess I have to
bother you all :)
How do I subscribe ?
Kenneth Holmlund
Kenneth.Holmlund@Physics.UmU.SE
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <24013-2@ignite.demon.co.uk>; Thu, 5 Oct 1995 16:27:08 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 05 Oct 95 15:07:35 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa17570;
          5 Oct 95 16:06 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA03379 for perldb-interest-real; Thu, 5 Oct 1995 06:12:12 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id GAA03375 
          for <perldb-interest@fugue.com>; Thu, 5 Oct 1995 06:12:09 -0700
Received: by gw.home.vix.com id AA05939; Thu, 5 Oct 95 06:14:18 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id ab12538;
          5 Oct 95 12:39 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <20253-0@ignite.demon.co.uk>;
          Thu, 5 Oct 1995 10:56:32 +0100
To: perldb-interest@vix.com, rantapaa@math.umn.edu
Subject: Re: Can I get meta-information without having to create a oraperl 
         handle?
Date: Thu, 5 Oct 1995 10:56:32 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510051239.ab12538@relay-3.mail.demon.net>


> From: rantapaa@math.umn.edu
> 
> A few revisions ago I was able to do the following:
> 
> $drh = DBI->install_driver('Oracle');
> $dbh = $drh->connect($Database, $User, $Auth);
> 
> $c = $dbh->prepare("select * from $Table");
> die "Prepare failed ($DBI::err): $DBI::errstr\n" unless ($c);
> 
> @name = @{$c->{NAME}};
> # @nullable = @{$c->{NULLABLE}};
> @type = @{$c->{ora_types}};
> @length = @{$c->{ora_lengths}};
> 
> With the most recent version of the Oracle DBD, this no longer works.
> Examining the code reveals that "ora_types" and "ora_lengths" are only
> available if the handle is "oraperl compatible" (tm) ;-).
> 
Ooops :) I guess I was being a little over zelous in disabling those
attributes before providing standard alternatives.

> I'd like to get at this meta-information.  Is there some way to do this
> or is there a way being planned to get at it?
>
Please don't forget that the Oraperl emulation is the only supported interface.
All else is changeable.

Still, you have two alternatives right now. Either do what Oraperl.pm does:
$drh->{CompatMode} = 1;

Or do what I've just done to the source:
*** tmp.c       Thu Oct  5 10:54:43 1995
--- dbdimp.c    Thu Oct  5 10:55:00 1995
***************
*** 878,880 ****
  
!     if (oraperl && kl==11 && strEQ(key, "ora_lengths")) {
        AV *av = newAV();
--- 878,880 ----
  
!     if (kl==11 && strEQ(key, "ora_lengths")) {
        AV *av = newAV();
***************
*** 884,886 ****
  
!     } else if (oraperl && kl==9 && strEQ(key, "ora_types")) {
        AV *av = newAV();
--- 884,886 ----
  
!     } else if (kl==9 && strEQ(key, "ora_types")) {
        AV *av = newAV();
 
> Thanks,
> 
> Erik Rantapaa
> rantapaa@math.umn.edu
> 
Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <24206-0@ignite.demon.co.uk>; Thu, 5 Oct 1995 16:31:43 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 05 Oct 95 15:28:11 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa26402;
          5 Oct 95 16:27 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA03410 for perldb-interest-real; Thu, 5 Oct 1995 06:20:15 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id GAA03406 
          for <perldb-interest@fugue.com>; Thu, 5 Oct 1995 06:20:12 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id aa12538;
          5 Oct 95 12:38 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <20212-0@ignite.demon.co.uk>;
          Thu, 5 Oct 1995 10:49:34 +0100
To: cmullen@cs.oberlin.edu
Subject: Re: perl and databases
Cc: perldb-interest@fugue.com
Date: Thu, 5 Oct 1995 10:49:34 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510051238.aa12538@relay-3.mail.demon.net>


> From: Spencer Mullen <cmullen@cs.oberlin.edu>
> 
> are there any perl routines for talking to a database that lives on
> a different machine and architecture than the machine on which 
> the perl program is running over a tcp/ip connection?
> 
Not yet, but it's always been part of my plans that a proxy driver
should be developed which would implement this.

Don't expect it any time soon - unless you want to start implementing
it yourself.

Meanwhile you have to rely on database vendor specific networking
(Oracle SQL*Net, Ingres/Net etc etc)

Tim.
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <25367-0@ignite.demon.co.uk>; Thu, 5 Oct 1995 17:50:37 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 05 Oct 95 16:24:30 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa05540;
          5 Oct 95 17:23 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa25083;
          4 Oct 95 17:11 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id FAA28326 for perldb-interest-real; Wed, 4 Oct 1995 05:15:48 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id FAA28322 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 05:15:46 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id HAA86003;
          Wed, 4 Oct 1995 07:17:57 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for chs@nando.net at austin.ibm.com; id AA21836;
          Wed, 4 Oct 1995 07:17:56 -0500
Message-Id: <9510041217.AA21836@dax.austin.ibm.com>
To: "Alan K. Stebbens" <aks@hub.ucsb.edu>
Cc: Chip Salzenberg <chs@nando.net>, mhm@austin.ibm.com, 
    perldb-interest@fugue.com
Subject: Re: Fetching null columns
In-Reply-To: Your message of Tue, 03 Oct 95 20:08:03 -0700. <199510040308.UAA12642@dokoka>
Date: Wed, 04 Oct 95 07:17:55 -0500


Alan Stebbens <aks@dokoka.ucsb.edu>  writes:
|> > According to mhm@austin.ibm.com:
|> > > Alan Stebbens <aks@dokoka.ucsb.edu>  writes:
|> > > > Each column (array element) can then be "undef" (for null), or a 
|> > > >defined value, including the empty string.  A special "isnull" 
|> > > >function is unnecessary. 
|> > > 
|> > > If the first item in @row is undef then the loop is terminated.
|> > 
|> > If that's true in 5.001m, then there's a bug in 5.001m.  It's still a
|> > good interface to use undef "NULL column" and () for "no more rows".
|> 
|> This is not true in 5.001m.  It is safe to use the construct:
|> 
|>     while (defined(@row = dbfetchrow $dbh)) {
|> 	...
|>     }

[ working perl5.001 sample removed ]
This fragment fails when a null column is returned as undef.

    #!/usr/local/bin/perl

    use DBI;
    DBI->_debug_dispatch(5);
    $dbh = DBI->connect('sample');

    $stmt = $ARGV[0];
    $sth = $dbh->prepare($stmt);
    print "NUM Params: ",$sth->{'NUM_OF_PARAMS'},"\n";
    $sth->execute();
    while (defined(@row = $sth->fetchrow)) {
	    $" = "||"; print "Row: @row\n";
    }
    $sth->finish();


Excerpts from the debug log:

# column description details
fbh 0: 'REMARKS' NULLable, type 12,  dbsize 254, dsize 254, p254 s0
   out: ftype 1, indp 0, bufl 255, rlen 255, rcode 0
    <- prepare= DBI::st=HASH(0x2003fa60)
    >> FETCH       DISPATCH (DBI::st=HASH(0x2003fa9c) @2 g0 a0 r1)
    -> FETCH for DBD::DB2::st (DBI::st=HASH(0x2003fa9c) 'NUM_OF_PARAMS')
    FETCH DBI::st=HASH(0x2003fa9c) 'NUM_OF_PARAMS'
    <- FETCH= 0
    >> execute     DISPATCH (DBI::st=HASH(0x2003fa60) @1 g0 a20021f48 r1)
    -> execute for DBD::DB2::st (DBI::st=HASH(0x2003fa60)~0x2003fa9c)
    <- execute= 1
    >> fetchrow    DISPATCH (DBI::st=HASH(0x2003fa60) @1 g1 a0 r1)
    -> fetchrow for DBD::DB2::st (DBI::st=HASH(0x2003fa60)~0x2003fa9c)
    dbih_get_fbav 1/1 => 200b2194

#fetch occurring
    dbd_st_fetch 1 fields
	0: rc=0 ''

#undef returned as single item fetched in @row
    <- fetchrow= ( undef ) [1 items]

#notice that the contents contents of the while loop have not be
#executed
    >> finish      DISPATCH (DBI::st=HASH(0x2003fa60) @1 g0 a20021ea8 r1)
    -> finish for DBD::DB2::st (DBI::st=HASH(0x2003fa60)~0x2003fa9c)
    <- finish= 1
DBI::END
DBI::disconnect_all DBI
DBI::disconnect_all for 'DB2'

So now we have a test case provided by "Alan K. Stebbens" <aks@hub.ucsb.edu>
which proves it works in 5.001 and I have a test case which proves
it is broken in 5.001  :-(

Mike

------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <29231-0@ignite.demon.co.uk>; Fri, 6 Oct 1995 07:05:40 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 06 Oct 95 03:45:36 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ak28285;
          6 Oct 95 4:44 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <09999-0@frigate.doc.ic.ac.uk>; Fri, 6 Oct 1995 00:09:16 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA04680 for perldb-interest-real; Thu, 5 Oct 1995 14:43:25 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA04676 
          for <perldb-interest@fugue.com>; Thu, 5 Oct 1995 14:43:24 -0700
Received: by gw.home.vix.com id AA13080; Thu, 5 Oct 95 14:45:38 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id QAA01083; Thu, 5 Oct 1995 16:45:36 -0500
Date: Thu, 5 Oct 1995 16:45:36 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
Cc: perldb-interest@vix.com
Subject: Re: I need a little help here..
In-Reply-To: <9510051239.ac12538@relay-3.mail.demon.net>
Message-Id: <Pine.SUN.3.91.951005164214.784A-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Thu, 5 Oct 1995, Tim Bunce wrote:

> Does that help?
> 
> Are you looking at the code in order to develop another driver?
> 
I think so...I'm going to be doing more work on it this weekend.  I've 
stopped looking at the oracle code while I was trying to get a 
connect/disconnect version of the QuickBase drivers.  

Hopefully the Sparc with Oracle on it will help me better understand the
code more. 

Just figuring out what the QuickBase Objective-C libraries support 
internally is a neat trick. =)
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <29232-11@ignite.demon.co.uk>; Fri, 6 Oct 1995 07:07:41 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 06 Oct 95 03:17:23 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa21305;
          6 Oct 95 4:16 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA05067 for perldb-interest-real; Thu, 5 Oct 1995 18:30:35 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from skye.as.utexas.edu (skye.as.utexas.edu [128.83.129.233]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id SAA05063 
          for <perldb-interest@fugue.com>; Thu, 5 Oct 1995 18:30:32 -0700
Received: by skye.as.utexas.edu (5.x/SMI-SVR4) id AA04364;
          Thu, 5 Oct 1995 20:30:02 -0500
Date: Thu, 5 Oct 1995 20:30:00 -0500 (CDT)
From: Mark Jefferys <mark@skye.as.utexas.edu>
Cc: Larry Wall <lwall@scalpel.netlabs.com>, Tim Bunce <Tim.Bunce@ig.co.uk>, 
    perldb-interest@fugue.com, mhm@austin.ibm.com, perlbug@perl.com
Subject: Re: perl bug: array of undefs is falsely false (was: Fetching null 
         columns)
In-Reply-To: <9510041858.AA26792@scalpel.netlabs.com>
Message-Id: <Pine.SOL.3.91.951005185821.4202B-100000@skye.as.utexas.edu>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII


Someone (Tim?) wrote:

% > From: mhm@austin.ibm.com
% > 
% > Ok, question time.  How do we expect the DBI::DBD interfaces to work
% > when it comes to columns returning null?
% > 
% Instances of NULLS are represented on input and output as undefs. Period.
% 
% 
% >     $sth->execute();
% >     while (@row = $sth->fetchrow) {
% >        ...
% >     }
% > 
% > If the $stmt requests only one column from the table
% > and the column can contain NULLs then it is possible to return only
% > part of the data.
% 
% This is a perl bug discovered recently by Michael Peppler working on Sybase.
% I CC'd a reply to perlbug@perl.com but I think it bounced. I'll CC this.

Well, this can't be considered a bug, since it's intentional (maybe a
documentation bug---I was really lax on that obligation).  It might be
a bad idea, although I don't really like any of the solutions:

This is there so that loops like

    while (($user, $uid) = (getpwent)[0,2]) {
        ...
    }

doesn't run forever.  (getpwent returns () at the end, which turns
into (undef) x 2, which still ends up false on assignment.)


There are several ways I can think of doing this, offhand:

  1.  Document the real behavior.  Suggest using

         @arr = func();  if (@arr) ...

      or

         if ((@arr = func()), @arr) ...

      when a list of undefs should be true.  I suspect there are a
      some other cases where this is what the programmer wants, but
      I have no idea how often.


  2.  Make list-assignments return undef for zero objects assigned,
      and SV_NO for undef-only assignments.  This allows:

         if (defined(@arr = func())) ...


  3.  Make list-assignments normal, but have list-slices cut off
      trailing undefs, so

         (getpwent)[0,2]

      returns an empty list.  (This method was implemented in one of
      the perl alphas.)  This would fix the immediate problem, but
      would add others:

         A.  This will cause code which relies on list-slices
             returning a fixed number of items to break.  Sub calls
             are a likely source of problems:

                func1((func2())[1,3], ++$cnt);
                # Expects $cnt in 3rd place, not last.

             It gets even worse if someone tries to write a DB module
             in Perl:

                sub row_subset {
                    my($self, $row, @cols) = @_;

                    ($self->get_row($row))[$self->col_nums(@cols)];
                    # col_nums converts column names to numerical indices
                }

                if (@arr = row_subset($i, X, Y)) {  # oops: X,Y are undefs
                    # Same problem, different cause

         B.  If any of the elements sliced is magic, we either have to
             get its value, which wastes time and can cause problems,
             or *not* get its value, which can fail.


  4.  Same as #3, except only eliminate undefs if you can eliminate
      all of them.  Slightly reduces the problem with #A, does nothing
      for #B.


  5.  Same as #3, except cut off trailing *out-of-bound* references in
      list-slices.  More likely to do what you want with #A, and fixes
      #B.  Brings into sharp relief the question, "Should array-slices
      act like list-slices here."  I don't like making them different,
      but it makes it that much harder to get tied arrays working.
      (And if you find this question hard, should hash slices cut off
      trailing non-existent elements? 1/2 :-))


  6.  Combine #4 and #5.  Same comments as #5.


  7.  Make a list-slice of an empty list be empty.  This is an example
      of minimal intervention:  make sure empty lists stay empty, and
      thus false, but otherwise acts normally.  This would be somewhat
      easier to implement for tied arrays (and hashes).


  8.  Make array assignments of slices magical, returning false if the
      original list was empty (or something).  A really do-what-I-want
      solution.


  9.  Use awk.  :-)


I kinda like #2 or #7 at the moment;  #8 has a quirky, Perlish
feel to it that attracts me, although I suspect that it's a bad idea.

Actually, #9 is looking pretty good at the moment...


Mark
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <00376-0@ignite.demon.co.uk>; Fri, 6 Oct 1995 07:10:31 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 06 Oct 95 06:09:25 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa19845;
          6 Oct 95 7:08 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id VAA05576 for perldb-interest-real; Thu, 5 Oct 1995 21:26:43 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from metronet.com (tye@fohnix.metronet.com [192.245.137.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id VAA05572 
          for <perldb-interest@fugue.com>; Thu, 5 Oct 1995 21:26:40 -0700
Received: by metronet.com id AA20463 (5.67a/IDA1.5hp 
          for perldb-interest@fugue.com); Thu, 5 Oct 1995 23:28:26 -0500
From: Tye McQueen <tye@metronet.com>
Message-Id: <199510060428.AA20463@metronet.com>
Subject: Re: perl bug: array of undefs is falsely false
To: Mark Jefferys <mark@skye.as.utexas.edu>
Date: Thu, 5 Oct 1995 23:28:24 -0500 (CDT)
Cc: lwall@scalpel.netlabs.com, Tim.Bunce@ig.co.uk, perldb-interest@fugue.com, 
    mhm@austin.ibm.com, perlbug@perl.com
In-Reply-To: <Pine.SOL.3.91.951005185821.4202B-100000@skye.as.utexas.edu> from "Mark Jefferys" at Oct 5, 95 08:30:00 pm
Content-Transfer-Encoding: 8bit
X-Mailer: ELM [version 2.4 PL24]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 6394

Excerpts from the mail message of Mark Jefferys:
)
) ["@x= (undef,undef)" is false.]
)
) Well, this can't be considered a bug, since it's intentional (maybe a
) documentation bug---I was really lax on that obligation).  It might be
) a bad idea, although I don't really like any of the solutions:

Indeed, a complicated issue.  I've rolled this around at many
angles...

I think it is clear that often you don't want undefs created as
place holders and often you don't want trailing undefs stripped. 
Perl puts practicality before rigid consistancy so creating and
stripping undefs is common, but not universal.  I think the best
solution is to allow the user to select from both types of
behavior, so long as it can be done reasonably.  For example,
using "-1" in "split(/re/,$str,-1)" lets us prevent the default
stripping of trailing nulls.

I'm sure we don't want to change

    @arr[@sub]  and  @hash{@sub}

so that they no longer return ("create") undefs for out-of-bounds
subscripts and non-existant keys.  But I think being able to
request exactly that behavior could be generally useful.  If
we allow this behavior for anonymous array slices as well, then
that can be used for the

    if(  @arr= (getpwent)[0,2]  )

case and thus removes any motivation for having  

    "@x= (undef,undef)"  considered  false

(at least I don't see any other motivation).

How about:

    @arr[@sub]      for   map { $arr[$_] } @sub
    @arr([@sub])    for   map { $_ < $[ || $#arr < $_ ? () : $arr[$_] } @sub
    @hash{@sub}     for   map { $arr{$_} } @sub
    @hash({@sub})   for   map { $_ in keys(%hash) ? $hash{$_} : () } @sub

where "$_ in keys(%hash)" is pseudo Perl for whether hv_fetch()
returned 0.  [I don't think this adds ambiguity to the parsing,
but I certainly could be wrong.]

That is, @arr[@sub] and @hash{@sub}, stay the same.  @arr([@sub])
does not "create" undefs as place holders for out-of-bounds
elements.  @hash({@sub}) does not "create" undefs as place holders
for non-existant keys.

So we would now have to do:

    if(  @arr= (getpwent)([0,2])  )
                         ^     ^
since "if( @arr= (getpwent)[0,2] )" never worked in perl4 anyway.

I'd also like a way to tell if a key is present in a hash, ie. 
distinquish between hv_fetch() returning 0 vs. &(&sv_undef).  For
most tied hashes, it would be the same as defined($hash{$key}),
but defining a non-default EXISTS() would allow a difference.  So
using @tied_hash({@sub}) would cause EXISTS() to be called if
FETCH() returned undef [I probably wouldn't change hv_fetch() but
instead change a few callers of hv_fetch() and add a caller].

Perhaps a new boolean:  "$key in %hash"  or  "in(%hash,$key)". 
Perhaps  "keys(%hash,@keys)"  could return the elements of @keys
that are keys of %hash:  "map { $_ in %hash ? $_ : () } @keys".

But, in case you hate @arr([@sub]) and can't suggest a better
way to suppress undef place holders, here are my thoughts on
the previously proposed solutions:

)   1.  Document the real behavior.  Suggest using
)          if ((@arr = func()), @arr) ...
)       when a list of undefs should be true.

Kinda yuck but no worse than a few other rare cases in Perl. 
Probably not possible in the face of the powerful special-interest
lobby from the DB users.  :)

)   2.  Make list-assignments return undef for zero objects assigned,
)       and SV_NO for undef-only assignments.  This allows:
)          if (defined(@arr = func())) ...

This doesn't allow you, in  (func())[0,2],  to distinguish whether
func() returned () or (undef,"foo",undef,"bar").

It also means defined() is required above but if you try to
make a habit of using defined() you'll get bit because
	    while(  defined( @arr= (getpwent)[0,2] )  ) {
will never end.

)   3.  Make list-assignments normal, but have list-slices cut off
)       trailing undefs, so
)          (getpwent)[0,2]
)       returns an empty list.
)          A.  This will cause code which relies on list-slices
)              returning a fixed number of items to break.  Sub calls
)              are a likely source of problems:
)                 func1((func2())[1,3], ++$cnt);
)                 # Expects $cnt in 3rd place, not last.
)          B.  If any of the elements sliced is magic, we either have to
)              get its value, which wastes time and can cause problems,
)              or *not* get its value, which can fail.

I don't understand this last one (B).

)   4.  Same as #3, except only eliminate undefs if you can eliminate
)       all of them.  Slightly reduces the problem with #A, does nothing
)       for #B.
)   5.  Same as #3, except cut off trailing *out-of-bound* references in
)       list-slices.  More likely to do what you want with #A, and fixes
)       #B.
)   6.  Combine #4 and #5.  Same comments as #5.

The problem of documenting these properly makes me very wary of them.

)   7.  Make a list-slice of an empty list be empty.  This is an example
)       of minimal intervention:  make sure empty lists stay empty, and
)       thus false, but otherwise acts normally.  This would be somewhat
)       easier to implement for tied arrays (and hashes).

This raises the problem of (A) again.

)   8.  Make array assignments of slices magical, returning false if the
)       original list was empty (or something).  A really do-what-I-want
)       solution.

But will still surprise people with

    while(  @ids= (getpwent)[2,3]  ) {
	if(  $ids[0] == $uid  &&  $ids[1] == $gid  ) {
	    last;
	}
    }
    if(  @ids  ) {
	# We found a match!
    }

because we'll always "find a match".

If it can be implemented relatively easilly, I'd vote for this.

[Why do I keep thinking we need a new value, NoneSuch, which is
 used for things that have never been set (such as out-of-bounds
 elements)?  exists() would be to NoneSuch as defined() is to
 sv_undef.  There would be no _direct_ way to set anything to
 NoneSuch ("$#arr=5" indirectly sets "$arr[6]" to NoneSuch,
 "delete($hash{key})" indirectly sets "$hash{key}" to NoneSuch). 
 In an assignment, NoneSuch is always transformed to sv_undef.
 Would this help the problem of sv_undef causing too many "Use
 of uninitialized value" warnings?]
-- 
Tye McQueen                 tye@metronet.com  ||  tye@doober.usu.edu
             Nothing is obvious unless you are overlooking something
       http://www.metronet.com/~tye/ (scripts, links, nothing fancy)
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <03653-2@ignite.demon.co.uk>; Fri, 6 Oct 1995 12:12:47 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 06 Oct 95 11:11:03 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa01674;
          6 Oct 95 12:09 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa12336;
          4 Oct 95 19:17 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA29468 for perldb-interest-real; Wed, 4 Oct 1995 09:12:27 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA29464 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 09:12:23 -0700
Received: by gw.home.vix.com id AA07431; Wed, 4 Oct 95 09:14:35 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from hermes.demon.co.uk by relay-3.mail.demon.net id aa10090;
          4 Oct 95 10:09 +0100
Date: Tue, 03 Oct 1995 10:32:13 +0100
Message-Id: <743@hermes.demon.co.uk>
From: Adrian Lee <Adrian@hermes.demon.co.uk>
Organization: None whatsoever
Reply-To: Adrian@hermes.demon.co.uk
To: perldb-interest@vix.com
Subject: Subscribe
X-Mailer: Newswin Alpha 0.9
Lines: 9

subscribe perldb-interest


-- 

Adrian Lee

No connection whatsoever with any other demon.co.uk users.

---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <03769-0@ignite.demon.co.uk>; Fri, 6 Oct 1995 12:17:39 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 06 Oct 95 11:16:37 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa03797;
          6 Oct 95 12:15 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa12945;
          4 Oct 95 19:20 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA29111 for perldb-interest-real; Wed, 4 Oct 1995 07:47:05 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from black.csi.cam.ac.uk (root@black.csi.cam.ac.uk [131.111.8.33]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA29090 
          for <perldb-interest@fugue.com>; Wed, 4 Oct 1995 07:43:47 -0700
Received: from peewit [131.111.10.37] by black.csi.cam.ac.uk 
          with smtp (Smail-3.1.29.0 #36) id m0t0V2N-000CDNC;
          Wed, 4 Oct 95 15:43 BST
Date: Wed, 4 Oct 1995 15:42:26 BST
From: Charles Jardine <cj10@cam.ac.uk>
Subject: Re: perl bug: array of undefs is falsely false (was: Fetching null 
         columns)
To: Tim Bunce <Tim.Bunce@ig.co.uk>
cc: perldb-interest@fugue.com, mhm@austin.ibm.com, perlbug@perl.com, 
    lwall@sems.com
Message-ID: <ECS9510041526A@cam.ac.uk>
Priority: Normal
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII

On Wed, 4 Oct 1995 12:29:37 +0100 Tim Bunce wrote:


> Not quite. It breaks if *all* the columns are nulls. Here's a test case:

The following test with perl 5.001 patchlevel 1l indicates that it is quite
subtle. It is the evaluation in scalar context of the assignment of a list
of undefs which is broken. Evaluation of the list itself in scalar context
works.

This would not be a good reason to change the DBI spec;-)

Sample program:

   print "$]\n";
   @u = (undef);    # a list of one undef
   @x = ('x');      # a list of one defined value
   $un1 = @u;
   $un2 = (@v = @u);
   $un3 = @v;
   $xn1 = @x;
   $xn2 = (@y = @x);
   $xn3 = @y;
   (defined $un1) ? print "un1=$un1\n" : print "un1 undefined\n";
   (defined $un2) ? print "un2=$un2\n" : print "un2 undefined\n";
   (defined $un3) ? print "un3=$un3\n" : print "un3 undefined\n";
   (defined $xn1) ? print "xn1=$xn1\n" : print "xn1 undefined\n";
   (defined $xn2) ? print "xn2=$xn2\n" : print "xn2 undefined\n";
   (defined $xn3) ? print "xn3=$xn3\n" : print "xn3 undefined\n";

Output:

5.001
un1=1
un2 undefined
un3=1
xn1=1
xn2=1
xn3=1


For the record, perl4 does not show this bug, so existing oraperl users
need not worry.

Charles Jardine, Univ of Cambridge (UK).



---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <17801-0@ignite.demon.co.uk>; Fri, 6 Oct 1995 21:00:18 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 06 Oct 95 19:51:59 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa17975;
          6 Oct 95 20:51 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA08131 for perldb-interest-real; Fri, 6 Oct 1995 11:13:11 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from eve.mscs.mu.edu (eve.mscs.mu.edu [134.48.4.166]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id LAA08127;
          Fri, 6 Oct 1995 11:13:09 -0700
Received: by eve.mscs.mu.edu (Smail3.1.28.1 #9) id m0t1HFD-0002DjC;
          Fri, 6 Oct 95 13:11 CDT
Message-Id: <m0t1HFD-0002DjC@eve.mscs.mu.edu>
From: Saima Zobair <zobair@marque.mscs.mu.edu>
Subject: Help! oraperl: oracle error on ora_login()
To: perldb-interest@fugue.com
Date: Fri, 6 Oct 1995 13:11:38 -0500 (CDT)
Cc: perldb-interest-request@fugue.com
X-Mailer: ELM [version 2.4 PL23]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 501


Hi!
 
I am trying to connect oracle and the webserver using oraperl2.4
I am using oracle7. When I run the oraperl script on the
command line it executes fine and the database query runs perfectly.
But when I try to run the same oraperl file from /cgi through
netscape... it gives a an error on the &oralogin(). On printing
the $ora_errstr I get:
 
        Error while trying to retrieve text for error ORA-02701
 
Can someone please help me with this ?
 
Thanks,
 
Saima Zobair
zobair@mscs.mu.edu
 

---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-0@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:05:50 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 08 Oct 95 23:03:55 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa17285;
          9 Oct 95 0:02 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA04136 for perldb-interest-real; Sun, 8 Oct 1995 14:49:34 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA04132 
          for <perldb-interest@fugue.com>; Sun, 8 Oct 1995 14:49:32 -0700
Received: by gw.home.vix.com id AA27676; Sun, 8 Oct 95 14:51:49 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from 128.230.1.225 (npac-dial-225.syr.edu [128.230.1.225]) 
          by newstand.syr.edu (8.6.12/8.6.12) with SMTP id RAA21204;
          Sun, 8 Oct 1995 17:47:58 -0400
Message-Id: <199510082147.RAA21204@newstand.syr.edu>
Date: Sun, 08 Oct 95 17:54:06 0000
From: Gang Cheng <gcheng@npac.syr.edu>
Organization: NPAC
X-Mailer: Mozilla 1.1N (Macintosh; I; 68K)
Mime-Version: 1.0
To: www-vrml@wired.com, sp-discussion@mcs.anl.gov, perldb-interest@vix.com
Subject: (no subject)
X-Url: http://kayak.npac.syr.edu:1963/cgi-bin/news/showbody?bid=24000661&word=~1
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=us-ascii

We at Northeast Parallel Architecture Center (NPAC), Syracue
University has developed an archive system for searching/reading 
USENET newsgrou
ps,
mailing lists and personal mailbox from WWW. An Oracle database 
server is used
to store/manage mails and two search/navigation interfaces
accesible by any WWW browser
to the archive are provided: one is an advanced search interface
allowing queries with various options such as query by mail 
header,
by date, by subject (keywords), by sender. The other is a 
Hypermail-like
navigation interface for users familiar with Hypermail.

We offer free access to this archive for the Internet
Internet community. Check the URL

<URL:http://kayak.npac.syr.edu:1963>.

The whole archive is automatically updated in
every 30 minutes. Currently the following newsgroups (total 40) 
are archived
in the database:

comp.arch
comp.databases
comp.databases.oracle
comp.parallel
comp.parallel.mpi
comp.parallel.pvm
comp.lang.java
alt.www.hotjava
comp.infosystems
comp.infosystems.www.authoring.cgi
comp.infosystems.www.announce
comp.infosystems.www.authoring.html
comp.infosystems.www.authoring.images
comp.infosystems.www.authoring.misc
comp.infosystems.www.misc
comp.infosystems.www.advocacy
comp.infosystems.www.browsers.mac
comp.infosystems.www.browsers.ms-windows
comp.infosystems.www.browsers.x
comp.infosystems.www.browsers.misc
comp.infosystems.www.servers.ms-windows
comp.infosystems.www.servers.unix
comp.infosystems.www.servers.mac
comp.infosystems.www.servers.misc
comp.graphics
comp.graphics.visualization
comp.lang.c++
comp.multimedia
comp.security.misc
comp.sources.unix
comp.sources.x
comp.unix.admin
comp.unix.aix
comp.unix.misc
comp.unix.programmer
comp.unix.solaris
alt.comp.compression
comp.databases.object
comp.lang.perl.misc
syr.general

The following mailing lists are archived:

java-interest
java-porting
java-announce
hotjava-interest
sp-discussion
www-vrml
perldb-interest-request@fugue.com

This system is still under development and more functions are 
planned to
add to this system. Please send your comments to Gang Cheng 
(gcheng@npac.syr.edu
. Thanks.

--- Gang



---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28310-1@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:06:13 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 06 Oct 95 22:46:21 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa05449;
          6 Oct 95 23:45 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id ab21777;
          5 Oct 95 18:21 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA03844 for perldb-interest-real; Thu, 5 Oct 1995 08:33:06 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA03839 
          for <perldb-interest@fugue.com>; Thu, 5 Oct 1995 08:33:01 -0700
Received: by gw.home.vix.com id AA15159; Thu, 5 Oct 95 08:35:15 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id ab03093;
          5 Oct 95 16:30 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <24126-0@ignite.demon.co.uk>;
          Thu, 5 Oct 1995 16:30:00 +0100
To: perldb-interest@vix.com, Kenneth.Holmlund@physics.umu.se
Subject: Re: subscribe
Date: Thu, 5 Oct 1995 16:30:00 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510051630.ab03093@relay-3.mail.demon.net>


> From: Kenneth.Holmlund@physics.umu.se
> 
> subscribe Kenneth Holmlund
> Hi,
> I've tried to contact the listserv to add me to this
> list but I didn't succeed so I guess I have to
> bother you all :)

What 'listserv' and who do you know that you didn't succeed?

> How do I subscribe ?

By mailing to perldb-interest-request@vix.com (a human. Hi Ted).

> Kenneth Holmlund
> Kenneth.Holmlund@Physics.UmU.SE
> 
Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-2@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:06:23 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 06 Oct 95 22:38:35 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa14448;
          6 Oct 95 23:38 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA08832 for perldb-interest-real; Fri, 6 Oct 1995 14:17:20 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from skye.as.utexas.edu (skye.as.utexas.edu [128.83.129.233]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id OAA08828 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 14:17:18 -0700
Received: by skye.as.utexas.edu (5.x/SMI-SVR4) id AA05206;
          Fri, 6 Oct 1995 16:16:53 -0500
Date: Fri, 6 Oct 1995 16:16:52 -0500 (CDT)
From: Mark Jefferys <mark@skye.as.utexas.edu>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: tye@metronet.com, lwall@scalpel.netlabs.com, perldb-interest@fugue.com, 
    perlbug@perl.com
Subject: Re: perl bug: array of undefs is falsely false
In-Reply-To: <9510062128.ab20640@relay-3.mail.demon.net>
Message-Id: <Pine.SOL.3.91.951006154710.4926D-100000@skye.as.utexas.edu>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Fri, 6 Oct 1995, Tim Bunce wrote:

% This topic generated quite a discussion!
% 
% I'd like to narrow it down and check if we've reached a consensus:
% 
%> From: Mark Jefferys <mark@skye.as.utexas.edu>
%> 
%>% since "if( @arr= (getpwent)[0,2] )" never worked in perl4 anyway.
%>
%> Note that this has worked in perl5 for a little while, so there may be
%> a few scripts that this would break.
% 
% Since it was never well documented I doubt there are that many scripts
% that use this other than those you've written yourself. Then again
% Larry may take the view that the possibility makes the risk of undoing
% the change to high.

Actually, I'm not too worried about my own scripts.  I'm concerned
because I remember this coming up as a "Why doesn't this work?",
"Because, but it would be better if it did," situation.

Some people may have written "while (@arr = (getpwent)[0,2]) ..." or
an equivalent, never realizing they were using a feature.  Changing it
now would break their scripts (if they exist at all).

%>% Excerpts from the mail message of Mark Jefferys:

[ #1 is current behavior: list-assign in scalar context returns  ]
[ SV_UNDEF if only undefs assigned, otherwise count is returned. ]

%>%)   2.  Make list-assignments return undef for zero objects assigned,
%>%)       and SV_NO for undef-only assignments.  This allows:
%>%)
%>%)          if (defined(@arr = func())) ...
%
%>%)   3.  Make list-assignments normal, but have list-slices cut off
%>%)       trailing undefs, so
%>%)          (getpwent)[0,2]
%>%)       returns an empty list.

%>%)   7.  Make a list-slice of an empty list be empty.  This is an example
%>%)       of minimal intervention:  make sure empty lists stay empty, and
%>%)       thus false, but otherwise acts normally.  This would be somewhat
%>%)       easier to implement for tied arrays (and hashes).

%>%)  I kinda like #2 or #7 at the moment; [...]
% 
% So, to summarise the situation (and check that _I_ understand it :) ...
% 
%  - Currently evaluation in scalar context of the assignment of a list
%    of undefs is regarded as false. 
% 
%  - It seems widely agreed that this is not ideal.
% 
%  - This was added to cater for: while (($user, $uid) = (getpwent)[0,2]) { }

Technically, #3 was added to cater to this.  I didn't think much of
the solution, and offered #1 as an alternative (with source).  I don't
remember any other ideas being discussed.

%  - It seems widely agreed that this is useful.
% 
% I also like #7 "Make a list-slice of an empty list be empty".
% Feels kind'a like null-propagation in SQL expressions.
% 
% #2 seems too subtle for people to remember to use in their code.
% Especially where they don't expect to get nulls but might in error
% conditions.

Perhaps.  I offered #2 as a variation on #1 which is easier to work
around.


Mark

---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28310-11@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:08:29 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 00:29:41 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa18337;
          7 Oct 95 1:28 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id ac21520;
          5 Oct 95 18:19 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA03774 for perldb-interest-real; Thu, 5 Oct 1995 08:14:34 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA03770 
          for <perldb-interest@fugue.com>; Thu, 5 Oct 1995 08:14:33 -0700
Received: by gw.home.vix.com id AA13887; Thu, 5 Oct 95 08:16:47 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id ac12538;
          5 Oct 95 12:39 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <20332-0@ignite.demon.co.uk>;
          Thu, 5 Oct 1995 11:12:10 +0100
To: perldb-interest@vix.com, mouring@netnet.net
Subject: Re: I need a little help here..
Date: Thu, 5 Oct 1995 11:12:10 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510051239.ac12538@relay-3.mail.demon.net>


> From: Ben Lindstrom <mouring@netnet.net>
> 
> I've been very quiet for too  long. =)
> 
> I'm trying to understand the different between dbd_db_* commands and dbd_st_*
> commands in the dbdimp.c file.
>
The dbd_db_* functions implement methods for database handles and the
dbd_st_* functions implement methods for statement handles. Both are
called from the .xs file.

> Could someone enlight me on mainly the differents between the
> FETCH and STORE in both areas?  I'm sorta lost.
> 
dbd_db_FETCH is called when the application does $value = $dbh->{attribute};
dbd_st_FETCH is called when the application does $value = $sth->{attribute};
    ^^                                                     ^^

Similarly the dbd_*_STORE functions are called when setting attribute values.

Database and statement handles have different attributes and possibly may have
common attribute names with different meanings. It's natural to implement
then as separate functions in the driver.

dbd_*_STORE functions return FALSE if they don't recognise the attribute name.
dbd_*_FETCH functions return NULL  if they don't recognise the attribute name.
In both these cases the code in the .xs file hands off to some DBI code
which checks to see if it recognises the attribute name (e.g., NUM_OF_PARAMS).

Does that help?

Are you looking at the code in order to develop another driver?

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-14@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:09:55 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 02:15:07 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa23838;
          7 Oct 95 3:13 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA10059 for perldb-interest-real; Fri, 6 Oct 1995 18:11:48 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from proxy.netlabs.com (ns.netlabs.com [192.94.48.47]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id SAA10055 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 18:11:46 -0700
Received: by proxy.netlabs.com (4.1/SMI-4.1) id AA08173;
          Fri, 6 Oct 95 18:14:09 PDT
Received: from vaccine-bb.netlabs.com(192.190.199.1) by proxy.netlabs.com 
          via smap (V1.3) id sma008084; Fri Oct 6 18:13:28 1995
Received: from scalpel.netlabs.com by netlabs.com (4.1/SMI-4.1) id AA07576;
          Fri, 6 Oct 95 15:50:31 PDT
Received: from localhost.netlabs.com by scalpel.netlabs.com (4.1/SMI-4.1) 
          id AA09086; Fri, 6 Oct 95 15:49:27 PDT
Message-Id: <9510062249.AA09086@scalpel.netlabs.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: tye@metronet.com, mark@skye.as.utexas.edu, perldb-interest@fugue.com, 
    perlbug@perl.com
Subject: Re: perl bug: array of undefs is falsely false
In-Reply-To: Your message of "Fri, 06 Oct 95 21:27:26 BST." <9510062128.ab20640@relay-3.mail.demon.net>
Date: Fri, 06 Oct 95 15:49:27 -0700
From: Larry Wall <lwall@scalpel.netlabs.com>

: > % Excerpts from the mail message of Mark Jefferys:
: 
: > % )   2.  Make list-assignments return undef for zero objects assigned,
: > % )       and SV_NO for undef-only assignments.  This allows:
: > % )
: > % )          if (defined(@arr = func())) ...
: 
: > % )   3.  Make list-assignments normal, but have list-slices cut off
: > % )       trailing undefs, so
: > % )          (getpwent)[0,2]
: > % )       returns an empty list.
: > % )          A.  This will cause code which relies on list-slices
: > % )              returning a fixed number of items to break.  Sub calls
: > % )              are a likely source of problems:
: > % )                 func1((func2())[1,3], ++$cnt);
: > % )                 # Expects $cnt in 3rd place, not last.
: 
: > % )   7.  Make a list-slice of an empty list be empty.  This is an example
: > % )       of minimal intervention:  make sure empty lists stay empty, and
: > % )       thus false, but otherwise acts normally.  This would be somewhat
: > % )       easier to implement for tied arrays (and hashes).
: > % 
: > % This raises the problem of (A) again.
: > 
: > Granted, although far less often than the others.  I like this one
: > mostly because the exceptions I can think of are more contrived than
: > for the others, and pretty easy to work around:
: > 
: >    @arr ? @arr[@idx] : (undef) x @idx
: >
: > % )  I kinda like #2 or #7 at the moment; [...]

I think that as we move into using prototypes, func1() above would
probably be declared as

    sub func1 ($$$);

so you wouldn't be able to say

    func1((func2())[1,3], ++$cnt);

in any event.  (Unless I did something Really Strange with argument
processing to make it look inside a list slice.)

: So, to summarise the situation (and check that _I_ understand it :) ...
: 
:  - Currently evaluation in scalar context of the assignment of a list
:    of undefs is regarded as false. 
: 
:  - It seems widely agreed that this is not ideal.
: 
:  - This was added to cater for: while (($user, $uid) = (getpwent)[0,2]) { }
: 
:  - It seems widely agreed that this is useful.
: 
: I also like #7 "Make a list-slice of an empty list be empty".
: Feels kind'a like null-propagation in SQL expressions.

A little, though I think Perl's notion is a little more fail-soft.

: #2 seems too subtle for people to remember to use in their code.
: Especially where they don't expect to get nulls but might in error
: conditions.
: 
: Does anyone have and hard objections or better alternatives?
: 
: Larry, do you concur?

Hail the concurring hero, eh?

[sorry]

I'm leaning toward #7 too.  Especially since it makes array assignments
a little faster...

On the other hand, doing something a bit #8ish wouldn't be too difficult.
It would be relatively trivial to inform the OP_LSLICE that it was on the
right side of an OP_AASSIGN.  I don't think we'd even have to worry about
whether the assignment was in a scalar context, though even that wouldn't
be difficult to do.

Larry
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-16@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:10:59 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 02:35:44 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa02556;
          7 Oct 95 3:33 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA10136 for perldb-interest-real; Fri, 6 Oct 1995 18:35:42 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from kjahds.com (root@ringotty6.jvnc.net [192.67.236.206]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id SAA10132 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 18:35:37 -0700
Received: by kjahds.com (Linux Smail3.1.28.1 #1) id m0t1OBN-0000XMC;
          Fri, 6 Oct 95 21:36 EDT
Date: Fri, 6 Oct 1995 21:36:09 -0400 (EDT)
From: Kenneth Albanowski <kjahds@kjahds.com>
To: Larry Wall <lwall@scalpel.netlabs.com>
cc: Tim Bunce <Tim.Bunce@ig.co.uk>, tye@metronet.com, mark@skye.as.utexas.edu, 
    perldb-interest@fugue.com, perlbug@perl.com
Subject: Re: perl bug: array of undefs is falsely false
In-Reply-To: <9510062249.AA09086@scalpel.netlabs.com>
Message-ID: <Pine.LNX.3.91.951006213243.229B-100000@kjahds.com>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Fri, 6 Oct 1995, Larry Wall wrote:

> I think that as we move into using prototypes, func1() above would
> probably be declared as
> 
>     sub func1 ($$$);
> 
> so you wouldn't be able to say
> 
>     func1((func2())[1,3], ++$cnt);
> 
> in any event.  (Unless I did something Really Strange with argument
> processing to make it look inside a list slice.)

I think this is a case of knowing just enough LISP to be dangerous. The 
thing is, some people (me included, I'm afraid) tend to write code like 
that. Talk about breaking current scripts...

> I'm leaning toward #7 too.  Especially since it makes array assignments
> a little faster...

It certainly seems a decent solution. Easy to explain, and minimal surprise.

> On the other hand, doing something a bit #8ish wouldn't be too difficult.
> It would be relatively trivial to inform the OP_LSLICE that it was on the
> right side of an OP_AASSIGN.  I don't think we'd even have to worry about
> whether the assignment was in a scalar context, though even that wouldn't
> be difficult to do.

Non-minimal surprise and context sensistivity... Then again, this _is_
perl. ;-)

> Larry

--
Kenneth Albanowski (kjahds@kjahds.com, CIS: 70705,126)



---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28310-16@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:10:59 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 01:18:16 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa04643;
          7 Oct 95 2:17 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa12526;
          7 Oct 95 2:02 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA09587 for perldb-interest-real; Fri, 6 Oct 1995 16:59:00 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from watson.ibm.com (watson.ibm.com [129.34.139.4]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id QAA09583 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 16:58:58 -0700
Received: from WATSON by watson.ibm.com (IBM VM SMTP V2R3) with BSMTP id 8747;
          Fri, 06 Oct 95 20:01:01 EDT
Received: from YKTVMV by watson.vnet.ibm.com with "VAGENT.V1.02 on VAGENT2" 
          id 6210; Fri, 6 Oct 1995 20:01:01 EDT
Received: from lusitania.watson.ibm.com 
          by yktvmv.watson.ibm.com (IBM VM SMTP V2Rx) with TCP;
          Fri, 06 Oct 95 20:00:46 EDT
Received: from localhost by lusitania.watson.ibm.com (AIX 3.2/UCB 5.64/950830) 
          id AA28953; Fri, 6 Oct 1995 20:00:26 -0400
Message-Id: <9510070000.AA28953@lusitania.watson.ibm.com>
X-Mailer: exmh version 1.6.2 7/18/95
To: perldb-interest@fugue.com
Subject: Bug (?) in fetch()
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Fri, 06 Oct 1995 20:00:25 -0400
From: Chet Murthy <chet@watson.ibm.com>


[I'm new to this list, so if this is not the way to present bugs with
DBI, or the drivers, please let me know. --chet--]

There seems to be a bug in the fetch() function in DB2.xs, which, I
think, is also present in the Oracle version.  I enclose the diffs for
the DB2 version, which, should be transportable to the Oracle code.  I
have checked that this code exists in Oracle.xs as below:

   $Id: Oracle.xs,v 1.33 1995/08/26 17:39:01 timbo Rel $

(I think it's DBD::Oracle v0.25) but have fixed the problem in DB2.xs.

Synopsis: If I call $st->fetch(), which calls dbd_st_fetch, it returns
an AV, which is cast to an SV, and then returned immediately.  But it
needs to be wrapped up in a reference before being returned.

This results in the code below:

----------------------------------------------------------------
#!/u/chet/contrib/bin/perl

use DBI;
$dbh = DBI->connect('sample');
$stmt = $ARGV[0];
$sth = $dbh->prepare($stmt);
print "NUM Params: ",$sth->{'NUM_OF_PARAMS'},"\n";
$sth->execute();
while ($ary = $sth->fetch) {
	$" = "||"; print "Row: @{$ary}\n";
}
$sth->finish();
----------------------------------------------------------------

failing instantly with an "undef" -- that is, the first fetch fails, even
if the query returns something, because the return value of dbd_st_fetch
is lost.  If I turn on debugging, I see that DBI::dispatch thinks that
it's been returned an undef (since an AV is not an SV).

The modification:

----------------------------------------------------------------
--- DB2.xs.~1~  Fri Sep 22 14:46:02 1995
+++ DB2.xs      Fri Oct  6 19:53:05 1995
@@ -221,7 +221,12 @@
 fetch(sth)
     SV *       sth
     CODE:
-    ST(0) = (SV*)dbd_st_fetch(sth);
+    AV *    av = dbd_st_fetch(sth);
+    if (av == Nullav) {
+      ST (0) = &sv_undef;
+    } else {
+      ST(0) = newRV ((SV *)av);
+    }
----------------------------------------------------------------

(1) wraps non-NULL AV's in a reference, which is what is returned

(2) returns &sv_undef if the array is empty -- i.e., if the fetch
failed.

--chet--


---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-27@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:15:25 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 04:52:30 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa02296;
          7 Oct 95 5:50 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA10483 for perldb-interest-real; Fri, 6 Oct 1995 20:48:57 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id UAA10479 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 20:48:55 -0700
Received: by gw.home.vix.com id AA12409; Fri, 6 Oct 95 20:51:05 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id ad16968;
          6 Oct 95 19:27 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <16239-0@ignite.demon.co.uk>;
          Fri, 6 Oct 1995 19:16:14 +0100
To: skimo@dns.ufsia.ac.be
Subject: Re: Multiple DBD's
Cc: perldb-interest@vix.com
Date: Fri, 6 Oct 1995 19:16:14 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510061927.ad16968@relay-3.mail.demon.net>


> From: Sven Verdoolaege <skimo@dns.ufsia.ac.be>
> 
> For those on the list: i have problems connecting to
> both an mSQL and an Oracle database
> 
> > > my script:
> > > #!/u01/home/verdools/bin/perl
> > > use DBI;
> > > $DB='ufpers';
> > > $ENV{'MSQL_HOME'} = "/usr/local/Minerva";
> > > $ENV{'MSQL_TCP_PORT'} = 22532;
> > > $dbhD = DBI->connect( 'dns',$DB,'','mSQL') || die("geen database");
> > > $dbhD->disconnect;
> > > $ENV{'ORACLE_HOME'} = "/u01/home/oracle/product/7.1.4";
> > > $ENV{'ORAHOME'} = "/u01/home/oracle/product/7.1.4";
> > > print "before\n";
> > > $dbhS = DBI->connect( $DB, 'job_verdool_s', 'my password:-)','Oracle' ) || die("geen ;
> > > print "after\n";
> > > $dbhS->disconnect;
> > > 
> > > my output:
> > > before
> > > rc: 0   what: Unknown MSQL Server Host (ufpers)
> > > Database handle DBI::db=HASH(0x1400fff18) DESTROY ignored - never set up at /u0.
> > > geen database at ./cp2 line 11.

I think the "DESTROY ignored - never set up" warning may be a bug in
the mSQL driver due to clearing DBIc_IMPSET too early. It's only
a warning. The connect failed for the reason shown.

> > > if i comment the connect and disconnect lines from mSQL, i get
> > > before
> > > after
> > > 
> > > if i put the oracle stuff before the mSQL stuff, i get
> > > before 
> > > after
> > > Memory fault - core dumped

I'd need to see the core dump but only if you still get it after
upgrading to the latest DBI and DBD::Oracle.
 
Tim. 
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28310-31@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:18:31 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 08:19:09 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa27424;
          7 Oct 95 9:18 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa21994;
          6 Oct 95 22:46 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA08642 for perldb-interest-real; Fri, 6 Oct 1995 13:35:28 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id NAA08638 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 13:35:24 -0700
Received: by gw.home.vix.com id AA23208; Fri, 6 Oct 95 13:37:38 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from localhost (phj@localhost) 
          by pilot.njin.net (8.6.12+bestmx+oldruq+newsunq+grosshack/8.6.12) 
          with ESMTP id QAA19986; Fri, 6 Oct 1995 16:36:18 -0400
Message-Id: <199510062036.QAA19986@pilot.njin.net>
To: perldb-interest@fugue.com
Cc: phj@pilot.njin.net
Subject: How to query for primary keys ?
Date: Fri, 06 Oct 1995 16:36:17 -0400
From: "Patricia H. Ju" <phj@pilot.njin.net>


Hi,

How does one query
	1. if a certain field is a primary key
	2. if a table has a primary key
	3. what the primary key of a table is, if one exists
using DBD-Oracle?


Patricia
...........
"Men have forgotten this truth," said the fox.  "But you must not forget it.
You become responsible, forever, for what you have tamed . . ."
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28310-33@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:19:03 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 08:21:12 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa28014;
          7 Oct 95 9:20 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa22300;
          6 Oct 95 22:49 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA08655 for perldb-interest-real; Fri, 6 Oct 1995 13:36:16 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA08651 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 13:36:02 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id ab20640;
          6 Oct 95 21:28 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <18052-0@ignite.demon.co.uk>;
          Fri, 6 Oct 1995 21:27:26 +0100
To: tye@metronet.com, mark@skye.as.utexas.edu
Subject: Re: perl bug: array of undefs is falsely false
Cc: lwall@scalpel.netlabs.com, perldb-interest@fugue.com, perlbug@perl.com
Date: Fri, 6 Oct 1995 21:27:26 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510062128.ab20640@relay-3.mail.demon.net>

This topic generated quite a discussion!

I'd like to narrow it down and check if we've reached a consensus:

> From: Mark Jefferys <mark@skye.as.utexas.edu>
> 
> % since "if( @arr= (getpwent)[0,2] )" never worked in perl4 anyway.
>
> Note that this has worked in perl5 for a little while, so there may be
> a few scripts that this would break.

Since it was never well documented I doubt there are that many scripts
that use this other than those you've written yourself. Then again
Larry may take the view that the possibility makes the risk of undoing
the change to high.


> % Excerpts from the mail message of Mark Jefferys:

> % )   2.  Make list-assignments return undef for zero objects assigned,
> % )       and SV_NO for undef-only assignments.  This allows:
> % )
> % )          if (defined(@arr = func())) ...

> % )   3.  Make list-assignments normal, but have list-slices cut off
> % )       trailing undefs, so
> % )          (getpwent)[0,2]
> % )       returns an empty list.
> % )          A.  This will cause code which relies on list-slices
> % )              returning a fixed number of items to break.  Sub calls
> % )              are a likely source of problems:
> % )                 func1((func2())[1,3], ++$cnt);
> % )                 # Expects $cnt in 3rd place, not last.

> % )   7.  Make a list-slice of an empty list be empty.  This is an example
> % )       of minimal intervention:  make sure empty lists stay empty, and
> % )       thus false, but otherwise acts normally.  This would be somewhat
> % )       easier to implement for tied arrays (and hashes).
> % 
> % This raises the problem of (A) again.
> 
> Granted, although far less often than the others.  I like this one
> mostly because the exceptions I can think of are more contrived than
> for the others, and pretty easy to work around:
> 
>    @arr ? @arr[@idx] : (undef) x @idx
>
> % )  I kinda like #2 or #7 at the moment; [...]

So, to summarise the situation (and check that _I_ understand it :) ...

 - Currently evaluation in scalar context of the assignment of a list
   of undefs is regarded as false. 

 - It seems widely agreed that this is not ideal.

 - This was added to cater for: while (($user, $uid) = (getpwent)[0,2]) { }

 - It seems widely agreed that this is useful.

I also like #7 "Make a list-slice of an empty list be empty".
Feels kind'a like null-propagation in SQL expressions.

#2 seems too subtle for people to remember to use in their code.
Especially where they don't expect to get nulls but might in error
conditions.

Does anyone have and hard objections or better alternatives?

Larry, do you concur?

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28312-43@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:20:05 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 17:04:06 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa24412;
          7 Oct 95 18:03 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA00200 for perldb-interest-real; Sat, 7 Oct 1995 08:48:26 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from adrianp.powertech.no (root@port-58.ppp.powertech.no [194.19.5.58]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id IAA00196 
          for <perldb-interest@fugue.com>; Sat, 7 Oct 1995 08:48:22 -0700
Received: by adrianp.powertech.no 
          id <m0t1bNk-00000JC@adrianp.powertech.no> (Debian /\oo/\ Smail3.1.29.1 #29.33);
          Sat, 7 Oct 95 16:41 MET
Message-Id: <m0t1bNk-00000JC@adrianp.powertech.no>
Date: Sat, 7 Oct 95 16:41 MET
From: Adrian Phillips <adrianp@powertech.no>
To: perldb-interest@fugue.com

help
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-47@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:21:04 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 07:10:04 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id ab00682;
          7 Oct 95 8:09 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id XAA10738 for perldb-interest-real; Fri, 6 Oct 1995 23:11:36 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from metronet.com (tye@fohnix.metronet.com [192.245.137.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id XAA10734 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 23:11:33 -0700
Received: by metronet.com id AA05516 (5.67a/IDA1.5hp 
          for perldb-interest@fugue.com); Sat, 7 Oct 1995 01:13:16 -0500
From: Tye McQueen <tye@metronet.com>
Message-Id: <199510070613.AA05516@metronet.com>
Subject: Re: perl bug: array of undefs is falsely false
To: Mark Jefferys <mark@skye.as.utexas.edu>
Date: Sat, 7 Oct 1995 01:13:14 -0500 (CDT)
Cc: tye@metronet.com, lwall@scalpel.netlabs.com, Tim.Bunce@ig.co.uk, 
    perldb-interest@fugue.com, mhm@austin.ibm.com, perlbug@perl.com
In-Reply-To: <Pine.SOL.3.91.951006123017.4926B-100000@skye.as.utexas.edu> from "Mark Jefferys" at Oct 6, 95 01:49:44 pm
Content-Transfer-Encoding: 8bit
X-Mailer: ELM [version 2.4 PL24]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 3108

Excerpts from the mail message of Mark Jefferys:
) % I'd also like a way to tell if a key is present in a hash, ie. 
[...]
) Or how about "exists $hash{$key}"?  I don't think it would take too
) much effort to add that.  :-)

No fair adding it my copy while I'm not looking! :)

) % It also means defined() is required above but if you try to
) % make a habit of using defined() you'll get bit because
) % 	    while(  defined( @arr= (getpwent)[0,2] )  ) {
) % will never end.
) 
) I don't follow this.  If Perl cannot deduce what the user wants, then
) it will have to provide two different ways of writing this: one for
) each interpretation.  *All* of the solutions require rewriting if Perl
) gets it wrong (including yours: @arr[] vs. @arr([]))---it's only a
) question of how often it does, and how confusing the exceptions are.

You're right, that disadvantage isn't specific to this case. 
I still like the idea of having the option to slice without
creating undefs for out-of-bounds subscripts.

) % [Why do I keep thinking we need a new value, NoneSuch, which is
) %  used for things that have never been set (such as out-of-bounds
) %  elements)?
[...]
) There's also a good reason for having "exists $hash{$key}" not simply
) get $hash{$key} and test it:

I wasn't suggesting that.  Since a tied hash would use a Perl "sub
EXISTS", it would have _no way_ of returning NoneSuch.  Putting
NoneSuch on the Perl stack to be returned would transform it into
undef.

) Maybe...  It would be nice to fix the spurious warnings.  But there
) will always be potential problems with it: I'm sure someone will ask
) why
)     $save = oper();
)     if (exists $save) ...
) doesn't act like
)     if (exists oper()) ...

Any such people already can't handle why

    sub notdef { undef; }
    print "TRUE\n" if defined(&notdef);

prints TRUE.  Now that exists() exists, we've become a bit
inconsistant here.  Ignoring backward compatibility:

defined() should only check an expression value so defined(&func)
should be the same as defined($x=&func).

To see if a function exists, you should use exists(&func).
exists() does not take an expression or value as an argument
so saving some value in $save=oper() doesn't effect what
exists($save) returns (except when doing so creates $save).

Now silly stuff on how exists() and delete() should be extended:

delete(&func) would be used to make the next &func re-autoload.
undef(&func) would keep its current behavior, to make &func() an
error (leave &func cached as if autoloading failed).

$x= "global";
{ my $x= "my";
  print "($x) ";
  delete($x);	# Remove lexical from scope, a compile-time op
  print "<$x> ";
  delete($x);	# Delete $x from symbol table
  print "[$x]\n";
}
# This would print "(my) <global> []".

Notice how my mind likes to deny that it is "x" in the symbol
table and not "$x"?  But NoneSuch would allow us to hide that
fact. ;>
-- 
Tye McQueen                 tye@metronet.com  ||  tye@doober.usu.edu
             Nothing is obvious unless you are overlooking something
       http://www.metronet.com/~tye/ (scripts, links, nothing fancy)
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28310-47@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:22:12 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 12:44:47 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa29273;
          7 Oct 95 13:44 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id ab12616;
          7 Oct 95 2:02 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA09629 for perldb-interest-real; Fri, 6 Oct 1995 17:03:29 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from watson.ibm.com (watson.ibm.com [129.34.139.4]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id RAA09625 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 17:03:28 -0700
Received: from WATSON by watson.ibm.com (IBM VM SMTP V2R3) with BSMTP id 8773;
          Fri, 06 Oct 95 20:05:32 EDT
Received: from YKTVMV by watson.vnet.ibm.com with "VAGENT.V1.02 on VAGENT2" 
          id 6234; Fri, 6 Oct 1995 20:05:32 EDT
Received: from lusitania.watson.ibm.com 
          by yktvmv.watson.ibm.com (IBM VM SMTP V2Rx) with TCP;
          Fri, 06 Oct 95 20:05:31 EDT
Received: from localhost by lusitania.watson.ibm.com (AIX 3.2/UCB 5.64/950830) 
          id AA01390; Fri, 6 Oct 1995 20:05:11 -0400
Message-Id: <9510070005.AA01390@lusitania.watson.ibm.com>
X-Mailer: exmh version 1.6.2 7/18/95
To: perldb-interest@fugue.com
Subject: Protocol for Nullsv?
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Fri, 06 Oct 1995 20:05:11 -0400
From: Chet Murthy <chet@watson.ibm.com>


I have read in the Perl documentation that it is bad style to return
Nullsv -- that one should instead return &sv_undef.

I have also noticed that in the Oracle DBD driver (dbdimp.c) to be
exact, Nullav is returned all over the place.

Is this intentional, or merely accidental?  That is, can one in fact
use Nullsv (or Nullav) freely?

Thanks,
--chet--


---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-55@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:23:10 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 09:39:27 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa10847;
          7 Oct 95 10:38 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id BAA10956 for perldb-interest-real; Sat, 7 Oct 1995 01:40:32 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from mox.perl.com (Warm-Fuzzies@perl.com [199.45.129.30]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id BAA10952 
          for <perldb-interest@fugue.com>; Sat, 7 Oct 1995 01:40:28 -0700
Received: from localhost.perl.com (Warm-Fuzzies@localhost.perl.com [127.0.0.1]) 
          by mox.perl.com (8.6.12/8.6.12) with SMTP id CAA07863;
          Sat, 7 Oct 1995 02:42:05 -0600
To: Tye McQueen <tye@metronet.com>
cc: Mark Jefferys <mark@skye.as.utexas.edu>, lwall@scalpel.netlabs.com, 
    Tim.Bunce@ig.co.uk, perldb-interest@fugue.com, mhm@austin.ibm.com, 
    perlbug@perl.com, tchrist@mox.perl.com
Subject: Re: perl bug: array of undefs is falsely false
In-reply-to: Tye McQueen's message <199510070613.AA05516@metronet.com> of Sat, 07 Oct 95 01:13:14 CDT.
References: <199510070613.AA05516@metronet.com>
Date: Sat, 07 Oct 95 02:42:04 MDT
Message-ID: <7860.813055324@mox>
From: Tom Christiansen <tchrist@mox.perl.com>

> defined() should only check an expression value so defined(&func)
> should be the same as defined($x=&func).

You'd break a lot of code.  I and surely many others are used to 

    defined &f		# function existence (modulo AUTOLOAD || inheritance) 
vs
    defined f()		# first call function, then check retval 

I have noticed that all this delete() vs splice() vs undef() stuff is a
tad inconsistent or hard to follow for some folks, and I guess I 
don't blame them too much..

--tom

---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28312-61@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:24:24 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 20:31:56 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ai27174;
          7 Oct 95 21:31 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <03464-0@frigate.doc.ic.ac.uk>; Fri, 6 Oct 1995 21:30:29 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA08272 for perldb-interest-real; Fri, 6 Oct 1995 11:50:26 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from skye.as.utexas.edu (skye.as.utexas.edu [128.83.129.233]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id LAA08268 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 11:50:22 -0700
Received: by skye.as.utexas.edu (5.x/SMI-SVR4) id AA05069;
          Fri, 6 Oct 1995 13:49:45 -0500
Date: Fri, 6 Oct 1995 13:49:44 -0500 (CDT)
From: Mark Jefferys <mark@skye.as.utexas.edu>
To: Tye McQueen <tye@metronet.com>
Cc: lwall@scalpel.netlabs.com, Tim.Bunce@ig.co.uk, perldb-interest@fugue.com, 
    mhm@austin.ibm.com, perlbug@perl.com
Subject: Re: perl bug: array of undefs is falsely false
In-Reply-To: <199510060428.AA20463@metronet.com>
Message-Id: <Pine.SOL.3.91.951006123017.4926B-100000@skye.as.utexas.edu>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Thu, 5 Oct 1995, Tye McQueen wrote:

% How about:
% 
%     @arr[@sub]      for   map { $arr[$_] } @sub
%     @arr([@sub])    for   map { $_ < $[ || $#arr < $_ ? () : $arr[$_] } @sub
%     @hash{@sub}     for   map { $arr{$_} } @sub
%     @hash({@sub})   for   map { $_ in keys(%hash) ? $hash{$_} : () } @sub
% 
% where "$_ in keys(%hash)" is pseudo Perl for whether hv_fetch()
% returned 0.  [I don't think this adds ambiguity to the parsing,
% but I certainly could be wrong.]
% 
% That is, @arr[@sub] and @hash{@sub}, stay the same.  @arr([@sub])
% does not "create" undefs as place holders for out-of-bounds
% elements.  @hash({@sub}) does not "create" undefs as place holders
% for non-existant keys.
% 
% So we would now have to do:
% 
%     if(  @arr= (getpwent)([0,2])  )
%                          ^     ^
% since "if( @arr= (getpwent)[0,2] )" never worked in perl4 anyway.

Note that this has worked in perl5 for a little while, so there may be
a few scripts that this would break.

% I'd also like a way to tell if a key is present in a hash, ie. 
  ...
% Perhaps a new boolean:  "$key in %hash"  or  "in(%hash,$key)". 
% Perhaps  "keys(%hash,@keys)"  could return the elements of @keys
% that are keys of %hash:  "map { $_ in %hash ? $_ : () } @keys".

Or how about "exists $hash{$key}"?  I don't think it would take too
much effort to add that.  :-)


% )   2.  Make list-assignments return undef for zero objects assigned,
% )       and SV_NO for undef-only assignments.  This allows:
% )          if (defined(@arr = func())) ...
% 
% This doesn't allow you, in  (func())[0,2],  to distinguish whether
% func() returned () or (undef,"foo",undef,"bar").

Very true.

% It also means defined() is required above but if you try to
% make a habit of using defined() you'll get bit because
% 	    while(  defined( @arr= (getpwent)[0,2] )  ) {
% will never end.

I don't follow this.  If Perl cannot deduce what the user wants, then
it will have to provide two different ways of writing this: one for
each interpretation.  *All* of the solutions require rewriting if Perl
gets it wrong (including yours: @arr[] vs. @arr([]))---it's only a
question of how often it does, and how confusing the exceptions are.

% )   3.  Make list-assignments normal, but have list-slices cut off
% )       trailing undefs, so
% )          (getpwent)[0,2]
% )       returns an empty list.
% )          A.  This will cause code which relies on list-slices
% )              returning a fixed number of items to break.  Sub calls
% )              are a likely source of problems:
% )                 func1((func2())[1,3], ++$cnt);
% )                 # Expects $cnt in 3rd place, not last.
% )          B.  If any of the elements sliced is magic, we either have to
% )              get its value, which wastes time and can cause problems,
% )              or *not* get its value, which can fail.
% 
% I don't understand this last one (B).

Annoying technical issue.  GMagical scalars cannot simply be tested
for undefs---they don't have a meaningful value unless mg_get is
called on them first.  Doing so will waste time, since mg_get will
probably be called again when the value is used.  Also, if I remember
correctly, I tried to fix this in the alpha, and ran into some sort of
difficulty with getting the value correctly.

% )   7.  Make a list-slice of an empty list be empty.  This is an example
% )       of minimal intervention:  make sure empty lists stay empty, and
% )       thus false, but otherwise acts normally.  This would be somewhat
% )       easier to implement for tied arrays (and hashes).
% 
% This raises the problem of (A) again.

Granted, although far less often than the others.  I like this one
mostly because the exceptions I can think of are more contrived than
for the others, and pretty easy to work around:

   @arr ? @arr[@idx] : (undef) x @idx

% )   8.  Make array assignments of slices magical, returning false if the
% )       original list was empty (or something).  A really do-what-I-want
% )       solution.
% 
% But will still surprise people with
% 
%     while(  @ids= (getpwent)[2,3]  ) {
% 	if(  $ids[0] == $uid  &&  $ids[1] == $gid  ) {
% 	    last;
% 	}
%     }
%     if(  @ids  ) {
% 	# We found a match!
%     }
% 
% because we'll always "find a match".

Also, this won't work if there is a sub-call separating the slice from
the assignment:

   sub zoop { (getpwent)[2,3] }
   while (@ids = zoop()) ...

% If it can be implemented relatively easilly, I'd vote for this.
% 
% [Why do I keep thinking we need a new value, NoneSuch, which is
%  used for things that have never been set (such as out-of-bounds
%  elements)?  exists() would be to NoneSuch as defined() is to
%  sv_undef.  There would be no _direct_ way to set anything to
%  NoneSuch ("$#arr=5" indirectly sets "$arr[6]" to NoneSuch,
%  "delete($hash{key})" indirectly sets "$hash{key}" to NoneSuch). 
%  In an assignment, NoneSuch is always transformed to sv_undef.
%  Would this help the problem of sv_undef causing too many "Use
%  of uninitialized value" warnings?]

Maybe...  It would be nice to fix the spurious warnings.  But there
will always be potential problems with it: I'm sure someone will ask
why

    $save = oper();
    ...
    if (exists $save) ...

doesn't act like

    if (exists oper()) ...


There's also a good reason for having "exists $hash{$key}" not simply
get $hash{$key} and test it:  For some tied arrays, checking exists
may be far more efficient than getting the value.  I suppose this use
could be optimized, though.


Mark
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-68@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:26:12 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 16:02:01 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa25008;
          7 Oct 95 17:00 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA12723 for perldb-interest-real; Sat, 7 Oct 1995 07:42:43 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id HAA12719 
          for <perldb-interest@fugue.com>; Sat, 7 Oct 1995 07:42:41 -0700
Received: by gw.home.vix.com id AA26779; Sat, 7 Oct 95 07:44:55 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from skimo@localhost) by dns.ufsia.ac.be (8.6.12/8.6.9) id QAA26842;
          Sat, 7 Oct 1995 16:47:22 +0100
From: Sven Verdoolaege <skimo@dns.ufsia.ac.be>
Message-Id: <199510071547.QAA26842@dns.ufsia.ac.be>
Subject: Re: Multiple DBD's
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Date: Sat, 7 Oct 1995 16:47:21 +0100 (MET)
Cc: perldb-interest@vix.com
In-Reply-To: <9510061927.ad16968@relay-3.mail.demon.net> from "Tim Bunce" at Oct 6, 95 07:16:14 pm
X-Stardate: [-31]6403.28
X-Url: http://dns.ufsia.ac.be/~skimo
X-Mailer: ELM [version 2.4 PL24 ME8a]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 1971

I think you may have missed the point
> 
> 
> > From: Sven Verdoolaege <skimo@dns.ufsia.ac.be>
> > 
> > For those on the list: i have problems connecting to
> > both an mSQL and an Oracle database
> > 
> > > > my script:
> > > > #!/u01/home/verdools/bin/perl
> > > > use DBI;
> > > > $DB='ufpers';
> > > > $ENV{'MSQL_HOME'} = "/usr/local/Minerva";
> > > > $ENV{'MSQL_TCP_PORT'} = 22532;
> > > > $dbhD = DBI->connect( 'dns',$DB,'','mSQL') || die("geen database");
> > > > $dbhD->disconnect;
> > > > $ENV{'ORACLE_HOME'} = "/u01/home/oracle/product/7.1.4";
> > > > $ENV{'ORAHOME'} = "/u01/home/oracle/product/7.1.4";
> > > > print "before\n";
> > > > $dbhS = DBI->connect( $DB, 'job_verdool_s', 'my password:-)','Oracle' ) || die("geen ;
                                                                      ^^^^^^
> > > > print "after\n";
> > > > $dbhS->disconnect;
> > > > 
> > > > my output:
> > > > before
> > > > rc: 0   what: Unknown MSQL Server Host (ufpers)
                              ^^^^
> > > > Database handle DBI::db=HASH(0x1400fff18) DESTROY ignored - never set up at /u0.
> > > > geen database at ./cp2 line 11.
> 
> I think the "DESTROY ignored - never set up" warning may be a bug in
> the mSQL driver due to clearing DBIc_IMPSET too early. It's only
> a warning. The connect failed for the reason shown.
> 
> > > > if i comment the connect and disconnect lines from mSQL, i get
> > > > before
> > > > after
> > > > 
> > > > if i put the oracle stuff before the mSQL stuff, i get
> > > > before 
> > > > after
> > > > Memory fault - core dumped
> 
> I'd need to see the core dump but only if you still get it after
> upgrading to the latest DBI and DBD::Oracle.
i guess i forgot to mention i use
DBI-0.63
DBD-Oracle-0.25
DBD-mSQL-0.60pl5

I believe these are the most recent ones (apart from pl6 which didn't change much)

In what way would you like to see the core dump ?
Note that i'm not very familiar with OSF1 alpha.
I'm more of a linux user.

Sven
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-70@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:26:44 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 17:04:01 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa28073;
          7 Oct 95 18:03 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA00265 for perldb-interest-real; Sat, 7 Oct 1995 09:05:54 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from anna.mind.de (anna.mind.de [193.101.72.227]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA00259 
          for <perldb-interest@fugue.com>; Sat, 7 Oct 1995 09:05:43 -0700
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id RAA10882;
          Sat, 7 Oct 1995 17:06:31 +0100
Date: Sat, 7 Oct 1995 17:06:31 +0100
Message-Id: <199510071606.RAA10882@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: adrianp@powertech.no
CC: perldb-interest@fugue.com
In-reply-to: <m0t1bNk-00000JC@adrianp.powertech.no>
Reply-to: andreas.koenig@mind.de

>>>>> "Adrian" == Adrian Phillips <adrianp@powertech.no> writes:

    Adrian> help

perldb-interest in a human-driven mailing list. You subscribe and
unsubscribe by sending requests to perldb-interest-request@fugue.com
and let Ted _Mellon_ (sp?) some time to proceed.

andreas


---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-72@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:27:07 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 17:32:00 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa12055;
          7 Oct 95 18:30 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA00345 for perldb-interest-real; Sat, 7 Oct 1995 09:29:19 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from adrianp.powertech.no (root@port-23.ppp.powertech.no [194.19.5.23]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id JAA00341 
          for <perldb-interest@fugue.com>; Sat, 7 Oct 1995 09:29:14 -0700
Received: by adrianp.powertech.no 
          id <m0t1c5d-00000JC@adrianp.powertech.no> (Debian /\oo/\ Smail3.1.29.1 #29.33);
          Sat, 7 Oct 95 17:26 MET
Message-Id: <m0t1c5d-00000JC@adrianp.powertech.no>
Date: Sat, 7 Oct 95 17:26 MET
From: Adrian Phillips <adrianp@powertech.no>
To: perldb-interest@fugue.com
In-reply-to: <199510071606.RAA10882@anna.mind.de> (message from Andreas Koenig on Sat, 7 Oct 1995 17:06:31 +0100)

>>>>> "Andreas" == Andreas Koenig <k@anna.mind.de> writes:

>>>>> "Adrian" == Adrian Phillips <adrianp@powertech.no> writes:
    Adrian> help

    Andreas> perldb-interest in a human-driven mailing list. You
    Andreas> subscribe and unsubscribe by sending requests to
    Andreas> perldb-interest-request@fugue.com and let Ted _Mellon_
    Andreas> (sp?) some time to proceed.

    Andreas> andreas

Yes ? - (brain in gear this time).

Is this a perldb developers only discussion group or for any and all
interested in the development of perl=>db interfaces ?

Thanks,

Adrian

---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28312-78@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:28:43 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 20:33:07 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ar27174;
          7 Oct 95 21:32 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <05537-0@frigate.doc.ic.ac.uk>; Fri, 6 Oct 1995 22:30:58 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA08544 for perldb-interest-real; Fri, 6 Oct 1995 13:10:49 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA08540 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 13:10:45 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id ab17288;
          6 Oct 95 21:09 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <17955-0@ignite.demon.co.uk>;
          Fri, 6 Oct 1995 21:07:28 +0100
To: perldb-interest@fugue.com, zobair@marque.mscs.mu.edu
Subject: Re: Help! oraperl: oracle error on ora_login()
Date: Fri, 6 Oct 1995 21:07:28 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510062109.ab17288@relay-3.mail.demon.net>


> From: Saima Zobair <zobair@marque.mscs.mu.edu>
> 
> Hi!
>  
> I am trying to connect oracle and the webserver using oraperl2.4
> I am using oracle7. When I run the oraperl script on the
> command line it executes fine and the database query runs perfectly.
> But when I try to run the same oraperl file from /cgi through
> netscape... it gives a an error on the &oralogin(). On printing
> the $ora_errstr I get:
>  
>         Error while trying to retrieve text for error ORA-02701
>  
> Can someone please help me with this ?
>  
This is strictly off-topic for this mailing list.

Remember that CGI scripts typically execute as user 'nobody' and have
very few environment variables set up. You will need to explicilty
setup environment variables such as ORACLE_HOME.

For any further problems I suggest you post messages to
comp.lang.perl.misc and comp.infosystems.www.authoring.cgi.

Tim.

p.s. Please don't post non-admin messages to perldb-interest-request.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-83@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:29:43 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 08 Oct 95 07:51:25 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa15356;
          8 Oct 95 8:51 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id AAA01731 for perldb-interest-real; Sun, 8 Oct 1995 00:07:50 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id AAA01727 
          for <perldb-interest@fugue.com>; Sun, 8 Oct 1995 00:07:47 -0700
Received: by gw.home.vix.com id AA26415; Sun, 8 Oct 95 00:10:04 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id CAA23614; Sun, 8 Oct 1995 02:09:55 -0500
Date: Sun, 8 Oct 1995 02:09:55 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: andreas.koenig@mind.de
Cc: DBI perl <perldb-interest@vix.com>
Subject: Re: (fwd) C + ObjC + Perl == Problems. (fwd)
In-Reply-To: <199510080704.IAA13730@anna.mind.de>
Message-Id: <Pine.SUN.3.91.951008020812.23560A-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Sun, 8 Oct 1995, Andreas Koenig wrote:

> >>>>> "Ben" == Ben Lindstrom <mouring@netnet.net> writes:
> 
[..]
>     Ben> This is what I'm doing...
> 
>     Ben> cc -c -DUSE_NEXT_CTYPE -O dbdimp.c -ObjC  -I/usr/local/lib/perl5/i386-next/CORE
>     Ben> cc -c -DUSE_NEXT_CTYPE -O QBase.c -ObjC  -I/usr/local/lib/perl5/i386-next/CORE
>     Ben> ld -o QBase.so -lNeXT_s -lMedia_s QBase.o dbdimp.o
> 
[..]
> You most definitely have to link statically. I have done something
> similar quite a long time ago, and I'm not sure anymore, what did the
> trick: either build the extension statically or link the libNeXT into
> perl. Or both :)
> 
I thought that was what I was doing with:
  ld -o QBase.so -lNeXT_s -lMedia_s [...]

Linking in the NeXT development libraries.

Maybe I have something slightly wrong.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28312-86@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:30:32 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 20:33:10 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aw27174;
          7 Oct 95 21:32 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <07748-0@frigate.doc.ic.ac.uk>; Fri, 6 Oct 1995 23:29:35 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA08861 for perldb-interest-real; Fri, 6 Oct 1995 14:19:16 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gwa.ericsson.com (gwa.ericsson.com [198.215.127.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA08857 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 14:19:13 -0700
Received: from mr2.exu.ericsson.se (mr2.exu.ericsson.com [138.85.147.12]) 
          by gwa.ericsson.com (8.6.10/8.6.10) with ESMTP id QAA28845 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 16:20:49 -0500
Received: from eur.ericsson.se (dublin.eur.ericsson.se [153.88.1.19]) 
          by mr2.exu.ericsson.se (8.6.8/NAHUB-MR1.1) with ESMTP id QAA06738 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 16:20:48 -0500
Received: from ops by eur.ericsson.se (8.6.12/EUR-Dublin) id OAA13798;
          Fri, 6 Oct 1995 14:20:49 -0700
Received: from shawnee.raynet.com by ops (4.1/SMI-4.1) id AA15031;
          Fri, 6 Oct 95 14:22:24 PDT
Received: from localhost by shawnee.raynet.com (4.1/SMI-4.1) id AA21450;
          Fri, 6 Oct 95 14:22:22 PDT
Message-Id: <9510062122.AA21450@shawnee.raynet.com>
From: Yary Hluchan <yhluchan@ops.raynet.com>
To: perldb-interest@fugue.com
Subject: Re: perl bug: array of undefs is falsely false
In-Reply-To: <Pine.SOL.3.91.951006123017.4926B-100000@skye.as.utexas.edu>
X-Mailer: exmh version 1.4.1 7/21/94
Date: Fri, 06 Oct 1995 14:22:21 -0700

On Fri, 6 Oct 1995 13:49:44 -0500 (CDT) Mark Jefferys writ:
] On Thu, 5 Oct 1995, Tye McQueen wrote:
] % 
] % [Why do I keep thinking we need a new value, NoneSuch, which is
] %  used for things that have never been set (such as out-of-bounds
] %  elements)?  exists() would be to NoneSuch as defined() is to
] %  sv_undef.  There would be no _direct_ way to set anything to
] %  NoneSuch ("$#arr=5" indirectly sets "$arr[6]" to NoneSuch,
] %  "delete($hash{key})" indirectly sets "$hash{key}" to NoneSuch). 
] %  In an assignment, NoneSuch is always transformed to sv_undef.
] %  Would this help the problem of sv_undef causing too many "Use
] %  of uninitialized value" warnings?]

I like this solution best, or a modification of it, though I'm sure it'll make 
it'll make some implementors nauseous... I'd like to see another "null" value 
akin to "undef" for "not exists"

] Maybe...  It would be nice to fix the spurious warnings.  But there
] will always be potential problems with it: I'm sure someone will ask
] why
] 
]     $save = oper();
]     ...
]     if (exists $save) ...
] 
] doesn't act like
] 
]     if (exists oper()) ...

If "not exists" isn't cast to "undef" on assignment, then these work the same.
 
] There's also a good reason for having "exists $hash{$key}" not simply
] get $hash{$key} and test it:  For some tied arrays, checking exists
] may be far more efficient than getting the value.  I suppose this use
] could be optimized, though.

Tied arrays have to impelent an "EXISTS" method, so that's where the 
optimization would be, right? There's no reason then why "exists $hash{$key}" 
must get $hash{$key} and test it.

Four valued logic, let's do it.

yary "constistency is a virtue" hluchan
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-90@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:31:09 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 08 Oct 95 23:03:55 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa17278;
          9 Oct 95 0:02 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA04124 for perldb-interest-real; Sun, 8 Oct 1995 14:42:50 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA04120 
          for <perldb-interest@fugue.com>; Sun, 8 Oct 1995 14:42:49 -0700
Received: by gw.home.vix.com id AA27230; Sun, 8 Oct 95 14:45:05 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from root@localhost) by tom.compulink.co.uk (8.6.9/8.6.9) 
          id WAA22717 for perldb-interest@vix.com;
          Sun, 8 Oct 1995 22:45:03 +0100
Date: Sun, 8 Oct 95 22:44 BST-1
From: Huseyin Ramazanoglu <huseyinr@cix.compulink.co.uk>
Subject: Unsubscribe
To: perldb-interest@vix.com
Cc: huseyinr@cix.compulink.co.uk
Reply-To: huseyinr@cix.compulink.co.uk
Message-Id: <memo.489672@cix.compulink.co.uk>

unsubscribe huseyinr@cix.compulink.co.uk

---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28312-92@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:31:49 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 20:33:13 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id bc27174;
          7 Oct 95 21:32 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <09761-0@frigate.doc.ic.ac.uk>; Sat, 7 Oct 1995 00:19:09 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA09130 for perldb-interest-real; Fri, 6 Oct 1995 15:04:57 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from pilot.njin.net (pilot.njin.net [128.6.7.38]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA09126 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 15:04:55 -0700
Received: from localhost (phj@localhost) 
          by pilot.njin.net (8.6.12+bestmx+oldruq+newsunq+grosshack/8.6.12) 
          with ESMTP id SAA24778 for <perldb-interest@fugue.com>;
          Fri, 6 Oct 1995 18:07:03 -0400
Message-Id: <199510062207.SAA24778@pilot.njin.net>
To: perldb-interest@fugue.com
Subject: Apologies
Date: Fri, 06 Oct 1995 18:07:00 -0400
From: "Patricia H. Ju" <phj@pilot.njin.net>

Sorry for the perl question.  I did not realize this list was mainly
adminnish.

Patricia
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-93@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:31:51 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 08 Oct 95 23:14:45 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa22035;
          9 Oct 95 0:13 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA04169 for perldb-interest-real; Sun, 8 Oct 1995 14:57:26 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA04165 
          for <perldb-interest@fugue.com>; Sun, 8 Oct 1995 14:57:24 -0700
Received: by gw.home.vix.com id AA28491; Sun, 8 Oct 95 14:59:41 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from 128.230.1.225 (npac-dial-225.syr.edu [128.230.1.225]) 
          by newstand.syr.edu (8.6.12/8.6.12) with SMTP id RAA21233;
          Sun, 8 Oct 1995 17:55:57 -0400
Message-Id: <199510082155.RAA21233@newstand.syr.edu>
Date: Sun, 08 Oct 95 18:02:05 0000
From: Gang Cheng <gcheng@npac.syr.edu>
Organization: NPAC
X-Mailer: Mozilla 1.1N (Macintosh; I; 68K)
Mime-Version: 1.0
Newsgroups: syr.general,comp.databases,comp.databases.oracle,comp.arch
To: perldb-interest@vix.com, sp-discussion@mcs.anl.gov, www-vrml@wired.com
Subject: A WWW archive system for mailing-list and USENET newsgroups
X-Url: http://kayak.npac.syr.edu:1963/cgi-bin/news/showbody?bid=42000095&word=~1
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=us-ascii

We at Northeast Parallel Architecture Center (NPAC), Syracue
University has developed an archive system for searching/reading USENET newsgrou
ps,
mailing lists and personal mailbox from WWW. An Oracle database server is used
to store/manage mails and two search/navigation interfaces
accesible by any WWW browser
to the archive are provided: one is an advanced search interface
allowing queries with various options such as query by mail header,
by date, by subject (keywords), by sender. The other is a Hypermail-like
navigation interface for users familiar with Hypermail.

We offer free access to this archive for the Internet
Internet community. Check the URL

<URL:http://kayak.npac.syr.edu:1963>.

The whole archive is automatically updated in
every 30 minutes. Currently the following newsgroups (total 40) are archived
in the database:

comp.arch
comp.databases
comp.databases.oracle
comp.parallel
comp.parallel.mpi
comp.parallel.pvm
comp.lang.java
alt.www.hotjava
comp.infosystems
comp.infosystems.www.authoring.cgi
comp.infosystems.www.announce
comp.infosystems.www.authoring.html
comp.infosystems.www.authoring.images
comp.infosystems.www.authoring.misc
comp.infosystems.www.misc
comp.infosystems.www.advocacy
comp.infosystems.www.browsers.mac
comp.infosystems.www.browsers.ms-windows
comp.infosystems.www.browsers.x
comp.infosystems.www.browsers.misc
comp.infosystems.www.servers.ms-windows
comp.infosystems.www.servers.unix
comp.infosystems.www.servers.mac
comp.infosystems.www.servers.misc
comp.graphics
comp.graphics.visualization
comp.lang.c++
comp.multimedia
comp.security.misc
comp.sources.unix
comp.sources.x
comp.unix.admin
comp.unix.aix
comp.unix.misc
comp.unix.programmer
comp.unix.solaris
alt.comp.compression
comp.databases.object
comp.lang.perl.misc
syr.general

The following mailing lists are archived:

java-interest
java-porting
java-announce
hotjava-interest
sp-discussion
www-vrml
perldb-interest-request@fugue.com

This system is still under development and more functions are planned to
add to this system. Please send your comments to Gang Cheng (gcheng@npac.syr.edu
. Thanks.

--- Gang



---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-99@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:33:38 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 08 Oct 95 23:54:10 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa06770;
          9 Oct 95 0:53 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA04357 for perldb-interest-real; Sun, 8 Oct 1995 15:44:10 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from skye.as.utexas.edu (skye.as.utexas.edu [128.83.129.233]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA04353 
          for <perldb-interest@fugue.com>; Sun, 8 Oct 1995 15:44:07 -0700
Received: by skye.as.utexas.edu (5.x/SMI-SVR4) id AA06137;
          Sun, 8 Oct 1995 17:43:41 -0500
Date: Sun, 8 Oct 1995 17:43:40 -0500 (CDT)
From: Mark Jefferys <mark@skye.as.utexas.edu>
To: Tye McQueen <tye@metronet.com>
Cc: perldb-interest@fugue.com, perlbug@perl.com
Subject: Re: perl bug: array of undefs is falsely false
In-Reply-To: <199510070613.AA05516@metronet.com>
Message-Id: <Pine.SOL.3.91.951007165231.5745D-100000@skye.as.utexas.edu>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Sat, 7 Oct 1995, Tye McQueen wrote:

% Excerpts from the mail message of Mark Jefferys:
% ) % I'd also like a way to tell if a key is present in a hash, ie. 
% [...]
% ) Or how about "exists $hash{$key}"?  I don't think it would take too
% ) much effort to add that.  :-)
% 
% No fair adding it my copy while I'm not looking! :)

Oops.

% defined() should only check an expression value so defined(&func)
% should be the same as defined($x=&func).

This is mostly the confusion between &func as a way of referring to
&func, and as a way of calling it.  A good reason to deprecate the
latter, IMHO.

% To see if a function exists, you should use exists(&func).
% exists() does not take an expression or value as an argument
% so saving some value in $save=oper() doesn't effect what
% exists($save) returns (except when doing so creates $save).

OK.  I like that, actually.

% Now silly stuff on how exists() and delete() should be extended:
% 
% delete(&func) would be used to make the next &func re-autoload.
% undef(&func) would keep its current behavior, to make &func() an
% error (leave &func cached as if autoloading failed).
% 
% $x= "global";
% { my $x= "my";
%   print "($x) ";
%   delete($x);	# Remove lexical from scope, a compile-time op
%   print "<$x> ";
%   delete($x);	# Delete $x from symbol table
%   print "[$x]\n";
% }
% # This would print "(my) <global> []".

That's either really clever or really gross---I can't quite decide.  I
think I like it.

% Notice how my mind likes to deny that it is "x" in the symbol
% table and not "$x"?  But NoneSuch would allow us to hide that
% fact. ;>

Perhaps.  I don't see any reason why we need to add an actual NoneSuch
scalar to make this work.

IDEA:  One thing that could be done---and this would cut down on spurious 
warnings a lot---is to create the SVs, AVs, and HVs when first
accessed, instead of when their containing GVs are created.  A warning
could be produced if this is done in a non-modification context.

I don't know precisely how this would affect performance, though.
For example, there would need to be an extra check in pp_sv to see
that the accessed scalar was non-zero.  On the other hand, Perl
wouldn't waste time (and space) creating unused AVs and HVs when
someone uses $x without the others.  And the current warning checks
could be thrown out.


Mark

---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28311-102@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:34:15 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 09 Oct 95 01:57:34 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa09225;
          9 Oct 95 2:56 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA04892 for perldb-interest-real; Sun, 8 Oct 1995 17:48:05 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id RAA04888 
          for <perldb-interest@fugue.com>; Sun, 8 Oct 1995 17:48:03 -0700
Received: by gw.home.vix.com id AA10168; Sun, 8 Oct 95 17:50:20 -0700
Date: Sun, 8 Oct 95 17:50:20 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from song.iuol.cn.net by iui.iuol.cn.net id aa11795; 9 Oct 95 8:41 PST
Mime-Version: 1.0
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
From: lhsong@iuol.cn.net
Subject: Unsubscribe
To: perldb-interest@vix.com
X-Mailer: SPRY Mail Version: 04.00.06.17
Message-Id: <9510090841.aa11795@iui.iuol.cn.net>


unsubscribe lhsong@iuol.cn.net

---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28312-103@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:34:21 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 20:33:17 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id bg27174;
          7 Oct 95 21:32 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <11763-0@frigate.doc.ic.ac.uk>; Sat, 7 Oct 1995 01:36:47 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA09521 for perldb-interest-real; Fri, 6 Oct 1995 16:43:06 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gsb.crimson.com (gsb.crimson.com [128.83.193.48]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id QAA09517 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 16:43:04 -0700
Received: from rhine.ece.utexas.edu by gsb.crimson.com (AIX 3.2/UCB 5.64/4.03) 
          id AA35167; Fri, 6 Oct 1995 18:45:16 -0500
Date: Fri, 6 Oct 1995 18:42:13 -0500 (CDT)
From: Stephen Cheung <stephenc@gsb.crimson.com>
X-Sender: stephenc@rhine.ece.utexas.edu
To: perldb-interest@fugue.com
Subject: unsubscribe
Message-Id: <Pine.A32.3.91.951006184203.39642M-100000@rhine.ece.utexas.edu>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII


---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28312-108@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:35:13 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 07 Oct 95 20:33:19 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id bh27174;
          7 Oct 95 21:32 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <11857-0@frigate.doc.ic.ac.uk>; Sat, 7 Oct 1995 01:38:04 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA09444 for perldb-interest-real; Fri, 6 Oct 1995 16:30:01 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from mox.perl.com (Warm-Fuzzies@perl.com [199.45.129.30]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id QAA09437 
          for <perldb-interest@fugue.com>; Fri, 6 Oct 1995 16:29:53 -0700
Received: from localhost.perl.com (Warm-Fuzzies@localhost.perl.com [127.0.0.1]) 
          by mox.perl.com (8.6.12/8.6.12) with SMTP id RAA00259;
          Fri, 6 Oct 1995 17:30:35 -0600
To: Mark Jefferys <mark@skye.as.utexas.edu>
cc: Tim Bunce <Tim.Bunce@ig.co.uk>, tye@metronet.com, lwall@scalpel.netlabs.com, 
    perldb-interest@fugue.com, perlbug@perl.com, tchrist@mox.perl.com
Subject: Re: perl bug: array of undefs is falsely false
In-reply-to: Mark Jefferys's message <Pine.SOL.3.91.951006154710.4926D-100000@skye.as.utexas.edu> of Fri, 06 Oct 95 16:16:52 CDT.
References: <Pine.SOL.3.91.951006154710.4926D-100000@skye.as.utexas.edu>
Date: Fri, 06 Oct 95 17:30:34 MDT
Message-ID: <256.813022234@mox>
From: Tom Christiansen <tchrist@mox.perl.com>

> %> From: Mark Jefferys <mark@skye.as.utexas.edu>
> %> 
> %>% since "if( @arr= (getpwent)[0,2] )" never worked in perl4 anyway.
> %>
> %> Note that this has worked in perl5 for a little while, so there may be
> %> a few scripts that this would break.

Yes, I remember getting Larry to fix it, as I'm the one who submitted
that bug.  I do see why you're upset by it, though.

--tom
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28312-145@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:41:40 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 08 Oct 95 02:53:19 GMT
Received: from [204.254.239.2] by punt-1.mail.demon.net id aa24954;
          8 Oct 95 3:51 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA01280 for perldb-interest-real; Sat, 7 Oct 1995 18:39:02 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from mailgw.claircom.com (mailgw.claircom.com [199.5.241.51]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id SAA01276 
          for <perldb-interest@fugue.com>; Sat, 7 Oct 1995 18:39:00 -0700
Received: from nimo.claircom.com by mailgw.claircom.com 
          with smtp (Smail3.1.26.7 #2) id m0t1kjr-0004tjC;
          Sat, 7 Oct 95 18:41 PDT
Received: from airone.claircom.com by nimo.claircom.com 
          with smtp (Smail3.1.26.7 #2) id m0t1kjq-0005V1C;
          Sat, 7 Oct 95 18:41 PDT
Received: from soc4.airone.claircom.com by airone.claircom.com (5.0/SMI-SVR4) 
          id AA13033; Sat, 7 Oct 1995 18:39:27 -0700
Received: by soc4.airone.claircom.com (4.1/SMI-4.1) id AA02763;
          Sat, 7 Oct 95 18:37:23 PDT
Date: Sat, 7 Oct 95 18:37:23 PDT
From: William Warner <billw@airone.claircom.com>
Message-Id: <9510080137.AA02763@soc4.airone.claircom.com>
To: perldb-interest@fugue.com
Subject: subscribe me
content-length: 13

subscribe me
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28312-170@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:46:53 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 08 Oct 95 07:38:39 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa20469;
          8 Oct 95 8:38 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id XAA01655 for perldb-interest-real; Sat, 7 Oct 1995 23:42:12 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id XAA01651 
          for <perldb-interest@fugue.com>; Sat, 7 Oct 1995 23:42:11 -0700
Received: by gw.home.vix.com id AA25041; Sat, 7 Oct 95 23:44:27 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id BAA23083; Sun, 8 Oct 1995 01:44:25 -0500
Date: Sun, 8 Oct 1995 01:44:24 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: DBI perl <perldb-interest@vix.com>
Cc: quickbase@gun.com
Subject: (fwd) C + ObjC + Perl == Problems. (fwd)
Message-Id: <Pine.SUN.3.91.951008014311.23032A-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

NOTE: I also posted  this to next.programmers and perl.misc newsgroups

I'm writing a loadable module for Perl DBI for QuickBase...And I'm having
problems resolve some of the Objective-Cisms.

This is what I'm doing...

cc -c -DUSE_NEXT_CTYPE -O dbdimp.c -ObjC  -I/usr/local/lib/perl5/i386-next/CORE
cc -c -DUSE_NEXT_CTYPE -O QBase.c -ObjC  -I/usr/local/lib/perl5/i386-next/CORE
ld -o QBase.so -lNeXT_s -lMedia_s QBase.o dbdimp.o

The ld returns:

ld: Undefined symbols:ld: 
_stack_sp
_markstack_ptr
_stack_base
_croak
_sv_mortalcopy
_dirty
_perl_get_sv
_Xpv
_sv_2bool
_sv_setiv
_sv_setpv
_newSViv
_sv_2mortal
_na
_sv_2pv
_sv_no
_sv_yes
_newSVpv
_sv_undef
_warn
_sv_newmortal
_op
_dowantarray
_stack_max
_stack_grow
_sv_2iv
_newSV
_newRV
_newXS
_printf
_objc_msgSend
_hv_store
_sprintf
_fprintf
_hv_fetch
_sv_setsv
.objc_class_name_QuickBase
 

Now, there are some Perl stuff in there that I don't care about because perl5 
deals with it when it loads it...But 

.objc_class_name_QuickBase   and _objc_msgSend  are ObjCism that I need to
get rid of...

Is there ANY way of doing this in NeXT?  Or what are my options?

---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28312-172@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:47:18 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 08 Oct 95 07:52:01 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa24814;
          8 Oct 95 8:51 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id AAA01699 for perldb-interest-real; Sun, 8 Oct 1995 00:03:29 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id AAA01695 
          for <perldb-interest@fugue.com>; Sun, 8 Oct 1995 00:03:27 -0700
Received: by gw.home.vix.com id AA26211; Sun, 8 Oct 95 00:05:40 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id IAA13730;
          Sun, 8 Oct 1995 08:04:23 +0100
Date: Sun, 8 Oct 1995 08:04:23 +0100
Message-Id: <199510080704.IAA13730@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: mouring@netnet.net
Cc: perldb-interest@vix.com, quickbase@gun.com
In-Reply-To: <Pine.SUN.3.91.951008014311.23032A-100000@netnet1.netnet.net> (message from Ben Lindstrom on Sun, 8 Oct 1995 01:44:24 -0500 (CDT))
Subject: Re: (fwd) C + ObjC + Perl == Problems. (fwd)
Reply-To: andreas.koenig@mind.de

>>>>> "Ben" == Ben Lindstrom <mouring@netnet.net> writes:

    Ben> NOTE: I also posted  this to next.programmers and perl.misc newsgroups
    Ben> I'm writing a loadable module for Perl DBI for QuickBase...And I'm having
    Ben> problems resolve some of the Objective-Cisms.

    Ben> This is what I'm doing...

    Ben> cc -c -DUSE_NEXT_CTYPE -O dbdimp.c -ObjC  -I/usr/local/lib/perl5/i386-next/CORE
    Ben> cc -c -DUSE_NEXT_CTYPE -O QBase.c -ObjC  -I/usr/local/lib/perl5/i386-next/CORE
    Ben> ld -o QBase.so -lNeXT_s -lMedia_s QBase.o dbdimp.o

    Ben> The ld returns:

    [...]
    Ben> .objc_class_name_QuickBase
 

    Ben> Now, there are some Perl stuff in there that I don't care about because perl5 
    Ben> deals with it when it loads it...But 

    Ben> .objc_class_name_QuickBase   and _objc_msgSend  are ObjCism that I need to
    Ben> get rid of...

    Ben> Is there ANY way of doing this in NeXT?  Or what are my options?

You most definitely have to link statically. I have done something
similar quite a long time ago, and I'm not sure anymore, what did the
trick: either build the extension statically or link the libNeXT into
perl. Or both :)

Hope that helps,
andreas

---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28312-179@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:48:37 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 08 Oct 95 09:42:41 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa05516;
          8 Oct 95 10:42 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id BAA02043 for perldb-interest-real; Sun, 8 Oct 1995 01:29:41 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id BAA02039 
          for <perldb-interest@fugue.com>; Sun, 8 Oct 1995 01:29:40 -0700
Received: by gw.home.vix.com id AA01671; Sun, 8 Oct 95 01:31:54 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id JAA14024;
          Sun, 8 Oct 1995 09:30:56 +0100
Date: Sun, 8 Oct 1995 09:30:56 +0100
Message-Id: <199510080830.JAA14024@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: mouring@netnet.net
Cc: perldb-interest@vix.com
In-Reply-To: <Pine.SUN.3.91.951008020812.23560A-100000@netnet1.netnet.net> (message from Ben Lindstrom on Sun, 8 Oct 1995 02:09:55 -0500 (CDT))
Subject: Re: (fwd) C + ObjC + Perl == Problems. (fwd)
Reply-To: andreas.koenig@mind.de

>>>>> "Ben" == Ben Lindstrom <mouring@netnet.net> writes:

    Ben> On Sun, 8 Oct 1995, Andreas Koenig wrote:

    >> >>>>> "Ben" == Ben Lindstrom <mouring@netnet.net> writes:
    >> 
    Ben> [..]
    Ben> This is what I'm doing...
    >> 
    Ben> cc -c -DUSE_NEXT_CTYPE -O dbdimp.c -ObjC  -I/usr/local/lib/perl5/i386-next/CORE
    Ben> cc -c -DUSE_NEXT_CTYPE -O QBase.c -ObjC  -I/usr/local/lib/perl5/i386-next/CORE
    Ben> ld -o QBase.so -lNeXT_s -lMedia_s QBase.o dbdimp.o
    >> 
    Ben> [..]
    >> You most definitely have to link statically. I have done something
    >> similar quite a long time ago, and I'm not sure anymore, what did the
    >> trick: either build the extension statically or link the libNeXT into
    >> perl. Or both :)
    >> 
    Ben> I thought that was what I was doing with:
    Ben>   ld -o QBase.so -lNeXT_s -lMedia_s [...]

Nope, you are trying to link libNeXT_s into the .so file which is a
dynamically loaded file which refuses to take the library contents
because libNeXT_s is a shared library. Try 'make perl' and see what
happens with this newly created perl.

    Ben> Linking in the NeXT development libraries.

    Ben> Maybe I have something slightly wrong.

As I said, I'm not quite firm in what I say, but I know, I did see
NeXT objects called from a perl script on my monitor.

andreas


---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <28312-194@ignite.demon.co.uk>; Mon, 9 Oct 1995 07:51:13 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 09 Oct 95 00:09:39 GMT
Received: from [204.254.239.2] by punt-1.mail.demon.net id aa16519;
          9 Oct 95 1:09 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA04344 for perldb-interest-real; Sun, 8 Oct 1995 15:41:24 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from skye.as.utexas.edu (skye.as.utexas.edu [128.83.129.233]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA04340 
          for <perldb-interest@fugue.com>; Sun, 8 Oct 1995 15:41:22 -0700
Received: by skye.as.utexas.edu (5.x/SMI-SVR4) id AA06096;
          Sun, 8 Oct 1995 17:40:50 -0500
Date: Sun, 8 Oct 1995 17:40:49 -0500 (CDT)
From: Mark Jefferys <mark@skye.as.utexas.edu>
To: Larry Wall <lwall@scalpel.netlabs.com>
Cc: Tim Bunce <Tim.Bunce@ig.co.uk>, tye@metronet.com, perldb-interest@fugue.com, 
    perlbug@perl.com
Subject: Re: perl bug: array of undefs is falsely false
In-Reply-To: <9510062249.AA09086@scalpel.netlabs.com>
Message-Id: <Pine.SOL.3.91.951007164013.5745C-100000@skye.as.utexas.edu>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Fri, 6 Oct 1995, Larry Wall wrote:

% I think that as we move into using prototypes, func1() above would
% probably be declared as
% 
%     sub func1 ($$$);
% 
% so you wouldn't be able to say
% 
%     func1((func2())[1,3], ++$cnt);
% 
% in any event.  (Unless I did something Really Strange with argument
% processing to make it look inside a list slice.)

Assuming someone used prototypes.  Also, the same limitation applies to 
the arguments of a format.


Mark

---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <07679-0@ignite.demon.co.uk>; Mon, 9 Oct 1995 13:24:32 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 09 Oct 95 11:09:17 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa03862;
          9 Oct 95 12:08 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id CAA06994 for perldb-interest-real; Mon, 9 Oct 1995 02:14:39 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from cvrelay.cv.com (cvrelay.CV.COM [130.21.162.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id CAA06990 
          for <perldb-interest@fugue.com>; Mon, 9 Oct 1995 02:14:37 -0700
Received: from dm-server.cv.com. (dm-server.CV.COM [130.21.231.252]) 
          by cvrelay.cv.com (8.6.9/8.6.9) with SMTP id FAA04368 
          for <perldb-interest@fugue.com>; Mon, 9 Oct 1995 05:20:30 -0400
Received: from cobra.cv.com by dm-server.cv.com. (5.0/SMI-SVR4) id AA10807;
          Mon, 9 Oct 1995 10:13:44 +0100
Errors-To: mkr@cobra
Received: by cobra.cv.com (4.1/SMI-4.1) id AA20319; Mon, 9 Oct 95 10:15:50 +0100
Date: Mon, 9 Oct 95 10:15:50 +0100
From: Martin {martlbub} Kraegeloh <mkr@dm-server.cv.com>
Message-Id: <9510090915.AA20319@cobra.cv.com>
Errors-To: mkr@dm-server.cv.com
Reply-To: mkr@dm-server.cv.com
Errors-To: mkr@dm-server.cv.com
To: perldb-interest@fugue.com
content-length: 10

subscribe
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <09708-0@ignite.demon.co.uk>; Mon, 9 Oct 1995 16:44:17 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 09 Oct 95 15:09:56 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa21249;
          9 Oct 95 16:09 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa13208;
          9 Oct 95 16:08 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA07510 for perldb-interest-real; Mon, 9 Oct 1995 06:26:56 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id GAA07506 
          for <perldb-interest@fugue.com>; Mon, 9 Oct 1995 06:26:54 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id ae03980;
          9 Oct 95 13:25 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <02772-0@ignite.demon.co.uk>;
          Mon, 9 Oct 1995 10:59:02 +0100
To: perldb-interest@fugue.com, adrianp@powertech.no
Date: Mon, 9 Oct 1995 10:59:02 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510091325.ae03980@relay-3.mail.demon.net>


> From: Adrian Phillips <adrianp@powertech.no>
> 
> help
> 
I suspect you may have meant to post that to perldb-interest-request@vix.com
thinking that it's an automated server.

Actually Ted Lemon runs it by hand.

Send a subscription message to perldb-interest-request@vix.com
and Ted'll process it for you.

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <09706-0@ignite.demon.co.uk>; Mon, 9 Oct 1995 16:44:17 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 09 Oct 95 15:17:39 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa21214;
          9 Oct 95 16:16 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA07462 for perldb-interest-real; Mon, 9 Oct 1995 06:07:17 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id GAA07458 
          for <perldb-interest@fugue.com>; Mon, 9 Oct 1995 06:07:13 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id af03980;
          9 Oct 95 13:25 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <02910-0@ignite.demon.co.uk>;
          Mon, 9 Oct 1995 11:20:47 +0100
To: perldb-interest@fugue.com, chet@watson.ibm.com
Subject: Re: Protocol for Nullsv?
Date: Mon, 9 Oct 1995 11:20:47 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510091325.af03980@relay-3.mail.demon.net>


> From: Chet Murthy <chet@watson.ibm.com>
> 
> I have read in the Perl documentation that it is bad style to return
> Nullsv -- that one should instead return &sv_undef.
> 
In general yes. Either that or put nothing on the stack at all.

> I have also noticed that in the Oracle DBD driver (dbdimp.c) to be
> exact, Nullav is returned all over the place.
> 
If dbd_st_fetch counts as 'all over the place' then yes.

> Is this intentional, or merely accidental?  That is, can one in fact
> use Nullsv (or Nullav) freely?
> 
Yes (mostly). You can't put NULLs on the perl stack. Generally the XS
code does the right thing with NULLs being returned from dbdimp.c.

> Thanks,
> --chet--


> From: Chet Murthy <chet@watson.ibm.com>
> 
> [I'm new to this list, so if this is not the way to present bugs with
> DBI, or the drivers, please let me know. --chet--]
> 
This is the way to do it. For bugs mail me and CC to perldb-interest.

> There seems to be a bug in the fetch() function in DB2.xs, which, I
> think, is also present in the Oracle version.  I enclose the diffs for
> the DB2 version, which, should be transportable to the Oracle code.

Yes, it's a bug. It may also have been carried over to mSQL etc.
Thanks for spotting it.

> Synopsis: If I call $st->fetch(), which calls dbd_st_fetch, it returns
> an AV, which is cast to an SV, and then returned immediately.  But it
> needs to be wrapped up in a reference before being returned.
> 
> This results in the code below:
> 
> ----------------------------------------------------------------
> #!/u/chet/contrib/bin/perl
> 
> use DBI;
> $dbh = DBI->connect('sample');
> $stmt = $ARGV[0];
> $sth = $dbh->prepare($stmt);
> print "NUM Params: ",$sth->{'NUM_OF_PARAMS'},"\n";
> $sth->execute();
> while ($ary = $sth->fetch) {
> 	$" = "||"; print "Row: @{$ary}\n";
> }
> $sth->finish();
> ----------------------------------------------------------------
> 
> failing instantly with an "undef" -- that is, the first fetch fails, even
> if the query returns something, because the return value of dbd_st_fetch
> is lost.  If I turn on debugging, I see that DBI::dispatch thinks that
> it's been returned an undef (since an AV is not an SV).
> 
> The modification:
> 
> ----------------------------------------------------------------
> --- DB2.xs.~1~  Fri Sep 22 14:46:02 1995
> +++ DB2.xs      Fri Oct  6 19:53:05 1995
> @@ -221,7 +221,12 @@
>  fetch(sth)
>      SV *       sth
>      CODE:
> -    ST(0) = (SV*)dbd_st_fetch(sth);
> +    AV *    av = dbd_st_fetch(sth);
> +    if (av == Nullav) {
> +      ST (0) = &sv_undef;
> +    } else {
> +      ST(0) = newRV ((SV *)av);
> +    }
> ----------------------------------------------------------------
> 
> (1) wraps non-NULL AV's in a reference, which is what is returned
> 
> (2) returns &sv_undef if the array is empty -- i.e., if the fetch
> failed.
> 
That looks fine. I think the newRV line needs to be:

        ST(0) = sv_2mortal(newRV((SV *)av));

to avoid leaks.

Thanks again.

Tim.
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <10725-0@ignite.demon.co.uk>; Mon, 9 Oct 1995 17:03:04 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 09 Oct 95 16:02:36 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa13742;
          9 Oct 95 17:02 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa17941;
          9 Oct 95 16:59 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA07684 for perldb-interest-real; Mon, 9 Oct 1995 07:16:40 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id HAA07680 
          for <perldb-interest@fugue.com>; Mon, 9 Oct 1995 07:16:37 -0700
Received: from fruitbat (fruitbat.mcqueen.com [193.133.160.246]) 
          by fruitbat.mcqueen.com (8.6.12/8.6.12) with SMTP id PAA18670;
          Mon, 9 Oct 1995 15:14:50 +0100
Message-ID: <30792E59.1833@hermetica.com>
Date: Mon, 09 Oct 1995 15:14:49 +0100
From: Alligator Descartes <descarte@hermetica.com>
X-Mailer: Mozilla 2.0b1 (X11; I; SunOS 5.3 sun4m)
MIME-Version: 1.0
To: Tim Bunce <Tim.Bunce@ig.co.uk>
CC: perldb-interest@fugue.com
Subject: Re: OraPerl on NT
References: <9510091448.aa21879@relay-3.mail.demon.net>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Tim Bunce wrote:

> >      If you like, I can ftp my source files to you.  Just give me an
> >      address as to were to put them.
> >
> If it's not that complicated perhaps you could just write a step-by-step
> README.NT (in the same vein as the existing README.oracle7 & README.Solaris2)
> That's generally better then just sending me a whole stack of source files.

That sounds like a plan. If you want to send me a copy of the text, I'll put it up
on the DBI site for other's perusal....
 
> Either way since this relates to Perl4 and oraperl-2.4 all I'll do is
> drop them into the archive.

Likewise, you can send the stuff across to me at:

	ftp://ftp.mcqueen.com/incoming

and let me know. 
 
> Any chance you could have a go at getting NTperl *5* and DBI + DBD::Oracle
> ported?

Perversely enough, I'm having a look at this just now.........Completely horrible
it is too.....

8-)

> Tim.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.mcqueen.com/hermetica
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <11105-0@ignite.demon.co.uk>; Mon, 9 Oct 1995 17:14:30 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 09 Oct 95 16:08:56 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa20873;
          9 Oct 95 17:08 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <04901-0@frigate.doc.ic.ac.uk>; Mon, 9 Oct 1995 16:48:29 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA07631 for perldb-interest-real; Mon, 9 Oct 1995 07:03:23 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA07627 
          for <perldb-interest@fugue.com>; Mon, 9 Oct 1995 07:03:16 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id aa21879;
          9 Oct 95 14:48 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <08252-0@ignite.demon.co.uk>;
          Mon, 9 Oct 1995 14:48:39 +0100
To: Ed_Bornman@ccmail.orl.mmc.com
Subject: Re: OraPerl on NT
Cc: perldb-interest@fugue.com
Date: Mon, 9 Oct 1995 14:48:39 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510091448.aa21879@relay-3.mail.demon.net>


> From: Ed_Bornman@ccmail.orl.mmc.com
> 
>      Dear Tim;
>      
>      
>      I have Oraperl running at this time on NT.  I'm using NT 3.5 and 
>      accessing Oracle on my NT box.  Seems to be running great!
>
>      Here is what I did.  I used a copy of the NTPerl source and a copy of 
>      the OraPerl 2.4 source.  I added the need commands to the ntperl 
>      makefile to add the oracle files.  Combined the userstub from ntperl 
>      with the needed changes from the userstub from oraperl.  I'm using 
>      Microsoft Visual C++ 2.0 as my compiler.  The biggest trick was the 
>      linking.  You must have ProC version 1.6 for NT to get the 32 bit 
>      libs.
>      
>      If you like, I can ftp my source files to you.  Just give me an 
>      address as to were to put them.
> 
If it's not that complicated perhaps you could just write a step-by-step
README.NT (in the same vein as the existing README.oracle7 & README.Solaris2)
That's generally better then just sending me a whole stack of source files.

Either way since this relates to Perl4 and oraperl-2.4 all I'll do is
drop them into the archive.

Any chance you could have a go at getting NTperl *5* and DBI + DBD::Oracle
ported?

Tim.
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <12564-2@ignite.demon.co.uk>; Mon, 9 Oct 1995 18:50:16 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 09 Oct 95 17:19:59 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa19447;
          9 Oct 95 18:19 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa24982;
          9 Oct 95 18:16 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA08044 for perldb-interest-real; Mon, 9 Oct 1995 08:34:29 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA08040 
          for <perldb-interest@fugue.com>; Mon, 9 Oct 1995 08:34:27 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id KAA104512;
          Mon, 9 Oct 1995 10:36:44 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA24438;
          Mon, 9 Oct 1995 10:36:44 -0500
Message-Id: <9510091536.AA24438@dax.austin.ibm.com>
To: perldb-interest@fugue.com, adrianp@powertech.no
In-Reply-To: Your message of Mon, 09 Oct 95 10:59:02 +0100. <9510091325.ae03980@relay-3.mail.demon.net>
Date: Mon, 09 Oct 95 10:36:43 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> 
> > From: Adrian Phillips <adrianp@powertech.no>
> > 
> > help
> > 
> I suspect you may have meant to post that to perldb-interest-request@vix.com
> thinking that it's an automated server.
> 
> Actually Ted Lemon runs it by hand.
> 
> Send a subscription message to perldb-interest-request@vix.com
> and Ted'll process it for you.
> 
> Tim.


Make that 

perldb-interest-request@fugue.com
                        ^^^^^
                          New host.


Mike
mhm@austin.ibm.com
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <14169-22@ignite.demon.co.uk>; Mon, 9 Oct 1995 20:57:32 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 09 Oct 95 19:33:57 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id ar03080;
          9 Oct 95 20:33 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <09253-0@frigate.doc.ic.ac.uk>; Mon, 9 Oct 1995 20:06:23 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA08388 for perldb-interest-real; Mon, 9 Oct 1995 10:06:25 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from proxy.netlabs.com (ns.sems.com [192.94.48.47]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id KAA08384 
          for <perldb-interest@fugue.com>; Mon, 9 Oct 1995 10:06:23 -0700
Received: by proxy.netlabs.com (4.1/SMI-4.1) id AA17585;
          Mon, 9 Oct 95 10:13:30 PDT
Received: from vaccine-bb.sems.com(192.190.199.1) by proxy.netlabs.com 
          via smap (V1.3) id sma017583; Mon Oct 9 10:13:00 1995
Received: from scalpel.netlabs.com by netlabs.com (4.1/SMI-4.1) id AA28212;
          Mon, 9 Oct 95 10:10:01 PDT
Received: from localhost.netlabs.com by scalpel.netlabs.com (4.1/SMI-4.1) 
          id AA27196; Mon, 9 Oct 95 10:08:56 PDT
Message-Id: <9510091708.AA27196@scalpel.netlabs.com>
To: Mark Jefferys <mark@skye.as.utexas.edu>
Cc: Tye McQueen <tye@metronet.com>, perldb-interest@fugue.com, perlbug@perl.com
Subject: Re: perl bug: array of undefs is falsely false
In-Reply-To: Your message of "Sun, 08 Oct 95 17:43:40 CDT." <Pine.SOL.3.91.951007165231.5745D-100000@skye.as.utexas.edu>
Date: Mon, 09 Oct 95 10:08:55 -0700
From: Larry Wall <lwall@scalpel.netlabs.com>

: On Sat, 7 Oct 1995, Tye McQueen wrote:
: 
: % Excerpts from the mail message of Mark Jefferys:
: % ) % I'd also like a way to tell if a key is present in a hash, ie. 
: % [...]
: % ) Or how about "exists $hash{$key}"?  I don't think it would take too
: % ) much effort to add that.  :-)
: % 
: % No fair adding it my copy while I'm not looking! :)
: 
: Oops.
: 
: % defined() should only check an expression value so defined(&func)
: % should be the same as defined($x=&func).

Um, defined() is also magical for arrays and hashes, guys.

: This is mostly the confusion between &func as a way of referring to
: &func, and as a way of calling it.  A good reason to deprecate the
: latter, IMHO.

Gee, it's context dependent.  How awful...  :-)

: % To see if a function exists, you should use exists(&func).
: % exists() does not take an expression or value as an argument
: % so saving some value in $save=oper() doesn't effect what
: % exists($save) returns (except when doing so creates $save).
: 
: OK.  I like that, actually.

But I think exists(&func) should determine whether the function has
been *declared*, not whether the function has been defined.  I would
like to be able to distinguish the two.

: % Now silly stuff on how exists() and delete() should be extended:
: % 
: % delete(&func) would be used to make the next &func re-autoload.
: % undef(&func) would keep its current behavior, to make &func() an
: % error (leave &func cached as if autoloading failed).
: % 
: % $x= "global";
: % { my $x= "my";
: %   print "($x) ";
: %   delete($x);	# Remove lexical from scope, a compile-time op
: %   print "<$x> ";
: %   delete($x);	# Delete $x from symbol table
: %   print "[$x]\n";
: % }
: % # This would print "(my) <global> []".
: 
: That's either really clever or really gross---I can't quite decide.  I
: think I like it.

I'd rather not say what I think of it.

: % Notice how my mind likes to deny that it is "x" in the symbol
: % table and not "$x"?  But NoneSuch would allow us to hide that
: % fact. ;>
: 
: Perhaps.  I don't see any reason why we need to add an actual NoneSuch
: scalar to make this work.
: 
: IDEA:  One thing that could be done---and this would cut down on spurious 
: warnings a lot---is to create the SVs, AVs, and HVs when first
: accessed, instead of when their containing GVs are created.  A warning
: could be produced if this is done in a non-modification context.
: 
: I don't know precisely how this would affect performance, though.
: For example, there would need to be an extra check in pp_sv to see
: that the accessed scalar was non-zero.  On the other hand, Perl
: wouldn't waste time (and space) creating unused AVs and HVs when
: someone uses $x without the others.  And the current warning checks
: could be thrown out.

As far as I know, the only time Perl creates AVs and HVs on spec is
when sv_setsv() creates a fake *.  And I found last week that I could
comment out that Perl4-derived code now because in Perl 5, fake globs
are true aliases rather than temporary namespaces, as in Perl 4.  (Perl 4
actually copied the pointers, while Perl 5 keeps a reference counted GP
("glob pointer") structure.)

So it looks like we've already reached a state where the Perl 5 compiler
always knows when it has to create values, at least for arrays and hashes.

I believe it still creates SVs on spec though.  You'll note the code
that pushes SV values doesn't bother to check whether it's an lvalue.

Larry
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <15683-0@ignite.demon.co.uk>; Mon, 9 Oct 1995 22:31:46 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 09 Oct 95 21:03:52 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa10002;
          9 Oct 95 22:03 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA08854 for perldb-interest-real; Mon, 9 Oct 1995 12:24:34 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id MAA08850 
          for <perldb-interest@fugue.com>; Mon, 9 Oct 1995 12:24:31 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id ac03980;
          9 Oct 95 13:24 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <02735-0@ignite.demon.co.uk>;
          Mon, 9 Oct 1995 10:47:11 +0100
To: phj@pilot.njin.net
Subject: Re: How to query for primary keys ?
Cc: perldb-interest@fugue.com
Date: Mon, 9 Oct 1995 10:47:11 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510091324.ac03980@relay-3.mail.demon.net>


> From: "Patricia H. Ju" <phj@pilot.njin.net>
> 
> Hi,
> 
> How does one query
> 	1. if a certain field is a primary key
> 	2. if a table has a primary key
> 	3. what the primary key of a table is, if one exists
> using DBD-Oracle?
> 
You currently have to rummage in the system catalogs.

X/Open has defined an interface for this info so I'll appear in
the DBI/DBD's in time.

Tim.
---+++---
Received: from punt-4.mail.demon.net by ignite.demon.co.uk with SMTP (PP) 
          id <15681-0@ignite.demon.co.uk>; Mon, 9 Oct 1995 22:31:47 +0100
Received: from punt-4.mail.demon.net by mailstore for dbperl@ignite.demon.co.uk 
          id <813273604:27633>; Mon, 9 Oct 95 21:20:04 GMT
Received: from relay-1.mail.demon.net by punt-4.mail.demon.net id aa27536;
          9 Oct 95 22:19 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id ab15296;
          9 Oct 95 22:15 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA08904 for perldb-interest-real; Mon, 9 Oct 1995 12:40:36 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA08900 
          for <perldb-interest@fugue.com>; Mon, 9 Oct 1995 12:40:33 -0700
Received: by gw.home.vix.com id AA22492; Mon, 9 Oct 95 12:42:48 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id aa03579;
          9 Oct 95 19:16 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <13084-0@ignite.demon.co.uk>;
          Mon, 9 Oct 1995 19:16:20 +0100
To: perldb-interest@vix.com, gcheng@npac.syr.edu
Subject: Re: (no subject)
Date: Mon, 9 Oct 1995 19:16:20 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510091916.aa03579@relay-3.mail.demon.net>


> From: Gang Cheng <gcheng@npac.syr.edu>
> 
> We at Northeast Parallel Architecture Center (NPAC), Syracue
> University has developed an archive system for searching/reading 
> USENET newsgrou
> ps,
> mailing lists and personal mailbox from WWW. An Oracle database 
> server is used
> to store/manage mails and two search/navigation interfaces
> accesible by any WWW browser
> to the archive are provided: one is an advanced search interface
> allowing queries with various options such as query by mail 
> header,
> by date, by subject (keywords), by sender. The other is a 
> Hypermail-like
> navigation interface for users familiar with Hypermail.
> 
> We offer free access to this archive for the Internet
> Internet community. Check the URL
> 
> <URL:http://kayak.npac.syr.edu:1963>.
> 
> The whole archive is automatically updated in
> every 30 minutes. Currently the following newsgroups (total 40) 
> are archived
> in the database:
> 
> comp.arch
> comp.databases
> comp.databases.oracle
> comp.parallel
> comp.parallel.mpi
> comp.parallel.pvm
> comp.lang.java
> alt.www.hotjava
> comp.infosystems
> comp.infosystems.www.authoring.cgi
> comp.infosystems.www.announce
> comp.infosystems.www.authoring.html
> comp.infosystems.www.authoring.images
> comp.infosystems.www.authoring.misc
> comp.infosystems.www.misc
> comp.infosystems.www.advocacy
> comp.infosystems.www.browsers.mac
> comp.infosystems.www.browsers.ms-windows
> comp.infosystems.www.browsers.x
> comp.infosystems.www.browsers.misc
> comp.infosystems.www.servers.ms-windows
> comp.infosystems.www.servers.unix
> comp.infosystems.www.servers.mac
> comp.infosystems.www.servers.misc
> comp.graphics
> comp.graphics.visualization
> comp.lang.c++
> comp.multimedia
> comp.security.misc
> comp.sources.unix
> comp.sources.x
> comp.unix.admin
> comp.unix.aix
> comp.unix.misc
> comp.unix.programmer
> comp.unix.solaris
> alt.comp.compression
> comp.databases.object
> comp.lang.perl.misc
> syr.general
> 
> The following mailing lists are archived:
> 
> java-interest
> java-porting
> java-announce
> hotjava-interest
> sp-discussion
> www-vrml
> perldb-interest-request@fugue.com
> 
> This system is still under development and more functions are 
> planned to
> add to this system. Please send your comments to Gang Cheng 
> (gcheng@npac.syr.edu
> . Thanks.
> 
> --- Gang
> 

I'd suggest adding comp.lang.perl.announce, comp.lang.perl.tk (recently
passed voting) and the perl5-porters@nicoh.com mailing list.

The perldb-interest-request@fugue.com should be perldb-interest@fugue.com.

Thanks for archiving all this.

Tim.

---+++---
Received: from punt-4.mail.demon.net by ignite.demon.co.uk with SMTP (PP) 
          id <15681-2@ignite.demon.co.uk>; Mon, 9 Oct 1995 22:32:18 +0100
Received: from punt-4.mail.demon.net by mailstore for dbperl@ignite.demon.co.uk 
          id <813274103:01817>; Mon, 9 Oct 95 21:28:24 GMT
Received: from relay-1.mail.demon.net by punt-4.mail.demon.net id aa01573;
          9 Oct 95 22:27 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa15748;
          9 Oct 95 22:20 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA08957 for perldb-interest-real; Mon, 9 Oct 1995 12:56:44 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id MAA08953 
          for <perldb-interest@fugue.com>; Mon, 9 Oct 1995 12:56:41 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id aa02942;
          9 Oct 95 19:14 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <12984-0@ignite.demon.co.uk>;
          Mon, 9 Oct 1995 19:11:01 +0100
To: perldb-interest@fugue.com, phj@pilot.njin.net
Subject: Re: Apologies
Date: Mon, 9 Oct 1995 19:11:01 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510091914.aa02942@relay-3.mail.demon.net>


> From: "Patricia H. Ju" <phj@pilot.njin.net>
> 
> Sorry for the perl question.  I did not realize this list was mainly
> adminnish.
> 
> Patricia

No need to apologise Patricia your question about determining primary
keys was perfectly on topic.

I certainly didn't mean to give the impression that your message was
out of place.  Perhaps I sent you a message aimed at someone else.
If so then I apologise.

Tim.

p.s. Sometimes I can get very terse when I'm rushed and that can come
across in a bad way. If that's the cause in this case then I'm sorry.

---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <17911-2@ignite.demon.co.uk>; Tue, 10 Oct 1995 07:06:08 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 09 Oct 95 22:30:54 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa07484;
          9 Oct 95 23:30 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA09176 for perldb-interest-real; Mon, 9 Oct 1995 13:50:29 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA09170 
          for <perldb-interest@fugue.com>; Mon, 9 Oct 1995 13:50:21 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id aa19851;
          9 Oct 95 16:44 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <08951-0@ignite.demon.co.uk>;
          Mon, 9 Oct 1995 16:09:42 +0100
To: descarte@hermetica.com
Subject: Re: OraPerl on NT
Cc: perldb-interest@fugue.com
Date: Mon, 9 Oct 1995 16:09:42 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510091644.aa19851@relay-3.mail.demon.net>


> From: Alligator Descartes <descarte@hermetica.com>
> 
> Tim Bunce wrote:
> 
> > >      If you like, I can ftp my source files to you.  Just give me an
> > >      address as to were to put them.
> > >
> > If it's not that complicated perhaps you could just write a step-by-step
> > README.NT (in the same vein as the existing README.oracle7 & README.Solaris2)
> > That's generally better then just sending me a whole stack of source files.
> 
> That sounds like a plan. If you want to send me a copy of the text, I'll put
> it up on the DBI site for other's perusal....

Ideally it should go onto my ftp archive from which it gets mirrored
to CPAN sites around the world.

Your DBI WWW site should have lots of pointers into archives rather
than copying chunks of archives locally otherwise we'll end up
duplicating much material with all the problems that leads to.
The CPAN work is the answer.

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <19356-0@ignite.demon.co.uk>; Tue, 10 Oct 1995 07:25:30 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 10 Oct 95 06:24:34 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id ab21434;
          10 Oct 95 7:23 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id WAA10237 for perldb-interest-real; Mon, 9 Oct 1995 22:02:36 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id WAA10233 
          for <perldb-interest@fugue.com>; Mon, 9 Oct 1995 22:02:34 -0700
Received: by gw.home.vix.com id AA28844; Mon, 9 Oct 95 22:04:49 -0700
Date: Mon, 9 Oct 95 22:04:49 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from song.iuol.cn.net by iui.iuol.cn.net id aa15671;
          10 Oct 95 12:55 PST
Mime-Version: 1.0
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
From: lhsong@iuol.cn.net
Subject: Unsubscribe
To: perldb-interest@vix.com
X-Mailer: SPRY Mail Version: 04.00.06.17
Message-Id: <9510101255.aa15671@iui.iuol.cn.net>



unsubscribe lhsong@iuol.cn.net

---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <27518-33@ignite.demon.co.uk>; Wed, 11 Oct 1995 07:11:25 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 11 Oct 95 05:15:09 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa09141;
          11 Oct 95 6:14 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id VAA13669 for perldb-interest-real; Tue, 10 Oct 1995 21:04:12 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id VAA13665 
          for <perldb-interest@fugue.com>; Tue, 10 Oct 1995 21:04:10 -0700
Received: by gw.home.vix.com id AA02322; Tue, 10 Oct 95 21:06:26 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id XAA01915; Tue, 10 Oct 1995 23:06:21 -0500
Date: Tue, 10 Oct 1995 23:06:20 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: DBI perl <perldb-interest@vix.com>
Subject: Partial Success with DBD::QBase (QuickBase)
Message-Id: <Pine.SUN.3.91.951010230037.23770D-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

After going through all the headaches of getting things to resolve for 
creating a shared library...I now come to the following.   (I've not had 
too much time to look into it.)

----- ./test.pl -d 5 QBase ----
    DBI dispatch debug level set to 5
    >> FETCH       DISPATCH (DBI::dr=HASH(0xc2698) @2 g0 a0 r1)
    -DebugDispatch: 5
Available Drivers: ExampleP, NullP, QBase
Read DBI special variable    <> $DBI::err (*) FETCH fro0
err:    99
errstr: 99
Attempt to modify DBI special variables.
Expect a 'Can't modify' error message:

Driver installed as DBI::dr=HASH(0x12d780)
m lasth=DBI::dr=HASH(0xc2698)
DBD::Switch::dr::errstr
    <> $DBI::err (*) FETCH from lasth=DBI::dr=HASH(0xc2698)
	err = ''99''
Can't modify $DBI::&rows special variable at ./test.pl line 59
DBI->install_driver DBI QBase
 at ./test.pl line 67
DBI->install_driver(QBase) loaded
install_driver(QBase): setup @ISA for DBD::QBase::dr
 at ./test.pl line 67
install_driver(QBase): setup @ISA for DBD::QBase::db
 at ./test.pl line 67
install_driver(QBase): setup @ISA for DBD::QBase::st
 at ./test.pl line 67
QBase_HOME not set!
    New DBI::dr (for DBD::QBase::dr, parent=, id=)
    dbih_setup_handle(DBI::dr=HASH(0x12d780)=>DBI::dr=HASH(0x13ddbc), DBD::QBase::dr, NULL)
    New DBI::dr => DBI::dr=HASH(0x12d780) (inner=DBI::dr=HASH(0x13ddbc)) for DBD::QBase::dr
DBI->install_driver(QBase) = DBI::dr=HASH(0x12d780)
    >> connect     DISPATCH (DBI::dr=HASH(0x12d780) @4 g0 a11c13c r1)
    -> connect for DBD::QBase::dr (DBI::dr=HASH(0x12d780)~0x13ddbc '' '' '')
    New DBI::db (for DBD::QBase::db, parent=DBI::dr=HASH(0x13ddbc), id=)
    dbih_setup_handle(DBI::db=HASH(0x13dd38)=>DBI::db=HASH(0x13dd74), DBD::QBase::db, NULL)
    New DBI::db => DBI::db=HASH(0x13dd38) (inner=DBI::db=HASH(0x13dd74)) for DBD::QBase::db
segmentation fault

--------

I'm happy I've successfully made it this far..

If my understanding is coorrect.. It's having a problem with my connect
to database routines.  Currect?  


---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <01282-0@ignite.demon.co.uk>; Wed, 11 Oct 1995 11:54:02 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 11 Oct 95 10:44:53 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa28087;
          10 Oct 95 19:19 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa23699;
          10 Oct 95 18:47 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA12256 for perldb-interest-real; Tue, 10 Oct 1995 07:47:55 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-3.mail.demon.net (post.demon.co.uk [158.152.1.72]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA12252 
          for <perldb-interest@fugue.com>; Tue, 10 Oct 1995 07:47:52 -0700
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id aa11204;
          10 Oct 95 14:49 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <22592-0@ignite.demon.co.uk>;
          Tue, 10 Oct 1995 14:49:11 +0100
To: perldb-interest@fugue.com
Subject: Any thoughts on the Oraperl emulation?
Date: Tue, 10 Oct 1995 14:49:11 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510101449.aa11204@relay-3.mail.demon.net>

My current plans are

	1. Make minor release soon to tidy up some loose ends
	  (such as the $sth->fetch bug)

	2. Implement DBD::Oracle row cache and release new version

	3. Aim to complete oraperl emulation and announce it as beta
	   (that's just the emulation that's going beta

At that point I hope to start addressing SQL CLI standards issues
in ernest.

Meanwhile does anyone have any comments on the current Oraperl
emulation that I can incorporate into the next release?

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <02128-0@ignite.demon.co.uk>; Wed, 11 Oct 1995 13:30:34 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 11 Oct 95 11:43:35 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa09370;
          11 Oct 95 12:43 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA15484 for perldb-interest-real; Wed, 11 Oct 1995 03:10:03 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id DAA15480 
          for <perldb-interest@fugue.com>; Wed, 11 Oct 1995 03:10:02 -0700
Received: by gw.home.vix.com id AA26977; Wed, 11 Oct 95 03:12:14 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from pccomtech.bgl.lu (cs0-a5.dial.eo.lu [193.93.48.249]) 
          by master.flower.it (8.6.11/8.6.9) with SMTP id MAA05103 
          for <perldb-interest@vix.com>; Wed, 11 Oct 1995 12:17:11 +0100
Message-Id: <199510111117.MAA05103@master.flower.it>
X-Sender: mbalestra@mail.flower.it
X-Mailer: Windows Eudora Version 1.4.4
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Wed, 11 Oct 1995 12:05:50 +0100
To: perldb-interest@vix.com
From: Massimo Balestra <mbalestra@flower.it>
Subject: Stored functions

Hi everybody,

I use DBI 0.63 with the DBD::Oracle 0.25 with the Oraperl emulation. The
platform is an IBM AIX (R6000) RISC machine.

A simple question: there is a way to access directly oracle stored functions
(stand-alone and package ones) ?  I tried with  this artifice:
local($SELECT) = "SELECT <function name>(<arguments>) FROM dual ";
local ($SH ) = &ora_open($ORA_LDA, $SELECT);
@INP = &ora_fetch($SH);
&ora_close($SH);

And it works but it is only a trick. I would like to know if there is
something more "clean".

Thank You
                       Massimo Balestra


---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <02128-2@ignite.demon.co.uk>; Wed, 11 Oct 1995 13:30:47 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 11 Oct 95 11:44:35 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id ab09557;
          11 Oct 95 12:43 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id CAA15430 for perldb-interest-real; Wed, 11 Oct 1995 02:47:33 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id CAA15426 
          for <perldb-interest@fugue.com>; Wed, 11 Oct 1995 02:47:26 -0700
Received: by gw.home.vix.com id AA23537; Wed, 11 Oct 95 02:49:40 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-1.mail.demon.net id ac06993;
          11 Oct 95 10:47 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <00150-0@ignite.demon.co.uk>;
          Wed, 11 Oct 1995 10:33:35 +0100
To: perldb-interest@vix.com, mouring@netnet.net
Subject: Re: Partial Success with DBD::QBase (QuickBase)
Date: Wed, 11 Oct 1995 10:33:35 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510111047.ac06993@relay-1.mail.demon.net>


> From: Ben Lindstrom <mouring@netnet.net>
> 
> After going through all the headaches of getting things to resolve for 
> creating a shared library...I now come to the following.   (I've not had 
> too much time to look into it.)
> 
>     >> connect     DISPATCH (DBI::dr=HASH(0x12d780) @4 g0 a11c13c r1)
>     -> connect for DBD::QBase::dr (DBI::dr=HASH(0x12d780)~0x13ddbc '' '' '')
>     New DBI::db (for DBD::QBase::db, parent=DBI::dr=HASH(0x13ddbc), id=)
>     dbih_setup_handle(DBI::db=HASH(0x13dd38)=>DBI::db=HASH(0x13dd74), DBD::QBase::db, NULL)
>     New DBI::db => DBI::db=HASH(0x13dd38) (inner=DBI::db=HASH(0x13dd74)) for DBD::QBase::db
> segmentation fault
> 
> I'm happy I've successfully made it this far..
> 
> If my understanding is coorrect.. It's having a problem with my connect
> to database routines.  Currect?  

You'll need to post a stack trace from the core dump before I can
help very much.

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06715-1@ignite.demon.co.uk>; Wed, 11 Oct 1995 17:57:24 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 11 Oct 95 16:29:43 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa27510;
          11 Oct 95 17:29 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA16002 for perldb-interest-real; Wed, 11 Oct 1995 06:52:35 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-1.mail.demon.net (relay-1.mail.demon.net [158.152.1.140]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id GAA15998 
          for <perldb-interest@fugue.com>; Wed, 11 Oct 1995 06:52:33 -0700
Received: from post.demon.co.uk by relay-1.mail.demon.net id ab09058;
          11 Oct 95 14:45 +0100
Received: from toad by oink with SMTP (PP) id <03189-0@oink>;
          Wed, 11 Oct 1995 14:03:42 +0100
Received: by toad (5.0/SMI-SVR4) id AA04343; Wed, 11 Oct 1995 14:03:22 +0000
Date: Wed, 11 Oct 1995 14:03:22 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9510111303.AA04343@toad>
To: perldb-interest@fugue.com
Subject: Test mail from new mail configuration - please ignore
X-Sun-Charset: US-ASCII
content-length: 322
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424

Sorry to bore you with this but I need to be sure that all is well.
The machine on my desk is about to upgrade from Solaris 1 to 2.
Because of this our Solaris 1 based PP mail system is moving to
a different box and I'm originating this from a third box.

Hopefully all this will be transparent to everyone outside.

Tim.
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <06943-0@ignite.demon.co.uk>; Wed, 11 Oct 1995 18:25:00 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 11 Oct 95 16:57:53 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id ab12509;
          11 Oct 95 13:28 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa25599;
          11 Oct 95 13:02 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA15479 for perldb-interest-real; Wed, 11 Oct 1995 03:10:02 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id DAA15474 
          for <perldb-interest@fugue.com>; Wed, 11 Oct 1995 03:10:00 -0700
Received: by gw.home.vix.com id AA26976; Wed, 11 Oct 95 03:12:11 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from pccomtech.bgl.lu (cs0-a5.dial.eo.lu [193.93.48.249]) 
          by master.flower.it (8.6.11/8.6.9) with SMTP id MAA05101;
          Wed, 11 Oct 1995 12:16:53 +0100
Message-Id: <199510111116.MAA05101@master.flower.it>
X-Sender: mbalestra@mail.flower.it
X-Mailer: Windows Eudora Version 1.4.4
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Wed, 11 Oct 1995 12:05:41 +0100
To: perldb-interest@vix.com
From: Massimo Balestra <mbalestra@flower.it>
Subject: Coredump on syntax errors
Cc: Tim.Bunce@ig.co.uk

Hi everybody,

I use DBI 0.63 with the DBD::Oracle 0.25 with the Oraperl emulation. The
platform is an IBM AIX (R6000) RISC machine.
The result of  perl -e 'use Config; print Config::myconfig()' is:
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=aix, osver=3.2.5, archname=aix
    uname='aix bgspectrum2 2 3 002016317100 '
    hint=recommended
  Compiler:
    cc='cc', optimize='-O'
    cppflags='-D_ALL_SOURCE'
    ccflags ='-D_ALL_SOURCE'
    ldflags =''
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=1, d_casti32=define, d_castneg=
    intsize=4, alignbytes=8, usemymalloc=y, randbits=15
  Libraries:
    so=so
    libpth=/lib /usr/lib /usr/ccs/lib /usr/local/lib
    libs=-ldbm -lld -lm -lc -lbsd -lPW
    libc=/usr/lib/libc.a
  Dynamic Linking:
    dlsrc=dl_aix.xs, dlext=so, d_dlsymun=
    cccdlflags=' ', ccdlflags='-bE:perl.exp', lddlflags='-H512 -T512
-bhalt:4 -bM:SRE -bI:$(PERL_INC)/perl.exp -bE:$(BASEEXT).exp -e _nostart -lc'


My problem is: when I am developing the functions to access the oracle
database and, in the first testing, there is a syntax error in my SQL
statement, I get a coredump. It is not a big problem because it happens only
during the first testing but I would like to receive an error. It happens
always with "insert" and "update" and does not happens with "select", with
"select" I get a parse error.
An example:
#!/usr/local/bin/perl 
$ORA_LDA =LOGON;   # Personal Function to access the database in a standard way
$SELECT = "UPDATE friends, SET name = 'Pasquale' WHERE id = 2078 ";
         # There is a syntax error: the comma after the table name
  #  With this statement there is the same behavior
# $SELECT = "INSERT INTO friends, values (2079, 'Pasquale') ";
  local ($SH ) = &ora_open($ORA_LDA, $SELECT);
#########    IN THIS MOMENT I GET A CORE DUMP #########
I have a coredump if I use &ora_do instead of &ora_open.
The installation seems not to have problem, everything is fine.

Any suggestion?

Thank You 
                          Massimo Balestra



---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <09648-4@ignite.demon.co.uk>; Thu, 12 Oct 1995 07:06:26 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 11 Oct 95 20:33:05 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa23362;
          11 Oct 95 21:32 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id ac08656;
          11 Oct 95 21:17 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA16528 for perldb-interest-real; Wed, 11 Oct 1995 10:54:05 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA16524 
          for <perldb-interest@fugue.com>; Wed, 11 Oct 1995 10:54:00 -0700
Received: by gw.home.vix.com id AA26604; Wed, 11 Oct 95 10:56:02 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-1.mail.demon.net id aa12003;
          11 Oct 95 18:25 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <06909-0@ignite.demon.co.uk>;
          Wed, 11 Oct 1995 18:21:34 +0100
To: perldb-interest@vix.com, mbalestra@flower.it
Subject: Re: Stored functions
Date: Wed, 11 Oct 1995 18:21:34 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510111825.aa12003@relay-1.mail.demon.net>


> From: Massimo Balestra <mbalestra@flower.it>
> 
> Hi everybody,
> 
> I use DBI 0.63 with the DBD::Oracle 0.25 with the Oraperl emulation. The
> platform is an IBM AIX (R6000) RISC machine.
> 
> A simple question: there is a way to access directly oracle stored functions
> (stand-alone and package ones) ?  I tried with  this artifice:
> local($SELECT) = "SELECT <function name>(<arguments>) FROM dual ";
> local ($SH ) = &ora_open($ORA_LDA, $SELECT);
> @INP = &ora_fetch($SH);
> &ora_close($SH);
> 
> And it works but it is only a trick. I would like to know if there is
> something more "clean".
> 
Use "BEGIN ... END". See your PL/SQL manual and the notes on
ftp.demon.co.uk:/pub/perl/db/perl4/oraperl/

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <09647-11@ignite.demon.co.uk>; Thu, 12 Oct 1995 07:07:45 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 11 Oct 95 20:29:20 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa10527;
          11 Oct 95 21:28 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA16806 for perldb-interest-real; Wed, 11 Oct 1995 12:05:38 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-1.mail.demon.net (relay-1.mail.demon.net [158.152.1.140]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id MAA16802 
          for <perldb-interest@fugue.com>; Wed, 11 Oct 1995 12:05:34 -0700
Received: from post.demon.co.uk by relay-1.mail.demon.net id ab12003;
          11 Oct 95 18:25 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <06922-0@ignite.demon.co.uk>;
          Wed, 11 Oct 1995 18:24:37 +0100
To: skimo@dns.ufsia.ac.be
Subject: Re: Multiple DBD's --- problem found
Cc: perldb-interest@fugue.com
Date: Wed, 11 Oct 1995 18:24:37 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510111825.ab12003@relay-1.mail.demon.net>


> From: Sven Verdoolaege <skimo@dns.ufsia.ac.be>
> 
> The problem seems to be: identical names (eg dbd_db_login)
> in both mSQL en Oracle.
> 
> I wonder how you managed to get that to work on other machines, 
> but on this machine it doesn't.
> 
> doing a 
> perl -pie 's/dbd/odb/g' *
> seems to have removed the problem (or the symptoms :-)
> of course this isn't a ``solution''
> (it was the first thing i could think of)
> 
> did i do something wrong that made this not work on my system or 
> should those names be prefixed or something ?

Dynamic linking should avoid the problem.

Static linking should have generated an error at link time.
(Yes, static linking of multiple DBD's will require #define's
to rename the functions).

What platform are you on? (myconfig output would be handy)

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <09646-10@ignite.demon.co.uk>; Thu, 12 Oct 1995 07:07:51 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 11 Oct 95 21:03:07 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa21646;
          11 Oct 95 22:02 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA16719 for perldb-interest-real; Wed, 11 Oct 1995 11:53:08 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id LAA16715 
          for <perldb-interest@fugue.com>; Wed, 11 Oct 1995 11:53:06 -0700
Received: by gw.home.vix.com id AA00979; Wed, 11 Oct 95 11:55:19 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id NAA06447; Wed, 11 Oct 1995 13:47:47 -0500
Date: Wed, 11 Oct 1995 13:47:47 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com
Subject: Re: Partial Success with DBD::QBase (QuickBase)
In-Reply-To: <9510111047.ac06993@relay-1.mail.demon.net>
Message-Id: <Pine.SUN.3.91.951011134557.6141A-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



> You'll need to post a stack trace from the core dump before I can
> help very much.
> 
Maybe I need to review GDB, but how do get the stack from the coredump?
(After locating it on my NeXT)

I'm only use to debuging ObjC code via GDB.

Thanks.

---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <09648-12@ignite.demon.co.uk>; Thu, 12 Oct 1995 07:08:17 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 11 Oct 95 21:47:14 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa00518;
          11 Oct 95 22:46 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id ab18823;
          11 Oct 95 22:25 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA17077 for perldb-interest-real; Wed, 11 Oct 1995 12:58:31 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA17073 
          for <perldb-interest@fugue.com>; Wed, 11 Oct 1995 12:58:29 -0700
Received: by gw.home.vix.com id AA06917; Wed, 11 Oct 95 13:00:42 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by fahrenheit-451.media.mit.edu; id AA11000;
          Wed, 11 Oct 1995 16:00:09 -0400
Date: Wed, 11 Oct 1995 16:00:09 -0400
From: Jon Orwant <orwant@fahrenheit-451.media.mit.edu>
Message-Id: <9510112000.AA11000@fahrenheit-451.media.mit.edu>
To: mouring@netnet.net
Cc: Tim.Bunce@ig.co.uk, perldb-interest@vix.com
In-Reply-To: <Pine.SUN.3.91.951011134557.6141A-100000@netnet1.netnet.net> (message from Ben Lindstrom on Wed, 11 Oct 1995 13:47:47 -0500 (CDT))
Subject: Re: Partial Success with DBD::QBase (QuickBase)
Reply-To: orwant@media.mit.edu


> Maybe I need to review GDB, but how do get the stack from the coredump?
> (After locating it on my NeXT)

a "help stack" on NeXT GDB yields:

bt -- Print backtrace of all stack frames
backtrace -- Print backtrace of all stack frames
frame -- Select and print a stack frame
down -- Select and print stack frame called by this one
up -- Select and print stack frame that called this one
return -- Make selected stack frame return to its caller
tl -- List all of threads
thread-list -- List all of threads
ts -- Select and print a thread
thread-select -- Select and print a thread

Jon
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <09647-22@ignite.demon.co.uk>; Thu, 12 Oct 1995 07:10:12 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 11 Oct 95 21:14:29 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa01266;
          11 Oct 95 22:13 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA16786 for perldb-interest-real; Wed, 11 Oct 1995 12:01:41 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from dns.ufsia.ac.be (skimo@dns.ufsia.ac.be [146.175.16.12]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA16782 
          for <perldb-interest@fugue.com>; Wed, 11 Oct 1995 12:01:34 -0700
Received: (from skimo@localhost) by dns.ufsia.ac.be (8.6.12/8.6.9) id VAA03414;
          Wed, 11 Oct 1995 21:05:36 +0100
From: Sven Verdoolaege <skimo@dns.ufsia.ac.be>
Message-Id: <199510112005.VAA03414@dns.ufsia.ac.be>
Subject: multiDBD
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Date: Wed, 11 Oct 1995 21:05:35 +0100 (MET)
Cc: perldb <perldb-interest@fugue.com>
X-Stardate: [-31]6424.18
X-URL: http://dns.ufsia.ac.be/~skimo
X-Mailer: ELM [version 2.4 PL24 ME8a]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 324

The problem seems to be:
identical names (eg dbd_db_login) in both mSQL and Oracle

I don't know how you got that to work on your system, but it doesn't
seem to work on mine.

I temporarily removed the problem by changing every occurance of dbd by odb
(just to make unique names)

Tim, did you get my other messages ?

Sven
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <09648-61@ignite.demon.co.uk>; Thu, 12 Oct 1995 07:19:51 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 12 Oct 95 02:17:21 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa10093;
          12 Oct 95 3:16 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id ab23749;
          12 Oct 95 3:11 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA17827 for perldb-interest-real; Wed, 11 Oct 1995 17:52:27 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id RAA17823 
          for <perldb-interest@fugue.com>; Wed, 11 Oct 1995 17:52:24 -0700
Received: by gw.home.vix.com id AA26690; Wed, 11 Oct 95 17:40:27 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id TAA27534; Wed, 11 Oct 1995 19:37:28 -0500
Date: Wed, 11 Oct 1995 19:37:28 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com
Subject: Re: Partial Success with DBD::QBase (QuickBase)
In-Reply-To: <9510111047.ac06993@relay-1.mail.demon.net>
Message-Id: <Pine.SUN.3.91.951011192843.13754D-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Wed, 11 Oct 1995, Tim Bunce wrote:

> 
> > From: Ben Lindstrom <mouring@netnet.net>
> > 
> > After going through all the headaches of getting things to resolve for 
> > creating a shared library...I now come to the following.   (I've not had 
> > too much time to look into it.)
> 
> You'll need to post a stack trace from the core dump before I can
> help very much.

<frown>  After looking at the core dump I release my ObjC went from resolving
functsion to failure in the runtime  system.

objc_msgSend() fails because of  Memory access exception on address  <addres>
(invalid address).

Yes, Objectice C is losing it's appeal. =)  Anyone have ideas?

I linked in -ObjC and -lMedia_s -lNeXT_s into perl and -lQBSQL5_1 into my
driver also with -ObjC on the linker arguments.

---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <12864-0@ignite.demon.co.uk>; Thu, 12 Oct 1995 07:20:29 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 12 Oct 95 06:13:19 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa26605;
          12 Oct 95 7:13 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id WAA18452 for perldb-interest-real; Wed, 11 Oct 1995 22:07:50 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id WAA18448 
          for <perldb-interest@fugue.com>; Wed, 11 Oct 1995 22:07:47 -0700
Received: by gw.home.vix.com id AA13013; Wed, 11 Oct 95 22:10:01 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id GAA17739;
          Thu, 12 Oct 1995 06:08:50 +0100
Date: Thu, 12 Oct 1995 06:08:50 +0100
Message-Id: <199510120508.GAA17739@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: mouring@netnet.net
Cc: Tim.Bunce@ig.co.uk, perldb-interest@vix.com
In-Reply-To: <Pine.SUN.3.91.951011192843.13754D-100000@netnet1.netnet.net> (message from Ben Lindstrom on Wed, 11 Oct 1995 19:37:28 -0500 (CDT))
Subject: Re: Partial Success with DBD::QBase (QuickBase)
Reply-To: andreas.koenig@mind.de

>>>>> "Ben" == Ben Lindstrom <mouring@netnet.net> writes:

    Ben> On Wed, 11 Oct 1995, Tim Bunce wrote:

    >> 
    >> > From: Ben Lindstrom <mouring@netnet.net>
    >> > 
    >> > After going through all the headaches of getting things to resolve for 
    >> > creating a shared library...I now come to the following.   (I've not had 
    >> > too much time to look into it.)
    >> 
    >> You'll need to post a stack trace from the core dump before I can
    >> help very much.

    Ben> <frown>  After looking at the core dump I release my ObjC went from resolving
    Ben> functsion to failure in the runtime  system.

    Ben> objc_msgSend() fails because of  Memory access exception on address  <addres>
    Ben> (invalid address).

    Ben> Yes, Objectice C is losing it's appeal. =)  Anyone have ideas?

    Ben> I linked in -ObjC and -lMedia_s -lNeXT_s into perl and -lQBSQL5_1 into my
    Ben> driver also with -ObjC on the linker arguments.


No doubt it is desirable, that you can use dynamically linked ObjC
extensions in the same manner as stock C extensions. _I_ can't tell
you how to do that. I suggested you build a satic version of the
extension, but you misunderstood me probably.

It's pointless, I think, if you link libNeXT_s into perl, it just
won't be used at all if you do not ALSO link in your libQBSQL, and I
think the order has to be -lQBSQL5_1 -lNeXT_s and not the other way
round. Once this solution works you can at least test your application
and worry about the dynamic linking later.

Try make perl in your extension directory. This might do.

andreas
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <13230-0@ignite.demon.co.uk>; Thu, 12 Oct 1995 08:08:12 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 12 Oct 95 06:46:57 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa11229;
          12 Oct 95 7:46 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id WAA18536 for perldb-interest-real; Wed, 11 Oct 1995 22:27:59 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id WAA18531 
          for <perldb-interest@fugue.com>; Wed, 11 Oct 1995 22:27:56 -0700
Received: by gw.home.vix.com id AA14219; Wed, 11 Oct 95 22:30:10 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id AAA11014; Thu, 12 Oct 1995 00:30:05 -0500
Date: Thu, 12 Oct 1995 00:30:04 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: andreas.koenig@mind.de
Cc: Tim.Bunce@ig.co.uk, perldb-interest@vix.com
Subject: Re: Partial Success with DBD::QBase (QuickBase)
In-Reply-To: <199510120508.GAA17739@anna.mind.de>
Message-Id: <Pine.SUN.3.91.951012002600.4414A-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Thu, 12 Oct 1995, Andreas Koenig wrote:

> >>>>> "Ben" == Ben Lindstrom <mouring@netnet.net> writes:

> No doubt it is desirable, that you can use dynamically linked ObjC
> extensions in the same manner as stock C extensions. _I_ can't tell
> you how to do that. I suggested you build a satic version of the
> extension, but you misunderstood me probably.
> 
Still don't understand what you mean by static version.  NeXT really
has  no  Shared libraries.   I linked QBSQL into perl  and I still
recieved the error...If you can explain a little better...If you need
I  can post my current Makefile I'm using.

> 
> Try make perl in your extension directory. This might do.
> 
<frown> Staticly link DBI and my  QuickBase driver right into
perl? Is  that what we are talking about....Hmm...Never thought
about that.  IT would work for a temporary solution if
DBI can be static  compiled into perl.

---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <13230-2@ignite.demon.co.uk>; Thu, 12 Oct 1995 08:08:22 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 12 Oct 95 06:48:15 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa11686;
          12 Oct 95 7:47 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id WAA18645 for perldb-interest-real; Wed, 11 Oct 1995 22:44:42 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id WAA18641 
          for <perldb-interest@fugue.com>; Wed, 11 Oct 1995 22:44:41 -0700
Received: by gw.home.vix.com id AA15119; Wed, 11 Oct 95 22:46:55 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id GAA17879;
          Thu, 12 Oct 1995 06:45:45 +0100
Date: Thu, 12 Oct 1995 06:45:45 +0100
Message-Id: <199510120545.GAA17879@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: mouring@netnet.net
Cc: Tim.Bunce@ig.co.uk, perldb-interest@vix.com
In-Reply-To: <Pine.SUN.3.91.951012002600.4414A-100000@netnet1.netnet.net> (message from Ben Lindstrom on Thu, 12 Oct 1995 00:30:04 -0500 (CDT))
Subject: Re: Partial Success with DBD::QBase (QuickBase)
Reply-To: andreas.koenig@mind.de

>>>>> "Ben" == Ben Lindstrom <mouring@netnet.net> writes:

    Ben> On Thu, 12 Oct 1995, Andreas Koenig wrote:

    >> >>>>> "Ben" == Ben Lindstrom <mouring@netnet.net> writes:

    >> No doubt it is desirable, that you can use dynamically linked ObjC
    >> extensions in the same manner as stock C extensions. _I_ can't tell
    >> you how to do that. I suggested you build a satic version of the
    >> extension, but you misunderstood me probably.
    >> 
    Ben> Still don't understand what you mean by static version.  NeXT really
    Ben> has  no  Shared libraries.   I linked QBSQL into perl  and I still
    Ben> recieved the error...If you can explain a little better...If you need
    Ben> I  can post my current Makefile I'm using.

    >> 
    >> Try make perl in your extension directory. This might do.
    >> 
    Ben> <frown> Staticly link DBI and my  QuickBase driver right into
    Ben> perl? Is  that what we are talking about....Hmm...Never thought
    Ben> about that.  IT would work for a temporary solution if
    Ben> DBI can be static  compiled into perl.


Right, right, right! ANY extension can be linked staticly into
perl. Right, I forgot DBI. So go into your DBI directory and say

make install LINKTYPE=static   # will make DBI.a available as /usr/local....DBI/DBI.a
cd <your extension>
make perl                      # will find and use DBI.a
make install LINKTYPE=static   # optional -- for future perl builds with 
			       # additional static extensions

I frankly concede, that's not optimal but a valid temorary solution
until your extension is stable. In fact it's a very handy way to make
debugging easier for any extension builder, not only in your ObjC
case.

andreas


---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <25453-10@ignite.demon.co.uk>; Fri, 13 Oct 1995 07:07:32 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 12 Oct 95 18:28:51 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa18171;
          12 Oct 95 19:27 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA21052 for perldb-interest-real; Thu, 12 Oct 1995 09:27:06 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from dns.ufsia.ac.be (skimo@dns.ufsia.ac.be [146.175.16.12]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA21048 
          for <perldb-interest@fugue.com>; Thu, 12 Oct 1995 09:26:58 -0700
Received: (from skimo@localhost) by dns.ufsia.ac.be (8.6.12/8.6.9) id SAA04679;
          Thu, 12 Oct 1995 18:26:40 +0100
From: Sven Verdoolaege <skimo@dns.ufsia.ac.be>
Message-Id: <199510121726.SAA04679@dns.ufsia.ac.be>
Subject: Re: Multiple DBD's --- problem found
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Date: Thu, 12 Oct 1995 18:26:39 +0100 (MET)
Cc: perldb <perldb-interest@fugue.com>
In-Reply-To: <9510111825.ab12003@relay-1.mail.demon.net> from "Tim Bunce" at Oct 11, 95 06:24:37 pm
X-Stardate: [-31]6428.63
X-URL: http://dns.ufsia.ac.be/~skimo
X-Mailer: ELM [version 2.4 PL24 ME8a]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 2003

> > The problem seems to be: identical names (eg dbd_db_login)
> > in both mSQL en Oracle.
> > 
> > I wonder how you managed to get that to work on other machines, 
> > but on this machine it doesn't.
> > 
> > doing a 
> > perl -pie 's/dbd/odb/g' *
> > seems to have removed the problem (or the symptoms :-)
> > of course this isn't a ``solution''
> > (it was the first thing i could think of)
> > 
> > did i do something wrong that made this not work on my system or 
> > should those names be prefixed or something ?
> 
> Dynamic linking should avoid the problem.
As you can see i am using dynamic linking.
I'm not an expert on this, but i can't see how dynamic linking could avoid
the problem
Where do you tell the dynamic loader that you need the functions in 
Oracle.so and not the ones already loaded from mSQL.so ?
> 
> Static linking should have generated an error at link time.
> (Yes, static linking of multiple DBD's will require #define's
> to rename the functions).
> 
> What platform are you on? (myconfig output would be handy)
here it is (again)
(hopefully noone else remembered all this when i mailed a trace that
contained my password :-)
chulu.ufsia.ac.be> perl -e 'use Config; print Config::myconfig()'
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=dec_osf, osver=3.2, archname=alpha-dec_osf
    uname='osf1 chulu.ufsia.ac.be v3.2 214 alpha '
    hint=previous
  Compiler:
    cc='cc', optimize='-O2 -Olimit 2900'
    cppflags='-DSTANDARD_C'
    ccflags ='-DSTANDARD_C'
    ldflags =''
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=0, d_casti32=define, d_castneg=define
    intsize=4, alignbytes=8, usemymalloc=y, randbits=15
  Libraries:
    so=so
    libpth=/usr/shlib /lib /usr/lib /usr/ccs/lib
    libs=-ldbm -lm -lc -lbsd -lPW
    libc=/usr/shlib/libc.so
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
    cccdlflags=' ', ccdlflags=' ', lddlflags='-shared -expect_unresolved "*" -s'

Sven
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <07313-4@ignite.demon.co.uk>; Fri, 13 Oct 1995 23:40:52 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 13 Oct 95 19:24:06 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa07785;
          13 Oct 95 20:22 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA24666 for perldb-interest-real; Fri, 13 Oct 1995 11:11:45 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from beach.cas.american.edu (beach.cas.american.edu [147.9.100.60]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id LAA24662 
          for <perldb-interest@fugue.com>; Fri, 13 Oct 1995 11:11:43 -0700
Received: from cage.cas.american.edu by beach.cas.american.edu (8.6.10/) 
          id OAA27848; Fri, 13 Oct 1995 14:23:13 -0400
Received: by cage.cas.american.edu (8.6.10) id OAA11056;
          Fri, 13 Oct 1995 14:14:54 -0400
Date: Fri, 13 Oct 1995 14:14:54 -0400 (EDT)
From: Abinash Tripathy <abinash@email.cas.american.edu>
To: perldb-interest@fugue.com
Subject: unsubscribe
Message-ID: <Pine.SUN.3.91.951013141433.11042B-100000@cage>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



Abinash Tripathy
4201 Massachusetts Ave, N.W Apt 3030C    Ph:(202) 363 0604(home)
Washington D.C 20016   (202) 885 1479 (FAX) (202) 885 2767(work)
email:abinash@email.cas.american.edu at0509a@american.edu
WWW  :http://www.cas.american.edu/~abinash/
--
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <07315-8@ignite.demon.co.uk>; Fri, 13 Oct 1995 23:41:18 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 13 Oct 95 19:48:01 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa03858;
          13 Oct 95 20:47 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa22748;
          13 Oct 95 20:20 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA24610 for perldb-interest-real; Fri, 13 Oct 1995 10:58:52 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gate.ti.com (news.ti.com [192.94.94.33]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA24606 
          for <perldb-interest@fugue.com>; Fri, 13 Oct 1995 10:58:48 -0700
Received: from kadet.asic.sc.ti.com ([156.117.203.118]) 
          by gate.ti.com (8.6.12/) with ESMTP id NAA14038 
          for <perldb-interest@fugue.com>; Fri, 13 Oct 1995 13:00:29 -0500
Received: from horta.asic.sc.ti.com (horta.asic.sc.ti.com [156.117.206.77]) 
          by kadet.asic.sc.ti.com (8.6.10/8.6.6) with ESMTP id MAA22718 
          for <perldb-interest@fugue.com>; Fri, 13 Oct 1995 12:59:34 -0500
Received: from localhost (jsharp@localhost) 
          by horta.asic.sc.ti.com (8.6.4/8.6.4) id MAA02214 
          for perldb-interest@fugue.com; Fri, 13 Oct 1995 12:59:23 -0500
Date: Fri, 13 Oct 1995 12:59:23 -0500
From: John Sharp <jsharp@asic.sc.ti.com>
Message-Id: <199510131759.MAA02214@horta.asic.sc.ti.com>
To: perldb-interest@fugue.com
Subject: subscribe

subscribe
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <15660-11@ignite.demon.co.uk>; Sun, 15 Oct 1995 11:52:49 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 14 Oct 95 11:54:02 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id ab01657;
          14 Oct 95 12:53 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA27321 for perldb-interest-real; Sat, 14 Oct 1995 03:49:09 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id DAA27317 
          for <perldb-interest@fugue.com>; Sat, 14 Oct 1995 03:49:06 -0700
Received: from post.demon.co.uk by relay-4.mail.demon.net id g.ab18399;
          14 Oct 95 0:47 +0100
Received: from relay-4.mail.demon.net by relay-3.mail.demon.net id ae21423;
          14 Oct 95 0:46 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <08868-0@ignite.demon.co.uk>;
          Sat, 14 Oct 1995 00:23:55 +0100
To: jon.perry@msd_hsv1.hv.boeing.com
Subject: Re: Oraperl for Windows-NT
Cc: perldb-interest@fugue.com, fox@austin.asc.slb.com
Date: Sat, 14 Oct 1995 00:23:55 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510140047.ae21423@relay-3.mail.demon.net>


> From: Jon Perry <jon.perry@msd_hsv1.hv.boeing.com>
> 
> Tim,
> 
> I understand you might have some insight to when Oraperl that
> has been ported to NT, will be available on ftp.demon.co.uk.  
> My group at Boeing is interested in this tool for generating 
> some dynamic html.  Do you know any dates when Oraperl for NT 
> might be at this site? Thanks for any help... or any other 
> recommendation on where to look.
> 
I've CC'd this to the perldb-interest mailing list and Jim Fox (who I
think is doing something) in the hope someone can update you (and me)
about an NT port.

> Jon Perry
> Information Systems
> Boeing
> Huntsville, AL USA

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <15660-32@ignite.demon.co.uk>; Sun, 15 Oct 1995 12:01:08 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 15 Oct 95 03:35:43 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa01839;
          15 Oct 95 4:34 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA28017 for perldb-interest-real; Sat, 14 Oct 1995 18:31:36 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from watson.ibm.com (watson.ibm.com [129.34.139.4]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id SAA28013 
          for <perldb-interest@fugue.com>; Sat, 14 Oct 1995 18:31:34 -0700
Received: from WATSON by watson.ibm.com (IBM VM SMTP V2R3) with BSMTP id 3181;
          Sat, 14 Oct 95 21:33:37 EDT
Received: from YKTVMV by watson.vnet.ibm.com with "VAGENT.V1.02 on VAGENT2" 
          id 1428; Sat, 14 Oct 1995 21:33:37 EDT
Received: from lusitania.watson.ibm.com 
          by yktvmv.watson.ibm.com (IBM VM SMTP V2Rx) with TCP;
          Sat, 14 Oct 95 21:33:36 EDT
Received: from localhost by lusitania.watson.ibm.com (AIX 3.2/UCB 5.64/950830) 
          id AA38632; Sat, 14 Oct 1995 21:33:16 -0400
Message-Id: <9510150133.AA38632@lusitania.watson.ibm.com>
X-Mailer: exmh version 1.6.2 7/18/95
To: perldb-interest@fugue.com
Subject: Overriding malloc/free on AIX 3.2.5?
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Sat, 14 Oct 1995 21:33:16 -0400
From: Chet Murthy <chet@watson.ibm.com>


Hum ... OK -- a very ugly problem here.

I was running a program using DBI::DB2, and had a bug which manifested
itself as a segfault in free.  I couldn't figure it out, but I noticed
that free() in DB2.so didn't seem to be coming from perl -- that is,
it wasn't being overridden.

I tried various things, and finally concluded that, given that ld uses
its import-list *last*, after all object-files and archive-files, it
isn't possible to override free() so that all .so files will use
Perl's implementation, unless free() is named something else.

So I turned on the "HIDEMYMALLOC" flag, and put Myfree, Mymalloc,
Myrealloc into perl.exp, recompiled everything, and all of a sudden,
everything worked.

I don't know what to do about this in the long run.  It seems clear to
me that Perl's standard method of overriding malloc with a private
version (i.e., by just supplying malloc(), etc) isn't working for
shared-library extensions (at least, not on AIX 3.2.5).

Anybody got any suggestions?

--chet--


---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <18634-0@ignite.demon.co.uk>; Sun, 15 Oct 1995 14:16:19 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 15 Oct 95 12:43:07 GMT
Received: from [204.254.239.2] by punt-1.mail.demon.net id aa14038;
          15 Oct 95 13:42 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA29976 for perldb-interest-real; Sun, 15 Oct 1995 04:25:08 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id EAA29972 
          for <perldb-interest@fugue.com>; Sun, 15 Oct 1995 04:25:05 -0700
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.bl01378;
          13 Oct 95 9:59 +0100
Received: from relay-4.mail.demon.net by relay-3.mail.demon.net id ab10474;
          13 Oct 95 7:05 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <22703-0@ignite.demon.co.uk>;
          Thu, 12 Oct 1995 17:46:12 +0100
To: skimo@dns.ufsia.ac.be
Subject: Re: Multiple DBD's --- problem found
Cc: perldb-interest@fugue.com, perl5-porters@nicoh.com
Date: Thu, 12 Oct 1995 17:46:12 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510130705.ab10474@relay-3.mail.demon.net>


> From: Sven Verdoolaege <skimo@dns.ufsia.ac.be>
> 
> > > The problem seems to be: identical function names (eg dbd_db_login)
> > > in both DBD::mSQL and DBD::Oracle.
> > > 
> > > I wonder how you managed to get that to work on other machines, 
> > > but on this machine it doesn't.
> > > 
> > > doing a  perl -pie 's/dbd/odb/g' *
> > > seems to have removed the problem (or the symptoms :-)
> > > of course this isn't a ``solution''
> > > (it was the first thing i could think of)
> > > 
> > > did i do something wrong that made this not work on my system or 
> > > should those names be prefixed or something ?
> > 
> > Dynamic linking should avoid the problem.
>
> As you can see i am using dynamic linking.
> I'm not an expert on this, but i can't see how dynamic linking could avoid
> the problem
> Where do you tell the dynamic loader that you need the functions in 
> Oracle.so and not the ones already loaded from mSQL.so ?

The dbd_db_login function is called from the XS_DBD__Oracle__db__login
function in Oracle.c that is generated from Oracle.xs. When Oracle.so
is created the linker knows that it needs to resolve that link
when it's loaded.

Firstly, when dynamically loading a shared object the runtime linker
should resolve it using the symbol in the shared object that it's loading.

Secondly, the symbols in the dynamically loaded object should not be
visible for later runtime linking by default (Solaris 2 has a specific
flag for this which dl_dlopen.xs does not use).

> > Static linking should have generated an error at link time.
> > (Yes, static linking of multiple DBD's will require #define's
> > to rename the functions).
> > 
> > What platform are you on? (myconfig output would be handy)

> Summary of my perl5 (patchlevel 1) configuration:
>   Platform:
>     osname=dec_osf, osver=3.2, archname=alpha-dec_osf
>     uname='osf1 chulu.ufsia.ac.be v3.2 214 alpha '
>     hint=previous
>   Compiler:
>     cc='cc', optimize='-O2 -Olimit 2900'
>     cppflags='-DSTANDARD_C'
>     ccflags ='-DSTANDARD_C'
>     ldflags =''
>     stdchar='unsigned char', d_stdstdio=define, usevfork=false
>     voidflags=15, castflags=0, d_casti32=define, d_castneg=define
>     intsize=4, alignbytes=8, usemymalloc=y, randbits=15
>   Libraries:
>     so=so
>     libpth=/usr/shlib /lib /usr/lib /usr/ccs/lib
>     libs=-ldbm -lm -lc -lbsd -lPW
>     libc=/usr/shlib/libc.so
>   Dynamic Linking:
>     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
>     cccdlflags=' ', ccdlflags=' ', lddlflags='-shared -expect_unresolved "*" -s'

I've not actually tried this yet. Perhaps others could try the mSQL and
Oracle combination on other platforms.

Right now I suspect it's an OSF specific issue so I've CC'd this to
the perl5-porters in the hope that any OSF users can clarify
symbol visibility and resolution behaviour for me.

> Sven
>
Tim. 
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <19413-0@ignite.demon.co.uk>; Sun, 15 Oct 1995 15:59:38 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 15 Oct 95 14:46:41 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa03315;
          15 Oct 95 15:46 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA00293 for perldb-interest-real; Sun, 15 Oct 1995 06:35:00 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id GAA00289 
          for <perldb-interest@fugue.com>; Sun, 15 Oct 1995 06:34:57 -0700
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id OAA03300; Sun, 15 Oct 1995 14:33:02 +0100
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199510151333.OAA03300@fruitbat.mcqueen.com>
Subject: Re: Multiple DBD's --- problem found
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Date: Sun, 15 Oct 1995 14:33:01 +0100 (BST)
Cc: perldb-interest@fugue.com, skimo@dns.ufsia.ac.be
In-Reply-To: <9510130705.ab10474@relay-3.mail.demon.net> from "Tim Bunce" at Oct 12, 95 05:46:12 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 559


> I've not actually tried this yet. Perhaps others could try the mSQL and
> Oracle combination on other platforms.

Works perfectly for me on Solaris 2.3/4. I'm just about to try it on Linux
and HP-UX9 as well, so I'll let you know what happens there.

My scenario is working with simultaneous connections to 2 Oracle, 1 mSQL and
1 Informix database, passing data between all three in a data-warehousing 
situation.....

> > Sven
> >
> Tim. 

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.mcqueen.com/hermetica 
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <20350-2@ignite.demon.co.uk>; Sun, 15 Oct 1995 19:32:47 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 15 Oct 95 18:06:51 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa00845;
          15 Oct 95 19:05 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA00584 for perldb-interest-real; Sun, 15 Oct 1995 09:48:44 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id JAA00580 
          for <perldb-interest@fugue.com>; Sun, 15 Oct 1995 09:48:36 -0700
Received: from post.demon.co.uk by relay-4.mail.demon.net id g.aj22876;
          15 Oct 95 13:07 +0100
Received: from relay-4.mail.demon.net by relay-3.mail.demon.net id ab12572;
          15 Oct 95 13:03 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <18084-0@ignite.demon.co.uk>;
          Sun, 15 Oct 1995 13:02:49 +0100
To: perldb-interest@fugue.com, chet@watson.ibm.com
Subject: Re: Overriding malloc/free on AIX 3.2.5?
Cc: perlbug@perl.com, wscott@ichips.intel.com
Date: Sun, 15 Oct 1995 13:02:49 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510151303.ab12572@relay-3.mail.demon.net>


> From: Chet Murthy <chet@watson.ibm.com>
> 
> Hum ... OK -- a very ugly problem here.
> 
> I was running a program using DBI::DB2, and had a bug which manifested
> itself as a segfault in free.  I couldn't figure it out, but I noticed
> that free() in DB2.so didn't seem to be coming from perl -- that is,
> it wasn't being overridden.
>
> I tried various things, and finally concluded that, given that ld uses
> its import-list *last*, after all object-files and archive-files, it
> isn't possible to override free() so that all .so files will use
> Perl's implementation, unless free() is named something else.

I'll pass this on to the perl5-porters and Wayne Scott (who wrote dl_aix.xs)
since I don't know enough about the obscure dynamic loading mechanism used
by AIX 3.

> So I turned on the "HIDEMYMALLOC" flag, and put Myfree, Mymalloc,
> Myrealloc into perl.exp, recompiled everything, and all of a sudden,
> everything worked.

Interesting. perl_exp.SH should put the My* names into perl.exp for you.
That's a bug - but not a very high priority one.

> I don't know what to do about this in the long run.  It seems clear to
> me that Perl's standard method of overriding malloc with a private
> version (i.e., by just supplying malloc(), etc) isn't working for
> shared-library extensions (at least, not on AIX 3.2.5).

I'm fairly confident that if this problem affected other platforms it
would have been spotted before now - I hope.

> Anybody got any suggestions?
> 
> --chet--

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <23015-10@ignite.demon.co.uk>; Mon, 16 Oct 1995 07:07:16 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 16 Oct 95 00:32:26 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id ab28298;
          16 Oct 95 1:32 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA01003 for perldb-interest-real; Sun, 15 Oct 1995 15:47:38 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA00999 
          for <perldb-interest@fugue.com>; Sun, 15 Oct 1995 15:47:30 -0700
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.am00359;
          15 Oct 95 17:34 +0100
Received: from relay-4.mail.demon.net by relay-3.mail.demon.net id aa19959;
          15 Oct 95 17:13 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <19772-0@ignite.demon.co.uk>;
          Sun, 15 Oct 1995 17:12:59 +0100
To: descarte@hermetica.com
Subject: Re: Multiple DBD's --- problem found
Cc: perldb-interest@fugue.com, skimo@dns.ufsia.ac.be
Date: Sun, 15 Oct 1995 17:12:59 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510151713.aa19959@relay-3.mail.demon.net>


> From: Alligator Descartes <descarte@hermetica.com>
> 
> > I've not actually tried this yet. Perhaps others could try the mSQL and
> > Oracle combination on other platforms.
> 
> Works perfectly for me on Solaris 2.3/4. I'm just about to try it on Linux
> and HP-UX9 as well, so I'll let you know what happens there.
> 
> My scenario is working with simultaneous connections to 2 Oracle, 1 mSQL and
> 1 Informix database, passing data between all three in a data-warehousing 
> situation.....

Wow!

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <23016-34@ignite.demon.co.uk>; Mon, 16 Oct 1995 07:11:43 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 16 Oct 95 01:24:35 GMT
Received: from [204.254.239.2] by punt-1.mail.demon.net id aa00546;
          16 Oct 95 2:24 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA01196 for perldb-interest-real; Sun, 15 Oct 1995 17:26:50 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from mailgw.claircom.com (mailgw.claircom.com [199.5.241.51]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id RAA01192 
          for <perldb-interest@fugue.com>; Sun, 15 Oct 1995 17:26:45 -0700
Received: from nimo.claircom.com by mailgw.claircom.com 
          with smtp (Smail3.1.26.7 #2) id m0t4dQM-0004toC;
          Sun, 15 Oct 95 17:29 PDT
Received: from airone.claircom.com by nimo.claircom.com 
          with smtp (Smail3.1.26.7 #2) id m0t4dQL-0005VkC;
          Sun, 15 Oct 95 17:29 PDT
Received: from soc4.airone.claircom.com by airone.claircom.com (5.0/SMI-SVR4) 
          id AA18708; Sun, 15 Oct 1995 17:27:08 -0700
Received: by soc4.airone.claircom.com (4.1/SMI-4.1) id AA22083;
          Sun, 15 Oct 95 17:19:08 PDT
Date: Sun, 15 Oct 95 17:19:08 PDT
From: William Warner <billw@airone.claircom.com>
Message-Id: <9510160019.AA22083@soc4.airone.claircom.com>
To: perldb-interest@fugue.com
Subject: Re: Multiple DBD's --- problem found
Cc: skimo@dns.ufsia.ac.be
content-length: 1044


> From owner-perldb-interest@fugue.com Sun Oct 15 17:13 PDT 1995
> Sender: perldb-interest-request@fugue.com
> To: descarte@hermetica.com
> Subject: Re: Multiple DBD's --- problem found
> Cc: perldb-interest@fugue.com, skimo@dns.ufsia.ac.be
> Date: Sun, 15 Oct 1995 17:12:59 +0100
> From: Tim Bunce <Tim.Bunce@ig.co.uk>
> Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
> Content-Type> : > text> 
> Content-Length: 507
> 
> 
> > From: Alligator Descartes <descarte@hermetica.com>
> > 
> > > I've not actually tried this yet. Perhaps others could try the mSQL and
> > > Oracle combination on other platforms.
> > 
> > Works perfectly for me on Solaris 2.3/4. I'm just about to try it on Linux
> > and HP-UX9 as well, so I'll let you know what happens there.
> > 
> > My scenario is working with simultaneous connections to 2 Oracle, 1 mSQL and
> > 1 Informix database, passing data between all three in a data-warehousing 
> > situation.....
> 
> Wow!
> 
> Tim.
> 

If this true, it's time for me to try perl-db now.

   ww
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <26984-0@ignite.demon.co.uk>; Mon, 16 Oct 1995 11:47:49 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 16 Oct 95 10:09:30 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa08692;
          16 Oct 95 11:08 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id BAA01629 for perldb-interest-real; Mon, 16 Oct 1995 01:10:13 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id BAA01625 
          for <perldb-interest@fugue.com>; Mon, 16 Oct 1995 01:10:06 -0700
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id JAA04737; Mon, 16 Oct 1995 09:07:54 +0100
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199510160807.JAA04737@fruitbat.mcqueen.com>
Subject: Re: DBD::mSQL driver expectancies.
To: tim <tim@www.cas.unt.edu>
Date: Mon, 16 Oct 1995 09:07:53 +0100 (BST)
Cc: Tim.Bunce@ig.co.uk, perldb-interest@fugue.com
In-Reply-To: <199510140411.EAA07562@www.cas.unt.edu> from "tim" at Oct 14, 95 04:11:39 am
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 1456


> I'm trying to check out various interfaces to mSQL (for a WWW cgi
> implementation) and am having some problems with the current
> patch levels of DBI/DBD::mSQL.  This is what I am working with:
> 
> -rw-r--r--  1 tim  wheel  24775 Sep 20 21:11 /tmp/DBD-mSQL-0.60pl6.tar.gz
> -rw-r--r--  1 tim  wheel  45973 Sep  1 12:22 /tmp/DBI-0.63.tar.Z
> 
> I receive this error when running ./test2.pl:
>                                                                                 
> DynaLoader.pm loaded (/lib /usr/lib /usr/local/lib)
> DynaLoader::bootstrap(DBI)
> DynaLoader::bootstrap(DBD::mSQL)
> install_driver(mSQL) failed: DBI version mismatch (DBI actual v3407879/s7, expec
> ted v4/s44) at /usr/local/lib/perl5/DynaLoader.pm line 463.
>  at /usr/local/lib/perl5/DBI.pm line 167
>         DBI::install_driver called at ./test2.pl line 12
> 
> Which leads me to believe that a newer version of DBI exists
> someplace (or I need to drop back a patch level or two on DBD::mSQL).
> Any clues?

That combination of DBI/DBD::mSQL is the current working configuration ( bar a
couple of bugs in each piece! ), so you should be fine with it.

What platform are you on? Also, what patchlevel of perl are you on. You need
to be at patchlevel 5.001m at least.

If you could get that info to us, we can take a look from there.

> Thanks in advance,
> Tim.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <01222-5@ignite.demon.co.uk>; Mon, 16 Oct 1995 17:01:28 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 16 Oct 95 12:49:35 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa17656;
          16 Oct 95 13:48 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA03292 for perldb-interest-real; Mon, 16 Oct 1995 04:02:54 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from hustle.rahul.net (hustle.rahul.net [192.160.13.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id EAA03288 
          for <perldb-interest@fugue.com>; Mon, 16 Oct 1995 04:02:52 -0700
Received: from postoffice.UUCP by hustle.rahul.net with UUCP 
          id AA20159 (5.67b8/IDA-1.5 for perldb-interest@fugue.com);
          Mon, 16 Oct 1995 04:05:08 -0700
Received: by ttmc.com (5.x/SMI-SVR4) id AA11577; Mon, 16 Oct 1995 08:00:02 -0300
Date: Mon, 16 Oct 1995 08:00:02 -0300
From: Dan Wisehart <danw@ttmc.com>
Message-Id: <9510161100.AA11577@ttmc.com>
To: perldb-interest@fugue.com
Subject: subscribe
X-Sun-Charset: US-ASCII

subscribe
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <07557-10@ignite.demon.co.uk>; Tue, 17 Oct 1995 08:09:47 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 17 Oct 95 05:59:46 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa08786;
          17 Oct 95 6:59 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id VAA05576 for perldb-interest-real; Mon, 16 Oct 1995 21:58:51 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id VAA05572 
          for <perldb-interest@fugue.com>; Mon, 16 Oct 1995 21:58:50 -0700
Received: by gw.home.vix.com id AA27328; Mon, 16 Oct 95 22:01:06 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id AAA05836; Tue, 17 Oct 1995 00:01:04 -0500
Date: Tue, 17 Oct 1995 00:01:04 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: DBI perl <perldb-interest@vix.com>
Subject: Question on SV/AV/etc
Message-Id: <Pine.SUN.3.91.951016235747.3779C-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I'm to the point that I'm attempting to implement dbd_st_fetch()

Now, I need to have someone point me to some nice documention (besides 
man perl* =) that describe how to populate and deal with AV* and SV*  since
I am totally lost!! =)


Good news, as long as I don't have to return anything I can access the
database. =)  Just fetchs and destruction problems seem to be the major
things I need to deal with (No, *blob* routines are not going to be played
with until I know at least what I'm doing with fetch. =)

Any ideas?  Hints?  Or nice little padded cell? =)

---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <07558-28@ignite.demon.co.uk>; Tue, 17 Oct 1995 08:12:17 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 16 Oct 95 21:53:44 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ap16757;
          16 Oct 95 22:53 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <00848-0@frigate.doc.ic.ac.uk>; Mon, 16 Oct 1995 20:46:27 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA03855 for perldb-interest-real; Mon, 16 Oct 1995 11:08:20 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id LAA03851 
          for <perldb-interest@fugue.com>; Mon, 16 Oct 1995 11:08:18 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id NAA104734 
          for <perldb-interest@fugue.com>; Mon, 16 Oct 1995 13:10:35 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA24488;
          Mon, 16 Oct 1995 13:10:30 -0500
Message-Id: <9510161810.AA24488@dax.austin.ibm.com>
To: Chet Murthy <chet@watson.ibm.com>
Cc: perldb-interest@fugue.com
Subject: Re: Overriding malloc/free on AIX 3.2.5?
In-Reply-To: Your message of Sat, 14 Oct 95 21:33:16 -0400. <9510150133.AA38632@lusitania.watson.ibm.com>
Date: Mon, 16 Oct 95 13:10:29 -0500


Chet Murthy <chet@watson.ibm.com>  writes:
|>
|>Hum ... OK -- a very ugly problem here.
|>
|>I was running a program using DBI::DB2, and had a bug which manifested
|>itself as a segfault in free.  I couldn't figure it out, but I noticed
|>that free() in DB2.so didn't seem to be coming from perl -- that is,
|>it wasn't being overridden.
|>
|>I tried various things, and finally concluded that, given that ld uses
|>its import-list *last*, after all object-files and archive-files, it
|>isn't possible to override free() so that all .so files will use
|>Perl's implementation, unless free() is named something else.
|>
|>So I turned on the "HIDEMYMALLOC" flag, and put Myfree, Mymalloc,
|>Myrealloc into perl.exp, recompiled everything, and all of a sudden,
|>everything worked.
|>
|>I don't know what to do about this in the long run.  It seems clear to
|>me that Perl's standard method of overriding malloc with a private
|>version (i.e., by just supplying malloc(), etc) isn't working for
|>shared-library extensions (at least, not on AIX 3.2.5).
|>

Well, the problem is not AIX it is in either  DBI or DB2.  I haven't been
far enough in the debugger yet to isolate which.  It seems to be caused
by a bad value in DBIc_NUM_FIELDS(imp_sth).

More when I isolate it.

Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <07558-88@ignite.demon.co.uk>; Tue, 17 Oct 1995 08:22:07 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 17 Oct 95 01:03:27 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id bc00618;
          17 Oct 95 2:02 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <07120-0@frigate.doc.ic.ac.uk>; Tue, 17 Oct 1995 00:23:23 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA04447 for perldb-interest-real; Mon, 16 Oct 1995 14:41:17 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA04441 
          for <perldb-interest@fugue.com>; Mon, 16 Oct 1995 14:41:14 -0700
From: james.taylor@srs.gov
Received: by gw.home.vix.com id AA26203; Mon, 16 Oct 95 14:43:08 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by srs.gov id AA03068 (InterLock SMTP Gateway 1.1 
          for perldb-interest@vix.com); Mon, 16 Oct 1995 17:41:05 -0400
Received: by srs.gov (Internal Mail Agent-1); Mon, 16 Oct 1995 17:41:05 -0400
Date: Mon, 16 Oct 1995 17:40:56 -0400
Message-Id: <199510162140.RAA12099@dark-knight.srs.gov>
To: perldb-interest@vix.com
Subject: DBD for Oracle
Cc: Tim.Bunce@ig.co.uk
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Md5: sWS2RV4ihYodu4Ln2GQ9Bg==

perldb-interest,

I admit that I've haven't had time to test the code for quite some time... Is 
anyone else doing anything?  What is the current status of any improvements?

James Taylor
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <07558-95@ignite.demon.co.uk>; Tue, 17 Oct 1995 08:23:22 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 17 Oct 95 01:03:27 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id bf00618;
          17 Oct 95 2:02 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <07727-0@frigate.doc.ic.ac.uk>; Tue, 17 Oct 1995 00:44:32 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA04579 for perldb-interest-real; Mon, 16 Oct 1995 15:13:54 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from hpunix.gsfc.state.ga.us (hpunix.GSFC.STATE.GA.US [168.29.236.106]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA04575 
          for <perldb-interest@fugue.com>; Mon, 16 Oct 1995 15:13:51 -0700
Message-Id: <199510162213.PAA04575@toccata.fugue.com>
Received: from localhost by hpunix.gsfc.state.ga.us with SMTP (1.38.193.5/16.2) 
          id AA23822; Mon, 16 Oct 1995 18:18:06 -0400
Date: Mon, 16 Oct 95 18:18:07 -0400
From: "Marc M. from Tactics" <marcm@hpunix.gsfc.state.ga.us>
X-Mailer: Mozilla 1.1N (X11; I; HP-UX A.09.04 9000/867)
Mime-Version: 1.0
To: perldb-interest@fugue.com
Subject: Stored procedures and bind variables
X-Url: http://www.hermetica.com/technologia/DBI/faq.html
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=us-ascii

Hi everybody!

I am using DBI 0.63 and DBD:Oracle 0.25 on an Hp.

Does anyone know how to run stored procedures and
pass values (from OUT, IN OUT parameters) back to perl?

I cannot find any documentation on how to bind
variables.  Is the only alternative to shell out
to sqlplus?  There must be some way to do this.

HELP!!!!

Marc.


---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <07558-98@ignite.demon.co.uk>; Tue, 17 Oct 1995 08:23:52 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 17 Oct 95 01:03:28 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id bj00618;
          17 Oct 95 2:02 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <09119-0@frigate.doc.ic.ac.uk>; Tue, 17 Oct 1995 01:31:04 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA04804 for perldb-interest-real; Mon, 16 Oct 1995 16:15:37 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from zonk.geko.com.au (garyaj@zonk.geko.com.au [203.2.239.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id QAA04799 
          for <perldb-interest@fugue.com>; Mon, 16 Oct 1995 16:15:22 -0700
Received: (from garyaj@localhost) by zonk.geko.com.au (8.6.12/8.6.12) 
          id JAA25369 for perldb-interest@fugue.com;
          Tue, 17 Oct 1995 09:14:29 +1000
From: Gary Ashton-Jones <garyaj@geko.com.au>
Message-Id: <199510162314.JAA25369@zonk.geko.com.au>
To: perldb-interest@fugue.com
Date: Tue, 17 Oct 1995 09:14:29 +1000 (EST)
X-Mailer: ELM [version 2.4 PL23]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 8bit
Content-Length: 12

unsubscribe
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <07558-121@ignite.demon.co.uk>; Tue, 17 Oct 1995 08:27:35 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 17 Oct 95 03:40:30 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa20943;
          17 Oct 95 4:39 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id TAA05229 for perldb-interest-real; Mon, 16 Oct 1995 19:16:08 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id TAA05225 
          for <perldb-interest@fugue.com>; Mon, 16 Oct 1995 19:16:07 -0700
Received: by gw.home.vix.com id AA15833; Mon, 16 Oct 95 19:18:23 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id VAA10207; Mon, 16 Oct 1995 21:18:22 -0500
Date: Mon, 16 Oct 1995 21:18:22 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: DBI perl <perldb-interest@vix.com>
Subject: Staticly linking DBI + QuickBase driver
Message-Id: <Pine.SUN.3.91.951016211619.1889C-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I keep getting _boot_QBase unresolved in linking while doing 
static linking.  I just made a blank function called that.

Anyone know where that would be made legaly?

Thanks.

---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <11136-0@ignite.demon.co.uk>; Tue, 17 Oct 1995 10:00:06 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 17 Oct 95 08:20:00 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa01016;
          17 Oct 95 9:18 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id AAA05878 for perldb-interest-real; Tue, 17 Oct 1995 00:11:54 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id AAA05874 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 00:11:52 -0700
Received: by gw.home.vix.com id AA05738; Tue, 17 Oct 95 00:14:06 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id IAA17336;
          Tue, 17 Oct 1995 08:12:57 +0100
Date: Tue, 17 Oct 1995 08:12:57 +0100
Message-Id: <199510170712.IAA17336@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: mouring@netnet.net
Cc: perldb-interest@vix.com
In-Reply-To: <Pine.SUN.3.91.951016235747.3779C-100000@netnet1.netnet.net> (message from Ben Lindstrom on Tue, 17 Oct 1995 00:01:04 -0500 (CDT))
Subject: Re: Question on SV/AV/etc
Reply-To: andreas.koenig@mind.de

>>>>> "ben" == Ben Lindstrom <mouring@netnet.net> writes:

ben> I'm to the point that I'm attempting to implement dbd_st_fetch()
ben> Now, I need to have someone point me to some nice documention (besides 
ben> man perl* =) that describe how to populate and deal with AV* and SV*  since
ben> I am totally lost!! =)

How to return an array from POSIX.xs:

int
uname()
    PPCODE:
#ifdef HAS_UNAME
        struct utsname buf;
        if (uname(&buf) >= 0) {
            EXTEND(sp, 5);
            PUSHs(sv_2mortal(newSVpv(buf.sysname, 0)));
            PUSHs(sv_2mortal(newSVpv(buf.nodename, 0)));
            PUSHs(sv_2mortal(newSVpv(buf.release, 0)));
            PUSHs(sv_2mortal(newSVpv(buf.version, 0)));
            PUSHs(sv_2mortal(newSVpv(buf.machine, 0)));
        }
#else

How to populate an AV from 'man perlguts'

              void  av_push(AV*, SV*);
              SV*   av_pop(AV*);
              SV*   av_shift(AV*);
              void  av_unshift(AV*, I32 num);

The whole perlguts manpage is really useful.

ben> Any ideas?  Hints?  Or nice little padded cell? =)


Hope, that helps,
andreas
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <11134-2@ignite.demon.co.uk>; Tue, 17 Oct 1995 10:00:32 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 17 Oct 95 08:26:32 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa19566;
          17 Oct 95 9:25 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa13765;
          17 Oct 95 9:04 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id XAA05814 for perldb-interest-real; Mon, 16 Oct 1995 23:52:35 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id XAA05810 
          for <perldb-interest@fugue.com>; Mon, 16 Oct 1995 23:52:33 -0700
Received: by gw.home.vix.com id AA04602; Mon, 16 Oct 95 23:54:47 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by anna.mind.de (940816.SGI.8.6.9/940406.SGI) id HAA17200;
          Tue, 17 Oct 1995 07:53:33 +0100
Date: Tue, 17 Oct 1995 07:53:33 +0100
Message-Id: <199510170653.HAA17200@anna.mind.de>
From: Andreas Koenig <k@anna.mind.de>
To: mouring@netnet.net
Cc: perldb-interest@vix.com
In-Reply-To: <Pine.SUN.3.91.951016211619.1889C-100000@netnet1.netnet.net> (message from Ben Lindstrom on Mon, 16 Oct 1995 21:18:22 -0500 (CDT))
Subject: Re: Staticly linking DBI + QuickBase driver
Reply-To: andreas.koenig@mind.de

If I go e.g. into my TermReadKey-2.04 directory and say 'make perl',
then the Makefile writes a brandnew perlmain.c for me which contains:


static void
xs_init()
{
        char *file = __FILE__;
        {   extern void boot_Term__ReadKey _((CV* cv));
        newXS("Term::ReadKey::bootstrap", boot_Term__ReadKey, file);
        }


AND I get a blib/auto/Term/ReadKey/ReadKey.a file which looks like so:

k@anna:/usr/.../TermReadKey-2.04% nm -B blib/auto/Term/ReadKey/ReadKey.a | grep boot
00002c90 T boot_Term__ReadKey

(the -B switch is for berkeley style output on my machine)

You see, how they are considered to work together?

Try it yourself with any of the well known solid extensions to find
your deviation from the standard. I cannot guess it, sorry.

andreas

---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <13145-7@ignite.demon.co.uk>; Tue, 17 Oct 1995 12:43:03 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 17 Oct 95 11:12:11 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa24699;
          17 Oct 95 12:11 +0100
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id ae22962;
          17 Oct 95 11:46 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <21398-0@frigate.doc.ic.ac.uk>; Tue, 17 Oct 1995 11:31:19 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id BAA06218 for perldb-interest-real; Tue, 17 Oct 1995 01:59:17 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id BAA06214 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 01:59:11 -0700
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id JAA17660; Tue, 17 Oct 1995 09:57:12 +0100
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199510170857.JAA17660@fruitbat.mcqueen.com>
Subject: Re: DBD for Oracle
To: james.taylor@srs.gov
Date: Tue, 17 Oct 1995 09:57:11 +0100 (BST)
Cc: perldb-interest@fugue.com
In-Reply-To: <199510162140.RAA12099@dark-knight.srs.gov> from "james.taylor@srs.gov" at Oct 16, 95 05:40:56 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 712


> I admit that I've haven't had time to test the code for quite some time... Is 
> anyone else doing anything?  What is the current status of any improvements?

You could check out:

	http://www.hermetica.com/technologia/DBI

for ( reasonably ) up-to-date information on all aspects of perl and databases.

The mSQL driver is relatively stable right now, and the drivers for Quickbase
and Informix are nearly ready for alpha-testing.

Some test programs are getting uploaded as well, including a Tk-based 
mSQL database tool thing by me, hopefully in a week or so.

Hope that helps!

> James Taylor
> 


-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <18316-0@ignite.demon.co.uk>; Tue, 17 Oct 1995 16:53:37 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 17 Oct 95 15:48:20 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa14770;
          17 Oct 95 16:47 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id FAA07908 for perldb-interest-real; Tue, 17 Oct 1995 05:43:50 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id FAA07904 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 05:43:47 -0700
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id NAA21556; Tue, 17 Oct 1995 13:41:49 +0100
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199510171241.NAA21556@fruitbat.mcqueen.com>
Subject: Re: Question on SV/AV/etc
To: perldb-interest@fugue.com
Date: Tue, 17 Oct 1995 13:41:48 +0100 (BST)
Cc: mouring@netnet.net
In-Reply-To: <9510171228.AA18982@dax.austin.ibm.com> from "mhm@austin.ibm.com" at Oct 17, 95 07:28:38 am
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 1505


> |>Good news, as long as I don't have to return anything I can access the
> |>database. =)  Just fetchs and destruction problems seem to be the major
> |>things I need to deal with (No, *blob* routines are not going to be
> |>played with until I know at least what I'm doing with fetch. =)
> |>
> |>Any ideas?  Hints?  Or nice little padded cell? =)
> 
> Having done the same for DB2....I'd vote for the padded cell!  The only
> things available are the perlguts pod and Tim's Oracle code.

Yup. Definitely. I'm fixing (again!) the Informix code to do this.
Funny how simple things like "It's returning a row!" give you such a kick!
Usually only to discover it's returning the same row 30000 times....

8-)

Take a look at the DBD::mSQL code as well for another slightly different
way to doing it.

The way it's implemented in DBD::mSQL is that in dbdimp.c:dbd_describe, you 
fetch the row from the database and create an SV containing the data just
before you return from dbd_describe.

dbd_describe gets called in <whatever>.xs:fetchrow and that just dumps what
gets populated in dbd_describe.

Short of seeing your code, I can't really give you much more help on it!

I should add, that all this jiggery-pokery isn't a shortcoming of DBI, it's
just a nightmare trying to fit wildly differing API's into the DBI-shaped
hole........

> Mike
> mhm@austin.ibm.com

Regards.

"Dubious-hacks-R-us"

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <22090-5@ignite.demon.co.uk>; Wed, 18 Oct 1995 07:06:47 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 17 Oct 95 19:35:23 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa12223;
          17 Oct 95 20:34 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa13200;
          17 Oct 95 17:47 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA08281 for perldb-interest-real; Tue, 17 Oct 1995 08:08:25 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA08277 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 08:08:22 -0700
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id QAA26520; Tue, 17 Oct 1995 16:06:30 +0100
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199510171506.QAA26520@fruitbat.mcqueen.com>
Subject: DBD::Informix available
To: perldb-interest@fugue.com
Date: Tue, 17 Oct 1995 16:06:29 +0100 (BST)
Cc: Tim.Bunce@ig.co.uk, gbalfanz@netcom.com
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 611


A very developer release of DBD::Informix is now available at version
0.20pl0.

Please don't use this driver against production databases right now!

8-)

However, it does appear to work fairly reasonably so far.

As I get feedback, more features and additions, fixes and more bugs will be
added.

So, go get it!

Similarly, information is available from:

	http://www.hermetica.com/technologia/DBI

Please let me know what happens if you try this driver! Feedback is essential
at this stage.

Thanks.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <22089-5@ignite.demon.co.uk>; Wed, 18 Oct 1995 07:06:56 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 17 Oct 95 17:47:22 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa27640;
          17 Oct 95 18:46 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA08210 for perldb-interest-real; Tue, 17 Oct 1995 07:42:52 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id HAA08206 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 07:42:50 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id JAA96397;
          Tue, 17 Oct 1995 09:37:38 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for Tim.Bunce@ig.co.uk at austin.ibm.com; id AA27686;
          Tue, 17 Oct 1995 09:37:36 -0500
Message-Id: <9510171437.AA27686@dax.austin.ibm.com>
To: perldb-interest@fugue.com
Cc: chet@lusitania.watson.ibm.com, Tim.Bunce@ig.co.uk
Subject: Re: Overriding malloc/free on AIX 3.2.5?
Date: Tue, 17 Oct 95 09:37:36 -0500



Mike Moran <mhm@austin.ibm.com>  writes:
|> 
|> Chet Murthy <chet@watson.ibm.com>  writes:
|> |>
|> |>Hum ... OK -- a very ugly problem here.
|> |>
|> |>I was running a program using DBI::DB2, and had a bug which manifested
|> |>itself as a segfault in free.  I couldn't figure it out, but I noticed
|> |>that free() in DB2.so didn't seem to be coming from perl -- that is,
|> |>it wasn't being overridden.
|> |>
|> |>I tried various things, and finally concluded that, given that ld uses
|> |>its import-list *last*, after all object-files and archive-files, it
|> |>isn't possible to override free() so that all .so files will use
|> |>Perl's implementation, unless free() is named something else.
|> |>
|> |>So I turned on the "HIDEMYMALLOC" flag, and put Myfree, Mymalloc,
|> |>Myrealloc into perl.exp, recompiled everything, and all of a sudden,
|> |>everything worked.
|> |>
|> |>I don't know what to do about this in the long run.  It seems clear to
|> |>me that Perl's standard method of overriding malloc with a private
|> |>version (i.e., by just supplying malloc(), etc) isn't working for
|> |>shared-library extensions (at least, not on AIX 3.2.5).
|> |>
|> 
|> Well, the problem is not AIX it is in either  DBI or DB2.  I haven't been
|> far enough in the debugger yet to isolate which.  It seems to be caused
|> by a bad value in DBIc_NUM_FIELDS(imp_sth).
|> 
|> More when I isolate it.

Well, I was close.  It turns out that the problem is in dbd_preparse
which allocates a buffer in which it rewrites the sql statement with 
changes.  Unfortunately, it used a statically determined string padding
value, when Chet's code died it did so because he had long since overrun
the malloced space.

Below is a patch which should cure the problem without too much
computational overhead and without too much wasted space.

BTW, Tim, you need to apply this or a similar patch to Oracle/dbdimp.c


Mike


*** /tmp/T09xxIia	Tue Oct 17 09:26:09 1995
--- dbdimp.c	Tue Oct 17 09:20:24 1995
***************
*** 419,425 ****
  
      /* allocate room for copy of statement with spare capacity	*/
      /* for editing ':1' into ':p1' so we can use obndrv.	*/
!     imp_sth->statement = (char*)safemalloc(strlen(statement) + 100);
  
      /* initialise phs ready to be cloned per placeholder	*/
      memset(&phs_tpl, '\0',sizeof(phs_tpl));
--- 419,426 ----
  
      /* allocate room for copy of statement with spare capacity	*/
      /* for editing ':1' into ':p1' so we can use obndrv.	*/
!     imp_sth->statement = (char*)safemalloc(strlen(statement) + 
!                                           (DBIc_NUM_PARAMS(imp_sth)*4));
  
      /* initialise phs ready to be cloned per placeholder	*/
      memset(&phs_tpl, '\0',sizeof(phs_tpl));

------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <22090-12@ignite.demon.co.uk>; Wed, 18 Oct 1995 07:08:13 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 17 Oct 95 21:48:44 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa21446;
          17 Oct 95 22:47 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa10613;
          17 Oct 95 17:04 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id FAA07867 for perldb-interest-real; Tue, 17 Oct 1995 05:26:25 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id FAA07863 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 05:26:23 -0700
From: mhm@austin.ibm.com
Received: by gw.home.vix.com id AA26967; Tue, 17 Oct 95 05:28:41 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id HAA80248;
          Tue, 17 Oct 1995 07:28:40 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@vix.com at austin.ibm.com; id AA18982;
          Tue, 17 Oct 1995 07:28:38 -0500
Message-Id: <9510171228.AA18982@dax.austin.ibm.com>
To: Ben Lindstrom <mouring@netnet.net>
Cc: DBI perl <perldb-interest@vix.com>
Subject: Re: Question on SV/AV/etc
In-Reply-To: Your message of Tue, 17 Oct 95 00:01:04 -0500. <Pine.SUN.3.91.951016235747.3779C-100000@netnet1.netnet.net>
Date: Tue, 17 Oct 95 07:28:38 -0500


Ben Lindstrom <mouring@netnet.net>  writes:
|>
|>I'm to the point that I'm attempting to implement dbd_st_fetch()
|>
|>Now, I need to have someone point me to some nice documention (besides 
|>man perl* =) that describe how to populate and deal with AV* and SV*
|>since I am totally lost!! =)
|>
|>Good news, as long as I don't have to return anything I can access the
|>database. =)  Just fetchs and destruction problems seem to be the major
|>things I need to deal with (No, *blob* routines are not going to be
|>played with until I know at least what I'm doing with fetch. =)
|>
|>Any ideas?  Hints?  Or nice little padded cell? =)
|>

Having done the same for DB2....I'd vote for the padded cell!  The only
things available are the perlguts pod and Tim's Oracle code.

Mike
mhm@austin.ibm.com
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <22090-34@ignite.demon.co.uk>; Wed, 18 Oct 1995 07:13:26 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 03:50:31 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa07647;
          18 Oct 95 4:50 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa04365;
          17 Oct 95 23:29 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA09325 for perldb-interest-real; Tue, 17 Oct 1995 14:12:09 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from tss0.bpt.sikorsky.com (tss0.bpt.sikorsky.com [140.76.28.5]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id OAA09321 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 14:12:07 -0700
Received: by tss0.bpt.sikorsky.com (5.65/DEC-Ultrix/4.3) id AA15990;
          Tue, 17 Oct 1995 17:13:49 -0400
Received: by sun38.sikorsky (5.x/SMI-SVR4) id AA03216;
          Tue, 17 Oct 1995 17:14:10 -0400
Date: Tue, 17 Oct 1995 17:14:10 -0400
From: Dave Rattanni <dave_rattanni@sikorsky.com>
Message-Id: <9510172114.AA03216@sun38.sikorsky>
To: perldb-interest@fugue.com
Subject: Compiling DBD::Informix on Solaris 2.4 with ESQL 7.1 and GCC
Cc: descarte@hermetica.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Md5: V1DZEvBNoGbG7uI/05DkdQ==

I was able to build DBD::Informix using Informix 7.1 ESQL libs.

I suggest that the following be changed to account for the
location and directory name differences 5.0 -> 7.1 ESQL.


gcc -c -O -fpic -I/usr/local/lib/perl5/sun4-solaris/CORE -Wall -pedantic 
-Wno-comment -Wpointer-arith -Wcast-align -Wconversion -Wtraditional 
-Wpointer-arith -Wcast-qual -I/opt/informix/include <- #### changed in ESQL 7.1 
-I/usr/local/lib/perl5/sun4-solaris/DBI dbdimp.c
dbdimp.c:1: sqlhdr.h: No such file or directory
*** Error code 1
make: Fatal error: Command failed for target `dbdimp.o'


In Makefile.PL:


********************************** 5. 0 **************************************
$opts{dynamic_lib} = { OTHERLDFLAGS => '-L$(INFORMIXDIR)/lib ' .$linkwith };
$opts{OBJECT} = '$(O_FILES) dbdimp.o';
$opts{macro} = { 'ESQL_LIB' => '$(INFORMIXDIR)/include' };

*********************************** 7.1 *************************************
$opts{dynamic_lib} = { OTHERLDFLAGS => '-L$(INFORMIXDIR)/lib ' .$linkwith };
$opts{OBJECT} = '$(O_FILES) dbdimp.o';
$opts{macro} = { 'ESQL_LIB' => '$(INFORMIXDIR)/incl/esql' };


Haven't run the tests yet.

Dave
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <22090-36@ignite.demon.co.uk>; Wed, 18 Oct 1995 07:13:51 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 03:51:34 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa07912;
          18 Oct 95 4:51 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa04409;
          17 Oct 95 23:30 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA09259 for perldb-interest-real; Tue, 17 Oct 1995 13:56:10 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA09252 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 13:56:05 -0700
Received: from post.demon.co.uk by relay-4.mail.demon.net id msg.ac02531;
          16 Oct 95 11:01 +0100
Received: from relay-4.mail.demon.net by relay-3.mail.demon.net id ad10200;
          16 Oct 95 11:00 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <26193-0@ignite.demon.co.uk>;
          Mon, 16 Oct 1995 10:46:19 +0100
To: tim@www.cas.unt.edu, descarte@hermetica.com
Subject: Re: DBD::mSQL driver expectancies.
Cc: perldb-interest@fugue.com
Date: Mon, 16 Oct 1995 10:46:19 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510161100.ad10200@relay-3.mail.demon.net>


> From: Alligator Descartes <descarte@hermetica.com>
> 
> > I'm trying to check out various interfaces to mSQL (for a WWW cgi
> > implementation) and am having some problems with the current
> > patch levels of DBI/DBD::mSQL.  This is what I am working with:
> > 
> > -rw-r--r--  1 tim  wheel  24775 Sep 20 21:11 /tmp/DBD-mSQL-0.60pl6.tar.gz
> > -rw-r--r--  1 tim  wheel  45973 Sep  1 12:22 /tmp/DBI-0.63.tar.Z
> > 
> > I receive this error when running ./test2.pl:
> >
> > DynaLoader.pm loaded (/lib /usr/lib /usr/local/lib)
> > DynaLoader::bootstrap(DBI)
> > DynaLoader::bootstrap(DBD::mSQL)
> > install_driver(mSQL) failed: DBI version mismatch (DBI actual v3407879/s7, expec
> > ted v4/s44) at /usr/local/lib/perl5/DynaLoader.pm line 463.
> > 
> > Which leads me to believe that a newer version of DBI exists
> > someplace (or I need to drop back a patch level or two on DBD::mSQL).
> > Any clues?
> 
> That combination of DBI/DBD::mSQL is the current working configuration ( bar a
> couple of bugs in each piece! ), so you should be fine with it.
> 
> What platform are you on? Also, what patchlevel of perl are you on. You need
> to be at patchlevel 5.001m at least.
> 
> If you could get that info to us, we can take a look from there.

The message:

	DBI version mismatch (DBI actual v3407879/s7, expected v4/s44)

means that when the driver was loaded and it located the DBI it checked
the version and size fields in the dbistate structure and found them to
be different from the values in the DBIXS.h file it was compiled with.

See the definition of the DBISTATE_INIT macro in DBIXS.h.

Looking at the 'DBI actual' values obviously something is corrupted.

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <22089-53@ignite.demon.co.uk>; Wed, 18 Oct 1995 07:18:00 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 00:46:19 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id aj12232;
          18 Oct 95 1:45 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <03488-0@frigate.doc.ic.ac.uk>; Tue, 17 Oct 1995 21:34:28 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA08905 for perldb-interest-real; Tue, 17 Oct 1995 12:03:17 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from srs.gov (bubba.srs.gov [192.33.240.5]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id MAA08901 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 12:02:33 -0700
From: james.taylor@srs.gov
Received: by srs.gov id AA09878 (InterLock SMTP Gateway 1.1 
          for perldb-interest@fugue.com); Tue, 17 Oct 1995 15:03:14 -0400
Received: by srs.gov (Internal Mail Agent-1); Tue, 17 Oct 1995 15:03:14 -0400
Date: Tue, 17 Oct 1995 15:03:04 -0400
Message-Id: <199510171903.PAA13592@dark-knight.srs.gov>
To: perldb-interest@fugue.com
Subject: subscribe
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Md5: S8woAZV8Lamk3swvYReagg==

subscribe
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <22089-65@ignite.demon.co.uk>; Wed, 18 Oct 1995 07:19:41 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 00:46:26 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id an12232;
          18 Oct 95 1:45 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <04994-0@frigate.doc.ic.ac.uk>; Tue, 17 Oct 1995 23:07:13 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA09171 for perldb-interest-real; Tue, 17 Oct 1995 13:30:41 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netnet1.netnet.net (netnet1.netnet.net [198.70.64.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id NAA09167 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 13:30:38 -0700
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id PAA13838; Tue, 17 Oct 1995 15:32:48 -0500
Date: Tue, 17 Oct 1995 15:32:48 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: Alligator Descartes <descarte@hermetica.com>
cc: perldb-interest@fugue.com
Subject: Re: Question on SV/AV/etc
In-Reply-To: <199510171241.NAA21556@fruitbat.mcqueen.com>
Message-ID: <Pine.SUN.3.91.951017152120.12392B-100000@netnet1.netnet.net>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Tue, 17 Oct 1995, Alligator Descartes wrote:

> > Having done the same for DB2....I'd vote for the padded cell!  The only
> > things available are the perlguts pod and Tim's Oracle code.
> 
> Yup. Definitely. I'm fixing (again!) the Informix code to do this.
> Funny how simple things like "It's returning a row!" give you such a kick!
> Usually only to discover it's returning the same row 30000 times....
> 
=) getting rows from that database in ObjC is a breeze, just since I'm 
not really too  qualified to interface with  perl. =)  (Oh well..We all get  
stuck with new adventures.  =)

> 
> Take a look at the DBD::mSQL code as well for another slightly different
> way to doing it.
> 
Ok, I'm always willing to look at new code  (And claim it's magic. =)

> Short of seeing your code, I can't really give you much more help on it!
> 
You'll get a chance.  I'm releasing the first Alpha .02 for those to 
comment (and/or laugh at. =).

> I should add, that all this jiggery-pokery isn't a shortcoming of DBI, it's
> just a nightmare trying to fit wildly differing API's into the DBI-shaped
> hole........

It's  not really a matter  of not understanding DBI.   After I was able 
to get a copy up and running I was abe to  see the interaction better. 
Just it's my lack of  Perl compiler API that is  dragging me over my head 
in quicksand.    Someday it would be nice if a book was published 
that descibed the basics of  writing perl  modules with  C, C++, and ObjC 
code added.  Oh well...I can ONLY dream. =)

---
Ben Lindstrom
http://www.netnet.net/users/mouring
"Trust me, I'm a better Network Admin then a programmer."
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <22089-80@ignite.demon.co.uk>; Wed, 18 Oct 1995 07:26:42 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 02:18:16 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa20929;
          18 Oct 95 3:15 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA10268 for perldb-interest-real; Tue, 17 Oct 1995 18:11:02 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id SAA10264 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 18:11:00 -0700
Received: by gw.home.vix.com id AA22045; Tue, 17 Oct 95 18:13:14 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id msg.gn05915;
          18 Oct 95 2:05 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id at01607;
          17 Oct 95 11:08 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id aa04698;
          17 Oct 95 9:59 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <11111-0@ignite.demon.co.uk>;
          Tue, 17 Oct 1995 09:58:25 +0100
To: perldb-interest@vix.com, james.taylor@srs.gov
Subject: Re: DBD for Oracle
Date: Tue, 17 Oct 1995 09:58:25 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510171000.aa04698@relay-3.mail.demon.net>


> From: james.taylor@srs.gov
> 
> perldb-interest,
> 
> I admit that I've haven't had time to test the code for quite some time... Is 
> anyone else doing anything?  What is the current status of any improvements?

How long is my piece of string?

Grab a copy and read the Changes file.

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <22089-84@ignite.demon.co.uk>; Wed, 18 Oct 1995 07:27:07 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 03:10:02 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa12406;
          18 Oct 95 4:07 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id TAA10437 for perldb-interest-real; Tue, 17 Oct 1995 19:12:38 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id TAA10433 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 19:12:37 -0700
Received: by gw.home.vix.com id AA25789; Tue, 17 Oct 95 19:14:47 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by srs.gov id AA07037 (InterLock SMTP Gateway 1.1 
          for perldb-interest@vix.com); Tue, 17 Oct 1995 22:14:20 -0400
Received: by srs.gov (Internal Mail Agent-1); Tue, 17 Oct 1995 22:14:20 -0400
Date: Tue, 17 Oct 1995 22:10:57 -0400
From: James Taylor <james.taylor@srs.gov>
Subject: Re: DBD for Oracle
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com
Message-Id: <30846231.6697@dark-knight.srs.gov>
Mime-Version: 1.0
X-Mailer: Mozilla 2.0b1J (X11; I; SunOS 5.4 sun4c)
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
References: <9510171000.aa04698@relay-3.mail.demon.net>

Tim Bunce wrote:
> 
> > From: james.taylor@srs.gov
> >
> > perldb-interest,
> >
> > I admit that I've haven't had time to test the code for quite some time... Is
> > anyone else doing anything?  What is the current status of any improvements?
> 
> How long is my piece of string?
> 
> Grab a copy and read the Changes file.
> 
> Tim.

Silly, Silly, Silly me.  I had supposed that since I hadn't seen any
perldb-interest messages for a long time, that nothing was going on.
However, I re-subscribed this afternoon and have already seen some
messages.  I must have somehow become unsubscribed!  Now I just need to
dig around and find the archive so that I can discover what good stuff
I've missed in the last several months.

Sorry for the bother,

James
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <22089-86@ignite.demon.co.uk>; Wed, 18 Oct 1995 07:27:20 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 03:10:34 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa12653;
          18 Oct 95 4:07 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id TAA10443 for perldb-interest-real; Tue, 17 Oct 1995 19:12:43 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id TAA10439 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 19:12:40 -0700
Received: by gw.home.vix.com id AA25792; Tue, 17 Oct 95 19:14:50 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by srs.gov id AA13435 (InterLock SMTP Gateway 1.1 
          for perldb-interest@vix.com); Tue, 17 Oct 1995 22:14:19 -0400
Received: by srs.gov (Internal Mail Agent-1); Tue, 17 Oct 1995 22:14:19 -0400
Date: Tue, 17 Oct 1995 22:11:01 -0400
From: James Taylor <james.taylor@srs.gov>
Subject: Re: DBD for Oracle
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com
Message-Id: <30846235.5B9B@dark-knight.srs.gov>
Mime-Version: 1.0
X-Mailer: Mozilla 2.0b1J (X11; I; SunOS 5.4 sun4c)
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
References: <9510171000.aa04698@relay-3.mail.demon.net>

Tim Bunce wrote:
> 
> > From: james.taylor@srs.gov
> >
> > perldb-interest,
> >
> > I admit that I've haven't had time to test the code for quite some time... Is
> > anyone else doing anything?  What is the current status of any improvements?
> 
> How long is my piece of string?
> 
> Grab a copy and read the Changes file.
> 
> Tim.

Silly, Silly, Silly me.  I had supposed that since I hadn't seen any
perldb-interest messages for a long time, that nothing was going on.
However, I re-subscribed this afternoon and have already seen some
messages.  I must have somehow become unsubscribed!  Now I just need to
dig around and find the archive so that I can discover what good stuff
I've missed in the last several months.

Sorry for the bother,

James
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <22089-93@ignite.demon.co.uk>; Wed, 18 Oct 1995 07:28:49 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 05:21:52 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id ab04083;
          18 Oct 95 6:19 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <15001-0@frigate.doc.ic.ac.uk>; Wed, 18 Oct 1995 05:27:49 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA10720 for perldb-interest-real; Tue, 17 Oct 1995 20:29:22 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id UAA10716 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 20:29:21 -0700
Received: by gw.home.vix.com id AA00642; Tue, 17 Oct 95 20:31:39 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id WAA06583; Tue, 17 Oct 1995 22:29:30 -0500
Date: Tue, 17 Oct 1995 22:29:30 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: DBI perl <perldb-interest@vix.com>
Subject: First release of QuickBase DBD for DBI.
Message-Id: <Pine.SUN.3.91.951017222715.6484A-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

Hopefully within the next day or so the driver will be accessable form 
the WWW page and the FTP site for DBI.

But just wanted to let you all know I just put out my first Alpha of the 
driver if anyone cares to follow along when I beg for help. =)

Soon..Soon..I'll have fetch.. =)
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <22089-95@ignite.demon.co.uk>; Wed, 18 Oct 1995 07:29:02 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 05:43:54 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa13301;
          18 Oct 95 6:43 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id VAA10903 for perldb-interest-real; Tue, 17 Oct 1995 21:37:17 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id VAA10899 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 21:37:15 -0700
Received: by gw.home.vix.com id AA04513; Tue, 17 Oct 95 21:39:29 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id msg.ax14369;
          18 Oct 95 5:34 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id bz23789;
          17 Oct 95 23:34 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id ad20769;
          17 Oct 95 17:38 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <19145-0@ignite.demon.co.uk>;
          Tue, 17 Oct 1995 17:38:36 +0100
To: perldb-interest@vix.com, mouring@netnet.net
Subject: Re: Question on SV/AV/etc
Date: Tue, 17 Oct 1995 17:38:36 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510171738.ad20769@relay-3.mail.demon.net>


> From: Ben Lindstrom <mouring@netnet.net>
> 
> I'm to the point that I'm attempting to implement dbd_st_fetch()
> 
> Now, I need to have someone point me to some nice documention (besides 
> man perl* =) that describe how to populate and deal with AV* and SV*  since
> I am totally lost!! =)

Post fragments of DBD::Oracle code and a description of what's not clear.

> Any ideas?  Hints?  Or nice little padded cell? =)

Sorry, my little padded cell is full right now (I just wish I could
remember where I put the key, it's rather cramped in here :).

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <26709-10@ignite.demon.co.uk>; Wed, 18 Oct 1995 12:07:05 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 09:54:37 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa01011;
          18 Oct 95 10:54 +0100
Received: from 204.254.239.2 by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <19580-0@frigate.doc.ic.ac.uk>; Wed, 18 Oct 1995 10:00:20 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id AAA11211 for perldb-interest-real; Wed, 18 Oct 1995 00:00:03 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id XAA11200 
          for <perldb-interest@fugue.com>; Tue, 17 Oct 1995 23:59:57 -0700
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id sg.ac08439;
          18 Oct 95 1:33 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id do25819;
          18 Oct 95 0:57 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id aa15059;
          17 Oct 95 17:07 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <18574-0@ignite.demon.co.uk>;
          Tue, 17 Oct 1995 17:07:05 +0100
To: perldb-interest@fugue.com, descarte@hermetica.com
Subject: Re: Question on SV/AV/etc
Cc: mouring@netnet.net
Date: Tue, 17 Oct 1995 17:07:05 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510171707.aa15059@relay-3.mail.demon.net>


> From: Alligator Descartes <descarte@hermetica.com>
> 
> > |>Good news, as long as I don't have to return anything I can access the
> > |>database. =)  Just fetchs and destruction problems seem to be the major
> > |>things I need to deal with (No, *blob* routines are not going to be
> > |>played with until I know at least what I'm doing with fetch. =)
> > |>
> > |>Any ideas?  Hints?  Or nice little padded cell? =)
> > 
> > Having done the same for DB2....I'd vote for the padded cell!  The only
> > things available are the perlguts pod and Tim's Oracle code.

And I view the DBD::Oracle code as the 'reference implementation'.

> Short of seeing your code, I can't really give you much more help on it!

Ditto.

> I should add, that all this jiggery-pokery isn't a shortcoming of DBI, it's
> just a nightmare trying to fit wildly differing API's into the DBI-shaped
> hole........

And the DBI-shaped hole will change shape again soon (ish).

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <27708-0@ignite.demon.co.uk>; Wed, 18 Oct 1995 12:55:40 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 11:53:47 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa25849;
          18 Oct 95 12:52 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id CAA12747 for perldb-interest-real; Wed, 18 Oct 1995 02:23:13 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id CAA12743 
          for <perldb-interest@fugue.com>; Wed, 18 Oct 1995 02:23:08 -0700
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id sg.an28756;
          18 Oct 95 10:22 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id be22005;
          17 Oct 95 22:54 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id aa18671;
          17 Oct 95 17:26 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <19031-0@ignite.demon.co.uk>;
          Tue, 17 Oct 1995 17:25:53 +0100
To: perldb-interest@fugue.com, marcm@hpunix.gsfc.state.ga.us
Subject: Re: Stored procedures and bind variables
Date: Tue, 17 Oct 1995 17:25:53 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510171726.aa18671@relay-3.mail.demon.net>


> From: "Marc M. from Tactics" <marcm@hpunix.gsfc.state.ga.us>
> 
> Hi everybody!
> 
> I am using DBI 0.63 and DBD:Oracle 0.25 on an Hp.
> 
> Does anyone know how to run stored procedures and
> pass values (from OUT, IN OUT parameters) back to perl?
> 
> I cannot find any documentation on how to bind
> variables.  Is the only alternative to shell out
> to sqlplus?  There must be some way to do this.

Change that to "There must be some way to do this in the future"
and you'd be right.

I've not implemented it yet. We're close though and I'll be
working on DBD::Oracle again soon.

Tim.
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <00230-0@ignite.demon.co.uk>; Wed, 18 Oct 1995 17:01:24 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 12:49:03 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa08085;
          18 Oct 95 13:48 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa21727;
          18 Oct 95 13:33 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA12873 for perldb-interest-real; Wed, 18 Oct 1995 03:24:42 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id DAA12869 
          for <perldb-interest@fugue.com>; Wed, 18 Oct 1995 03:24:37 -0700
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id LAA24841; Wed, 18 Oct 1995 11:22:42 +0100
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199510181022.LAA24841@fruitbat.mcqueen.com>
Subject: First release of QuickBase DBD for DBI.
To: perldb-interest@fugue.com, mouring@netnet.net
Date: Wed, 18 Oct 1995 11:22:41 +0100 (BST)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 621


> Hopefully within the next day or so the driver will be accessable form 
> the WWW page and the FTP site for DBI.
>
> But just wanted to let you all know I just put out my first Alpha of the 
> driver if anyone cares to follow along when I beg for help. =)
> 
> Soon..Soon..I'll have fetch.. =)

DBD::QBase ( as is appears to be called ) is available from:

	ftp://ftp.mcqueen.com/pub/dbperl/DBD/QBase/DBD-QBase-0.02.tar.gz

Information on the driver is available at:

	http://www.hermetica.com/technologia/DBI

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <00247-1@ignite.demon.co.uk>; Wed, 18 Oct 1995 17:01:50 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 12:25:49 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa04525;
          18 Oct 95 13:24 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <23036-0@frigate.doc.ic.ac.uk>; Wed, 18 Oct 1995 13:02:05 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id CAA12793 for perldb-interest-real; Wed, 18 Oct 1995 02:45:26 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id CAA12789 
          for <perldb-interest@fugue.com>; Wed, 18 Oct 1995 02:45:20 -0700
Received: by gw.home.vix.com id AA23802; Wed, 18 Oct 95 02:47:36 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id EAA14667; Wed, 18 Oct 1995 04:45:58 -0500
Date: Wed, 18 Oct 1995 04:45:58 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com
Subject: Re: Question on SV/AV/etc
In-Reply-To: <9510171738.ad20769@relay-3.mail.demon.net>
Message-Id: <Pine.SUN.3.91.951018043902.14478A-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Tue, 17 Oct 1995, Tim Bunce wrote:

> 
> > From: Ben Lindstrom <mouring@netnet.net>
> > 
> > I'm to the point that I'm attempting to implement dbd_st_fetch()
> > 
> > Now, I need to have someone point me to some nice documention (besides 
> > man perl* =) that describe how to populate and deal with AV* and SV*  since
> > I am totally lost!! =)
> 
> Post fragments of DBD::Oracle code and a description of what's not clear.
> 
It's not the matter of DBD::Oracle code I'm unsure  of...Just  I need to
learn and understand how perl does it's dirty work for passing arrays
around.

Mainly the problem is learning the right seqents of commands to add
items to an array.

QuickBase request you to bind a column with  a variable before the fetch.
And then when the fetch occurs it knows where to  put the data. This I
understand and now how  to implement.  Just finding the command(s) to
call to populate the AV array to pass back in my real problem.

> > Any ideas?  Hints?  Or nice little padded cell? =)
> 
> Sorry, my little padded cell is full right now (I just wish I could
> remember where I put the key, it's rather cramped in here :).
> 
That's ok...I think What Software will pay for my own 7ft by 4ft by 5ft 
padded cell 6 to  9 feet under.=)
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <01598-8@ignite.demon.co.uk>; Wed, 18 Oct 1995 17:56:10 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 16:48:26 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa21643;
          18 Oct 95 17:47 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA13290 for perldb-interest-real; Wed, 18 Oct 1995 06:24:55 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id GAA13286 
          for <perldb-interest@fugue.com>; Wed, 18 Oct 1995 06:24:53 -0700
Received: by gw.home.vix.com id AA08091; Wed, 18 Oct 95 06:26:27 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id sg.ao13185;
          18 Oct 95 14:22 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id bw24097;
          18 Oct 95 13:49 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id ae09983;
          18 Oct 95 12:06 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <26001-0@ignite.demon.co.uk>;
          Wed, 18 Oct 1995 10:45:04 +0100
To: perldb-interest@vix.com, mouring@netnet.net
Subject: Re: First release of QuickBase DBD for DBI.
Date: Wed, 18 Oct 1995 10:45:04 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510181206.ae09983@relay-3.mail.demon.net>


> From: Ben Lindstrom <mouring@netnet.net>
> 
> Hopefully within the next day or so the driver will be accessable form 
> the WWW page and the FTP site for DBI.
> 
> But just wanted to let you all know I just put out my first Alpha of the 
> driver if anyone cares to follow along when I beg for help. =)

Please register yourself and a URL for your module with the automated
module server at

	http://franz.ww.tu-berlin.de/modulelist
 
> Soon..Soon..I'll have fetch.. =)

:-)
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <01880-0@ignite.demon.co.uk>; Wed, 18 Oct 1995 18:00:07 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 16:58:41 GMT
Received: from [204.254.239.2] by punt-2.mail.demon.net id aa26671;
          18 Oct 95 17:57 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA13446 for perldb-interest-real; Wed, 18 Oct 1995 07:35:51 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from rotor.sikorsky.com (rotor.sikorsky.com [140.76.24.221]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA13442 
          for <perldb-interest@fugue.com>; Wed, 18 Oct 1995 07:35:47 -0700
Received: from dino.sikorsky.com by rotor.sikorsky.com (4.1/SMI-4.1) id AA12434;
          Wed, 18 Oct 95 10:33:45 EDT
Received: from rotor.sikorsky.com by dino.sikorsky.com (4.1/SMI-4.1) id AA16747;
          Wed, 18 Oct 95 10:38:25 EDT
Received: from dino.sikorsky.com by rotor.sikorsky.com (4.1/SMI-4.1) id AA12431;
          Wed, 18 Oct 95 10:33:37 EDT
Received: from tss0.bpt.sikorsky.com by dino.sikorsky.com (4.1/SMI-4.1) 
          id AA16731; Wed, 18 Oct 95 10:38:17 EDT
Received: by tss0.bpt.sikorsky.com (5.65/DEC-Ultrix/4.3) id AA04294;
          Wed, 18 Oct 1995 07:50:26 -0400
Received: by sun38.sikorsky (5.x/SMI-SVR4) id AA03688;
          Wed, 18 Oct 1995 07:49:00 -0400
Date: Wed, 18 Oct 1995 07:49:00 -0400
From: Dave Rattanni <dave_rattanni@sikorsky.com>
Message-Id: <9510181149.AA03688@sun38.sikorsky>
To: perldb-interest@fugue.com
Subject: DBD::Informix on Solaris 2.4 with ESQL 7.1
Cc: descarte@hermetica.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Md5: Ya6bhMT82Ajb+BiWJwn+0A==


This is output from test.pl. 

>./test.pl
install_driver(Informix) failed: Can't load 
'/usr/local/lib/perl5/sun4-solaris/auto/DBD/Informix/Informix.so' for module 
DBD::Informix: ld.so.1: /usr/bin/perl: fatal: relocation error: symbol not 
found: ASF_Call: referenced in 
/usr/local/lib/perl5/sun4-solaris/auto/DBD/Informix/Informix.so at  line 450.

 at /usr/local/lib/perl5/DBD/Informix.pm line 18
 at /usr/local/lib/perl5/DBI.pm line 167
        DBI::install_driver called at ./test.pl line 12


************************************************************************
The symbol lives in:

>nm iasfs07a.so | grep ASF
[299]   |     40504|    1632|FUNC |GLOB |0    |7      |ASF_Call
[450]   |     71920|     416|FUNC |GLOB |0    |7      |nsASFTlAddr
[495]   |     46624|      44|FUNC |GLOB |0    |7      |getASFGLBCTL
[553]   |    131992|     192|FUNC |GLOB |0    |7      |ASF_SigSwitch
[632]   |     37048|     144|FUNC |GLOB |0    |7      |deleteASFCtl
[727]   |     35984|     380|FUNC |GLOB |0    |7      |defineASFCtl
[732]   |     43672|     228|FUNC |GLOB |0    |7      |ASF_Init

Must this library also be loaded during the driver installation??

Dave
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <02600-1@ignite.demon.co.uk>; Wed, 18 Oct 1995 19:53:49 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 18:52:44 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa03379;
          18 Oct 95 19:52 +0100
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa12109;
          18 Oct 95 18:37 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA13343 for perldb-interest-real; Wed, 18 Oct 1995 06:53:09 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id GAA13339 
          for <perldb-interest@fugue.com>; Wed, 18 Oct 1995 06:52:55 -0700
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id sg.ac14633;
          18 Oct 95 14:47 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id gi21243;
          18 Oct 95 13:47 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id ac09983;
          18 Oct 95 12:06 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <25893-0@ignite.demon.co.uk>;
          Wed, 18 Oct 1995 10:31:15 +0100
To: descarte@hermetica.com
Subject: Re: Happy with DBD-mSQL (fwd)
Cc: perldb-interest@fugue.com
Date: Wed, 18 Oct 1995 10:31:15 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510181206.ac09983@relay-3.mail.demon.net>


> From: Alligator Descartes <descarte@hermetica.com>
> 
> Tim, donno if you got one of these, but I reckon you should get a copy!
> 
> It's stuff like this.......
> 
> -------
> 
> Hi!
> You haven't heard from me since I was struggling to get DBD-mSQL
> running.
> 
> Now I'm pleased to report that I've successfully completed an
> application that makes heavy use of DBD-mSQL.  It works on a big
> database, uses 6 different cursors (three of them open simultaneously).
> And it works like a charm!
> 
> Use of the DBI::DBD features is still limited (I have some difficulty
> to understand them -- like so many :-( ).  I only use: $drh->connect,
> $dbh->prepare(), $sth->execute, $sth->fetchrow, and $sth->finish.
> But they seem to satify my needs.
> 
> I'm impressed by the possibilities you and Tim Bunce have created for
> me (and Larry Wall, of course).
> 
> This is for moral support!
> Greetings,
> 
> ___ Marti Rijken ____ mrijken@inter.nl.net ____ Arnhem, Netherlands ___
> _______  Province of Gelderland, nature conservation department  ______
> 
> Alligator Descartes	| PGP key available on request!
> descarte@hermetica.com	| http://www.hermetica.com 

Thanks.

And since it's also your good work I've CC'd it the list :-)

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <04404-9@ignite.demon.co.uk>; Thu, 19 Oct 1995 07:07:59 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 18 Oct 95 21:21:39 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa24467;
          18 Oct 95 22:20 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA13906 for perldb-interest-real; Wed, 18 Oct 1995 10:17:47 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id KAA13902 
          for <perldb-interest@fugue.com>; Wed, 18 Oct 1995 10:17:43 -0700
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id sg.bw19835;
          18 Oct 95 17:00 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id bk26929;
          18 Oct 95 14:54 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id ac21751;
          18 Oct 95 13:18 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <27893-0@ignite.demon.co.uk>;
          Wed, 18 Oct 1995 13:17:27 +0100
To: perldb-interest@fugue.com, mhm@austin.ibm.com
Subject: Re: Overriding malloc/free on AIX 3.2.5?
Cc: chet@lusitania.watson.ibm.com
Date: Wed, 18 Oct 1995 13:17:27 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510181318.ac21751@relay-3.mail.demon.net>


> From: mhm@austin.ibm.com
> 
> Mike Moran <mhm@austin.ibm.com>  writes:
> |> 
> |> Chet Murthy <chet@watson.ibm.com>  writes:
> |> |>
> |> |>Hum ... OK -- a very ugly problem here.
> |> |>
> |> |>I was running a program using DBI::DB2, and had a bug which manifested
> |> |>itself as a segfault in free.  I couldn't figure it out, but I noticed
> |> |>that free() in DB2.so didn't seem to be coming from perl -- that is,
> |> |>it wasn't being overridden.
> |> |>
> |> |>I tried various things, and finally concluded that, given that ld uses
> |> |>its import-list *last*, after all object-files and archive-files, it
> |> |>isn't possible to override free() so that all .so files will use
> |> |>Perl's implementation, unless free() is named something else.
> |> |>
> |> |>So I turned on the "HIDEMYMALLOC" flag, and put Myfree, Mymalloc,
> |> |>Myrealloc into perl.exp, recompiled everything, and all of a sudden,
> |> |>everything worked.
> |> |>
> |> |>I don't know what to do about this in the long run.  It seems clear to
> |> |>me that Perl's standard method of overriding malloc with a private
> |> |>version (i.e., by just supplying malloc(), etc) isn't working for
> |> |>shared-library extensions (at least, not on AIX 3.2.5).
> |> |>
> |> 
> |> Well, the problem is not AIX it is in either  DBI or DB2.  I haven't been
> |> far enough in the debugger yet to isolate which.  It seems to be caused
> |> by a bad value in DBIc_NUM_FIELDS(imp_sth).
> |> 
> |> More when I isolate it.
> 
> Well, I was close.  It turns out that the problem is in dbd_preparse
> which allocates a buffer in which it rewrites the sql statement with 
> changes.  Unfortunately, it used a statically determined string padding
> value, when Chet's code died it did so because he had long since overrun
> the malloced space.
> 
> Below is a patch which should cure the problem without too much
> computational overhead and without too much wasted space.
> 
> BTW, Tim, you need to apply this or a similar patch to Oracle/dbdimp.c
> 
> Mike
>   
>       /* allocate room for copy of statement with spare capacity	*/
>       /* for editing ':1' into ':p1' so we can use obndrv.	*/
> !     imp_sth->statement = (char*)safemalloc(strlen(statement) + 100);
>   
> --- 419,426 ----
>   
>       /* allocate room for copy of statement with spare capacity	*/
>       /* for editing ':1' into ':p1' so we can use obndrv.	*/
> !     imp_sth->statement = (char*)safemalloc(strlen(statement) + 
> !                                           (DBIc_NUM_PARAMS(imp_sth)*4));

Er, I don't think so.

How is DBIc_NUM_PARAMS set before you've parsed the string ?

Granted the +100 should actually be something bigger (or realloc
inside the loop if we get close).

Tim.
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <04405-27@ignite.demon.co.uk>; Thu, 19 Oct 1995 07:11:35 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 19 Oct 95 03:44:51 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa04367;
          19 Oct 95 4:43 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa27825;
          18 Oct 95 22:37 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA14014 for perldb-interest-real; Wed, 18 Oct 1995 11:03:31 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id LAA14010 
          for <perldb-interest@fugue.com>; Wed, 18 Oct 1995 11:03:29 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id NAA106293;
          Wed, 18 Oct 1995 13:05:47 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA11790;
          Wed, 18 Oct 1995 13:05:36 -0500
Message-Id: <9510181805.AA11790@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@fugue.com, mhm@austin.ibm.com, 
    chet@lusitania.watson.ibm.com
Subject: Re: Overriding malloc/free on AIX 3.2.5?
In-Reply-To: Your message of Wed, 18 Oct 95 13:17:27 +0100. <9510181318.ac21751@relay-3.mail.demon.net>
Date: Wed, 18 Oct 95 13:05:35 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|> 
|> > From: mhm@austin.ibm.com
|> > 
|> > Well, I was close.  It turns out that the problem is in dbd_preparse
|> > which allocates a buffer in which it rewrites the sql statement with 
|> > changes.  Unfortunately, it used a statically determined string padding
|> > value, when Chet's code died it did so because he had long since overrun
|> > the malloced space.
|> > 
|> > Below is a patch which should cure the problem without too much
|> > computational overhead and without too much wasted space.
|> > 
|> > BTW, Tim, you need to apply this or a similar patch to Oracle/dbdimp.c
|> > 
|> > Mike
|> >   
|> >       /* allocate room for copy of statement with spare capacity	*/
|> >       /* for editing ':1' into ':p1' so we can use obndrv.	*/
|> > !     imp_sth->statement = (char*)safemalloc(strlen(statement) + 100);
|> >   
|> > --- 419,426 ----
|> >   
|> >       /* allocate room for copy of statement with spare capacity	*/
|> >       /* for editing ':1' into ':p1' so we can use obndrv.	*/
|> > !     imp_sth->statement = (char*)safemalloc(strlen(statement) + 
|> > !                                           (DBIc_NUM_PARAMS(imp_sth)*4));
|> 
|> Er, I don't think so.
|> 
|> How is DBIc_NUM_PARAMS set before you've parsed the string ?
|> 
|> Granted the +100 should actually be something bigger (or realloc
|> inside the loop if we get close).
|> 

At the point in time where DBD::Oracle calls oopen (dbdimp.c: db_st_prepare
line 300 in version 0.25) DBD::DB2 has already parsed the statement and
the number of parameters is available from the engine.  Not knowing OCI I was
assuming you had the same info available or at a minimun, needed to make one
additional call to get it.

From your comment above, I see I was mistaken.

Mike

------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <04405-32@ignite.demon.co.uk>; Thu, 19 Oct 1995 07:12:18 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 19 Oct 95 04:05:10 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa09201;
          19 Oct 95 5:04 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa03343;
          18 Oct 95 23:49 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA14197 for perldb-interest-real; Wed, 18 Oct 1995 11:58:22 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id LAA14193 
          for <perldb-interest@fugue.com>; Wed, 18 Oct 1995 11:58:19 -0700
Received: by gw.home.vix.com id AA01252; Wed, 18 Oct 95 12:00:34 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id g.ag19119;
          18 Oct 95 16:30 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id ep26911;
          18 Oct 95 15:27 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id ab14131;
          18 Oct 95 12:31 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <27513-0@ignite.demon.co.uk>;
          Wed, 18 Oct 1995 12:27:44 +0100
To: mouring@netnet.net
Subject: Re: Question on SV/AV/etc
Cc: perldb-interest@vix.com
Date: Wed, 18 Oct 1995 12:27:44 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510181231.ab14131@relay-3.mail.demon.net>


> From: Ben Lindstrom <mouring@netnet.net>
> 
> On Tue, 17 Oct 1995, Tim Bunce wrote:
> 
> > > From: Ben Lindstrom <mouring@netnet.net>
> > > 
> > > I'm to the point that I'm attempting to implement dbd_st_fetch()
> > > 
> > > Now, I need to have someone point me to some nice documention (besides 
> > > man perl* =) that describe how to populate and deal with AV* and SV*  since
> > > I am totally lost!! =)
> > 
> > Post fragments of DBD::Oracle code and a description of what's not clear.
>
> It's not the matter of DBD::Oracle code I'm unsure  of...Just  I need to
> learn and understand how perl does it's dirty work for passing arrays
> around.
> 
> Mainly the problem is learning the right seqents of commands to add
> items to an array.
> 
> QuickBase request you to bind a column with a variable before the fetch.
> And then when the fetch occurs it knows where to  put the data. This I
> understand and now how  to implement.  Just finding the command(s) to
> call to populate the AV array to pass back in my real problem.

But that's what DBD::Oracle does. dbd_describe allocates an SV
for each column and binds it to Oracle. dbd_st_fetch does the
fetch and copies the columns to elements of the AV* returned by
DBIS->get_fbav(imp_sth).

All the code is there. Maybe you need to move/also bind in dbd_st_fetch
but basically there should be little to change.

NOTE: The further away your code is from DBD::Oracle's the harder
it will be for you to track changes that I make to the implementation!

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <04406-49@ignite.demon.co.uk>; Thu, 19 Oct 1995 07:15:15 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 19 Oct 95 04:49:23 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id as14068;
          19 Oct 95 5:48 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <06924-0@frigate.doc.ic.ac.uk>; Thu, 19 Oct 1995 01:55:42 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA15037 for perldb-interest-real; Wed, 18 Oct 1995 16:35:14 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id QAA15033 
          for <perldb-interest@fugue.com>; Wed, 18 Oct 1995 16:35:12 -0700
Received: by gw.home.vix.com id AA21600; Wed, 18 Oct 95 16:37:30 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from [205.149.164.200] (rmdudley.vip.best.com) by mail.crl.com 
          with SMTP id AA12071 (5.65c/IDA-1.5 for <perldb-interest@vix.com>);
          Wed, 18 Oct 1995 16:36:34 -0700
Date: Wed, 18 Oct 1995 16:36:34 -0700
X-Sender: mrlizard@mail.crl.com
Message-Id: <acaade050002100433c3@[205.149.164.200]>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
To: perldb-interest@vix.com
From: Brian Valente <mrlizard@crl.com>
Subject: website address?

Hi,

Sorry for the mundane questions - what's the URL of the companion web/ftp
site to this list?

Thanks,

Brian

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

Brian Valente                   | brian_valente@rmdudley.com
R.M. Dudley Corporation         | mrlizard@crl.com
1799 Old Bayshore Suite 200     | http://www.rmdudley.com
Burlingame, CA 94010            | 415-697-1650 tel. 415-697-1816 fax.
===========================================================================



---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <04406-51@ignite.demon.co.uk>; Thu, 19 Oct 1995 07:15:40 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 19 Oct 95 04:50:27 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id at14068;
          19 Oct 95 5:48 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <06957-0@frigate.doc.ic.ac.uk>; Thu, 19 Oct 1995 01:56:57 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA14979 for perldb-interest-real; Wed, 18 Oct 1995 16:18:37 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from spica.npac.syr.edu (root@spica-gw.npac.syr.edu [128.230.14.6]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id QAA14975 
          for <perldb-interest@fugue.com>; Wed, 18 Oct 1995 16:18:10 -0700
Received: from greatwall.npac.syr.edu by spica.npac.syr.edu (4.1/I-1.98K) 
          id AA27370; Wed, 18 Oct 95 19:17:53 EDT
Message-Id: <9510182317.AA27370@spica.npac.syr.edu>
Date: Wed, 18 Oct 95 19:18:47 -0400
From: Gang Cheng <gcheng@npac.syr.edu>
X-Mailer: Mozilla 1.1N (X11; I; IRIX 5.3 IP22)
Mime-Version: 1.0
To: hotjava-interest@java.sun.com, java-announce@java.eng.sun.com, 
    java-interest@java.sun.com, java-porting@java.sun.com, 
    perldb-interest@fugue.com, sp-discussion@mcs.anl.gov, 
    WIN95-L@eva.dc.lsoft.com, www-vrml@wired.com, gcheng@npac.syr.edu
Subject: A WWW archive system for USENET newsgroups and mailing-list(new and 
         repost)
X-Url: http://asknpac.npac.syr.edu/cgi-bin/news/showbody?bid=34000586&word=~1
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=us-ascii

Please notice that we have dedicated a new server for this news archive
and the previous URL (<URL:http://kayak.npac.syr.edu:1963>) should be
replaced by the new one:

<URL:http://asknpac.npac.syr.edu>
or 
<URL:http://128.230.144.19>.

We have also added more newsgroups/mailing lists upon user's requests.

--- Gang

We at Northeast Parallel Architecture Center (NPAC), Syracue
University has developed an archive system for searching/reading USENET
newsgroups,
mailing lists and personal mailbox from WWW. An Oracle database server is used
to store/manage mails and two search/navigation interfaces
accesible by any WWW browser
to the archive are provided: one is an advanced search interface
allowing queries with various options such as query by mail header,
by date, by subject (keywords), by sender. The other is a Hypermail-like
navigation interface for users familiar with Hypermail.

We offer free access to this archive for the Internet 
community. Check the URL

<URL:http://asknpac.npac.syr.edu>
or 
<URL:http://128.230.144.19>.

The whole archive is automatically updated in
every 30 minutes. Currently the following newsgroups (total 67) are archived
in the database, including this newsgroup/mailing-group: 

(..) shows the current total number of mails archived in the database

alt.comp.compression (46) 
comp.ai (375) 
comp.ai.neural-nets (152) 
comp.ai.philosophy (464) 
comp.arch (549) 
comp.benchmarks (202) 
comp.compression (388) 
comp.compression.research (28) 
comp.databases (704) 
comp.databases.object (181) 
comp.databases.oracle (2461) 
comp.dcom.cell-relay (175) 
comp.dcom.frame-relay (149) 
comp.dcom.isdn (929) 
comp.dcom.lans.fddi (55) 
comp.dcom.lans.misc (71) 
comp.dcom.net-management (96) 
comp.dcom.servers (98) 
comp.dcom.sys.cisco (898) 
comp.dcom.telecom (380) 
comp.dcom.videoconf (149) 
comp.graphics.visualization (139) 
comp.infosystems (93) 
comp.infosystems.gis (406) 
comp.infosystems.www.advocacy (247) 
comp.infosystems.www.announce (869) 
comp.infosystems.www.authoring.cgi (1647) 
comp.infosystems.www.authoring.html (3995) 
comp.infosystems.www.authoring.images (679) 
comp.infosystems.www.authoring.misc (634) 
comp.infosystems.www.browsers.mac (681) 
comp.infosystems.www.browsers.misc (577) 
comp.infosystems.www.browsers.ms-windows (2095) 
comp.infosystems.www.browsers.x (467) 
comp.infosystems.www.misc (1157) 
comp.infosystems.www.servers.mac (256) 
comp.infosystems.www.servers.misc (209) 
comp.infosystems.www.servers.ms-windows (602) 
comp.infosystems.www.servers.unix (724) 
comp.lang.basic.visual.database (601) 
comp.lang.basic.visual.misc (2474) 
comp.lang.c++ (3764) 
comp.lang.java (1850) 
comp.lang.oberon (170) 
comp.lang.perl.announce (27) 
comp.lang.perl.misc (1702) 
comp.lang.rexx (265) 
comp.multimedia (1202) 
comp.os.ms-windows.programmer.misc (1546) 
comp.os.ms-windows.programmer.tools (493) 
comp.os.ms-windows.programmer.win32 (1163) 
comp.os.ms-windows.setup (608) 
comp.parallel (80) 
comp.parallel.mpi (41) 
comp.parallel.pvm (103) 
comp.protocols.tcp-ip (358) 
comp.security.misc (515) 
comp.software-eng (459) 
comp.sources.unix (8) 
comp.sys.sgi.graphics (188) 
comp.sys.sun.admin (948) 
comp.unix.admin (837) 
comp.unix.aix (1261) 
comp.unix.misc (337) 
comp.unix.programmer (658) 
comp.unix.solaris (1881) 
syr.general (218) 

The following mailing lists (total 8) are archived:

hotjava-interest (mailing-list) (788) 
java-announce (mailing-list) (8) 
java-interest (mailing-list) (1479) 
java-porting (mailing-list) (279) 
perldb-interest (mailing-list) (173) 
sp-discussion (mailing-list) (51) 
win95-l@peach.ease.lsoft.com (mailing-list) (507) 
www-vrml (mailing-list) (3235) 

This system is still under development and more functions are planned to
add to this system. Please send your comments to Gang Cheng 
(gcheng@npac.syr.edu). Thanks.

--- Gang


---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <05714-5@ignite.demon.co.uk>; Thu, 19 Oct 1995 11:59:10 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 19 Oct 95 08:55:46 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa20508;
          19 Oct 95 9:53 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id XAA15817 for perldb-interest-real; Wed, 18 Oct 1995 23:59:08 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id XAA15813 
          for <perldb-interest@fugue.com>; Wed, 18 Oct 1995 23:59:07 -0700
Received: by gw.home.vix.com id AA17557; Thu, 19 Oct 95 00:01:23 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from get.hooked.net (du07.inow.com [205.158.32.106]) 
          by vader.inow.com (8.6.12/8.6.12) with SMTP id AAA11794 
          for <perldb-interest@vix.com>; Thu, 19 Oct 1995 00:01:16 -0700
Date: Thu, 19 Oct 1995 00:01:16 -0700
Message-Id: <199510190701.AAA11794@vader.inow.com>
X-Sender: webworks@inow.com
X-Mailer: Windows Eudora Light Version 1.5.2
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
To: perldb-interest@vix.com
From: Sarvesh Mathur <webworks@inow.com>
Subject: subsc

subscribe

---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <07225-0@ignite.demon.co.uk>; Thu, 19 Oct 1995 15:12:40 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 19 Oct 95 11:33:23 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa17543;
          19 Oct 95 12:32 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa12226;
          19 Oct 95 12:19 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id BAA16074 for perldb-interest-real; Thu, 19 Oct 1995 01:59:15 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id BAA16070 
          for <perldb-interest@fugue.com>; Thu, 19 Oct 1995 01:59:13 -0700
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id JAA06651; Thu, 19 Oct 1995 09:57:13 +0100
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199510190857.JAA06651@fruitbat.mcqueen.com>
Subject: Re: website address?
To: Brian Valente <mrlizard@crl.com>
Date: Thu, 19 Oct 1995 09:57:11 +0100 (BST)
Cc: perldb-interest@fugue.com
In-Reply-To: <acaade050002100433c3@[205.149.164.200]> from "Brian Valente" at Oct 18, 95 04:36:34 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 364


> Sorry for the mundane questions - what's the URL of the companion web/ftp
> site to this list?

I'm supposing it must be:

	http://www.hermetica.com/technologia/DBI

and the general perl module one is:

	http://franz.ww.tu-berlin.de/modulelist

> Brian

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <14676-0@ignite.demon.co.uk>; Thu, 19 Oct 1995 18:46:08 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 19 Oct 95 17:44:41 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa09398;
          19 Oct 95 18:43 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA18053 for perldb-interest-real; Thu, 19 Oct 1995 08:41:11 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from localhost (mellon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          with SMTP id IAA18047 for <perldb-interest@toccata.fugue.com>;
          Thu, 19 Oct 1995 08:41:09 -0700
Message-Id: <199510191541.IAA18047@toccata.fugue.com>
To: perldb-interest@toccata.fugue.com
Subject: Advertising the mailing list...
Date: Thu, 19 Oct 1995 08:41:08 -0700
From: Ted Lemon <mellon@fugue.com>


The number of people who send mail to perldb-interest asking to be
subscribed is too large to attribute to chance.   I think the problem
is bad advertising.   If you mention the perldb mailing list to a
friend, or if you advertise it in some regular posting, please don't
describe it as ``perldb-interest@fugue.com.''   Instead, describe it
as ``the Perldb mailing list (send mail to
perldb-interest-request@fugue.com to subscribe).''   This way, you
haven't mentioned the actual mailing list address in your message, so
the recipient presumably won't think to send mail there.

If you have a regular posting that you send out, please make the above
change to it now so you don't forget.

Thanks!

			       _MelloN_
---+++---
Received: from punt-4.mail.demon.net by ignite.demon.co.uk with SMTP (PP) 
          id <16662-1@ignite.demon.co.uk>; Fri, 20 Oct 1995 07:06:13 +0100
Received: from punt-4.mail.demon.net by mailstore for dbperl@ignite.demon.co.uk 
          id <814153085:01674>; Fri, 20 Oct 95 01:38:05 GMT
Received: from relay-1.mail.demon.net by punt-4.mail.demon.net id aa01569;
          20 Oct 95 2:37 +0100
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id ac17903;
          19 Oct 95 22:51 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <28507-0@frigate.doc.ic.ac.uk>; Thu, 19 Oct 1995 22:01:59 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA18761 for perldb-interest-real; Thu, 19 Oct 1995 12:02:40 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA18757 
          for <perldb-interest@fugue.com>; Thu, 19 Oct 1995 12:02:38 -0700
Received: by gw.home.vix.com id AA09540; Thu, 19 Oct 95 12:04:55 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from gandalf (gandalf [130.105.3.186]) 
          by mailbox.osf.org (8.6.12/8.6.x) with SMTP id PAA01903;
          Thu, 19 Oct 1995 15:04:51 -0400
Date: Thu, 19 Oct 1995 15:04:51 -0400
Message-Id: <199510191904.PAA01903@mailbox.osf.org>
X-Sender: dougm@postman.osf.org
X-Mailer: Windows Eudora Version 2.0.3
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
To: perldb-interest@vix.com
From: Doug MacEachern <dougm@osf.org>
Subject: DBI/DBD::mSQL
Cc: descarte@mcqueen.com

OS:   HP-UX A.09.05
Perl: 5.001m
DBI:  0.63
DBD::mSQL: 0.60pl6
mSQL server: 1.0.8

We've got DBI installed, tested, working, using dynamic linking.  

The DBD::mSQL installation tries to force static linking for HP-UX, but we
went ahead and commented out the following block:

# Since HPUX can't mix -pic & non-pic (.a) in a dynamically loadable
# file and oracle only supply .a libs we have to build static.
if ($Config{osname} eq 'hpux' || $Config{osname} eq 'i386-sysv' ) {
    print "Warning: forced to build static not dynamic on $Config{osname}\n";
    print "         See README file for more information.\n";
    $opts{LINKTYPE} = 'static';
}

Should this be there?  It looks like the Makefile.PL for mSQL used the
Oracle Makfile.PL as a template and left this behind. ??

At <URL:http://www.hermetica.com/technologia/DBI/DBD/index.html#mSQL>
HP-UX is not listed as a known working platform, has anyone else had success?

It's installed, and the test2.pl scripts runs with a few warnings:

--
/lib/dld.sl: Unresolved symbol: dbd_st_readblob (code)  from
/usr/local/lib/perl5/hpux/auto/DBD/mSQL/mSQL.sl
--
But this is a known bug, correct?

--
** Disconnecting from second instance....
disconnect(DBI::db=HASH(0x400aa020)) invalidates 1 associated cursor(s) at
test2.pl line 131.
--

This doesn't seem to effect anything, and judging from the comments and code
in mSQL.xs lines 120-126 or so, I should see this warning after a successful
$dbh->disconnect, correct??

---
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=hpux, osver=9, archname=hpux
    uname='hp-ux seagrams a.09.05 a 9000710 2007577379 two-user license '
    hint=recommended
  Compiler:
    cc='cc', optimize='+O1'
    cppflags='-D_POSIX_SOURCE -D_HPUX_SOURCE -Aa'
    ccflags ='-D_POSIX_SOURCE -D_HPUX_SOURCE -Aa'
    ldflags =''
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=0, d_casti32=define, d_castneg=define
    intsize=4, alignbytes=8, usemymalloc=y, randbits=15
  Libraries:
    so=sl
    libpth=/lib/pa1.1 /lib /usr/lib /usr/local/lib
    libs=-lm -ldld
    libc=/lib/libc.sl
  Dynamic Linking:
    dlsrc=dl_hpux.xs, dlext=sl, d_dlsymun=
    cccdlflags='+z', ccdlflags='-Wl,-E ', lddlflags='-b'
---

So far through testing I'm very happy with the interface, and the overall
DBI specification, thanks to all who have contributed to this development!  

-Doug


---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <16665-17@ignite.demon.co.uk>; Fri, 20 Oct 1995 07:11:14 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 20 Oct 95 00:50:16 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa09448;
          20 Oct 95 1:49 +0100
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id ab20740;
          19 Oct 95 23:44 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <00593-0@frigate.doc.ic.ac.uk>; Thu, 19 Oct 1995 23:03:10 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA18906 for perldb-interest-real; Thu, 19 Oct 1995 12:55:49 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA18902 
          for <perldb-interest@fugue.com>; Thu, 19 Oct 1995 12:55:44 -0700
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id UAA11893; Thu, 19 Oct 1995 20:53:42 +0100
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199510191953.UAA11893@fruitbat.mcqueen.com>
Subject: Re: DBI/DBD::mSQL
To: Doug MacEachern <dougm@osf.org>
Date: Thu, 19 Oct 1995 20:53:41 +0100 (BST)
Cc: perldb-interest@fugue.com, Tim.Bunce@ig.co.uk
In-Reply-To: <199510191904.PAA01903@mailbox.osf.org> from "Doug MacEachern" at Oct 19, 95 03:04:51 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 2261


> The DBD::mSQL installation tries to force static linking for HP-UX, but we
> went ahead and commented out the following block:
> 
> # Since HPUX can't mix -pic & non-pic (.a) in a dynamically loadable
> # file and oracle only supply .a libs we have to build static.
> if ($Config{osname} eq 'hpux' || $Config{osname} eq 'i386-sysv' ) {
>     print "Warning: forced to build static not dynamic on $Config{osname}\n";
>     print "         See README file for more information.\n";
>     $opts{LINKTYPE} = 'static';
> }
> 
> Should this be there?  It looks like the Makefile.PL for mSQL used the
> Oracle Makfile.PL as a template and left this behind. ??

Yup, that's exactly what's happened. If it makes no difference, I'll remove it
from the Makefile.PL for the next release/patchlevel.

> At <URL:http://www.hermetica.com/technologia/DBI/DBD/index.html#mSQL>
> HP-UX is not listed as a known working platform, has anyone else had success?

I have ( says the WWW site admin sheepishly... )......If others have, they
haven't told me the platform info.......

> It's installed, and the test2.pl scripts runs with a few warnings:
> 
> --
> /lib/dld.sl: Unresolved symbol: dbd_st_readblob (code)  from
> /usr/local/lib/perl5/hpux/auto/DBD/mSQL/mSQL.sl
> --
> But this is a known bug, correct?

Yes, the dbd_st_readblob code got left in by mistake. It's out in the next
release/patchlevel........

> --
> ** Disconnecting from second instance....
> disconnect(DBI::db=HASH(0x400aa020)) invalidates 1 associated cursor(s) at
> test2.pl line 131.
> --
> 
> This doesn't seem to effect anything, and judging from the comments and code
> in mSQL.xs lines 120-126 or so, I should see this warning after a successful
> $dbh->disconnect, correct??

Well, sort of. It's an unresolved issue in the DBI code, according to the
Bunceman. To avoid the error, stick a: undef $whatever_your_cursor_is_called
after the $whatever_you_cursor_is_called->finish; call.

> So far through testing I'm very happy with the interface, and the overall
> DBI specification, thanks to all who have contributed to this development!  

Wa-hoo! A satisfied customer! 

Thanks!

> -Doug

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <16664-21@ignite.demon.co.uk>; Fri, 20 Oct 1995 07:12:22 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 19 Oct 95 20:09:12 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id ae00131;
          19 Oct 95 21:08 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <24655-0@frigate.doc.ic.ac.uk>; Thu, 19 Oct 1995 18:46:35 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA18030 for perldb-interest-real; Thu, 19 Oct 1995 08:35:08 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA18026 
          for <perldb-interest@fugue.com>; Thu, 19 Oct 1995 08:35:07 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id KAA29346 
          for <perldb-interest@fugue.com>; Thu, 19 Oct 1995 10:37:24 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA23620;
          Thu, 19 Oct 1995 10:37:23 -0500
Message-Id: <9510191537.AA23620@dax.austin.ibm.com>
To: perldb-interest@fugue.com
Subject: How does Oracle handle LOBs?
Date: Thu, 19 Oct 95 10:37:22 -0500


Looking at DBD::Oracle v0.25 it appears that OCI supports at a minimum
piece meal return of a LOB.  That brings up the question, does it
support retrieving the entire LOB to a file?

Since DB2 supports three types of LOBs (Binary, Character, Wide Character)
there is more than one way to retrieve them.  I was wondering If I should
make suitable additions to the DB2.xs file for the additional variants 
or add a trailing argument to the existing readblob function.

Any comments?

Mike
--------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <16664-24@ignite.demon.co.uk>; Fri, 20 Oct 1995 07:13:20 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 19 Oct 95 20:09:14 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id af00131;
          19 Oct 95 21:08 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <24755-0@frigate.doc.ic.ac.uk>; Thu, 19 Oct 1995 18:48:50 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA18059 for perldb-interest-real; Thu, 19 Oct 1995 08:41:19 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA18048 
          for <perldb-interest@fugue.com>; Thu, 19 Oct 1995 08:41:09 -0700
Received: by gw.home.vix.com id AA23592; Thu, 19 Oct 95 08:43:24 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
X400-Received: by mta bnr.ca in /PRMD=BNR/ADMD=TELECOM.CANADA/C=CA/; Relayed;
               Thu, 19 Oct 1995 11:42:57 -0400
X400-Received: by /PRMD=BNR/ADMD=TELECOM.CANADA/C=CA/; Relayed;
               Thu, 19 Oct 1995 11:42:48 -0400
X400-Received: by /PRMD=BNR/ADMD=TELECOM.CANADA/C=CA/; Relayed;
               Thu, 19 Oct 1995 11:42:00 -0400
Date: Thu, 19 Oct 1995 11:42:00 -0400
X400-Originator: /dd.id=0146423/g=daniel/i=dg/s=cayouette/@bnr.ca
X400-Mts-Identifier: [/PRMD=BNR/ADMD=TELECOM.CANADA/C=CA/;bcars520.b.998:19.09.95.15.42.48]
X400-Content-Type: P2-1984 (2)
Content-Identifier: status of syb...
From: "daniel (d.g.) cayouette" <cayouett@bnr.ca>
Message-Id: <"26001 Thu Oct 19 11:42:51 1995"@bnr.ca>
To: perldb-interest@vix.com
Cc: Tim.Bunce@ig.co.uk
Subject: status of sybase perl?


  What is the status of perl for oracle, ingres and sybase?

Daniel

---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <16664-35@ignite.demon.co.uk>; Fri, 20 Oct 1995 07:17:01 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 19 Oct 95 22:49:59 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa29880;
          19 Oct 95 23:48 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA19194 for perldb-interest-real; Thu, 19 Oct 1995 14:17:32 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from spsgate.sps.mot.com (spsgate.sps.mot.com [192.70.231.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id OAA19190 
          for <perldb-interest@fugue.com>; Thu, 19 Oct 1995 14:17:30 -0700
Received: from mogate (mogate.sps.mot.com) 
          by spsgate.sps.mot.com (4.1/SMI-4.1/Email 2.1 10/25/93) id AA14596 
          for perldb-interest@fugue.com; Thu, 19 Oct 95 14:19:41 MST
Received: from motsps by mogate (4.1/SMI-4.1/Email-2.0) id AA26401;
          Thu, 19 Oct 95 14:19:39 MST
Received: from opus.psdc.sps.mot.com (opus-vlsi-az.sps.mot.com) 
          by motsps (4.1/SMI-4.1/Email-2.1) id AA03855 
          for perldb-interest@fugue.com; Thu, 19 Oct 95 14:19:36 MST
Received: from yosemite by opus.psdc.sps.mot.com with SMTP (1.37.109.6/16.2) 
          id AA09729; Thu, 19 Oct 95 14:19:11 -0700
Received: by yosemite (1.38.193.4/16.2) id AA01397;
          Thu, 19 Oct 1995 14:19:33 -0700
From: Jim Searle <jims@psdc.sps.mot.com>
Message-Id: <9510191419.ZM1395@yosemite.vlsi-az.sps.mot.com>
Date: Thu, 19 Oct 1995 14:19:33 -0700
In-Reply-To: Alligator Descartes <descarte@hermetica.com> "Re: DBI/DBD::mSQL" (Oct 19, 8:53pm)
References: <199510191953.UAA11893@fruitbat.mcqueen.com>
X-Mailer: Z-Mail (3.2.1 31aug95)
To: Alligator Descartes <descarte@hermetica.com>, 
    Doug MacEachern <dougm@osf.org>
Subject: Re: DBI/DBD::mSQL
Cc: perldb-interest@fugue.com, Tim.Bunce@ig.co.uk
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii

On Oct 19,  8:53pm, Alligator Descartes wrote:
> Subject: Re: DBI/DBD::mSQL
>
> > At <URL:http://www.hermetica.com/technologia/DBI/DBD/index.html#mSQL>
> > HP-UX is not listed as a known working platform, has anyone else had
> > success?
>
> I have ( says the WWW site admin sheepishly... )......If others have, they
> haven't told me the platform info.......

>From the help provided in this posting, and the help of Mark Pease, I too now
have a working DBD::mSQL, and the test2.pl script passes with no warnings!!

OS:   HP-UX A.09.05
CC:   HP92453-01 A.09.70 HP C Compiler
Perl: 5.001m
DBI:  0.63
DBD::mSQL: 0.60pl6
mSQL server: 1.0.8


> > So far through testing I'm very happy with the interface, and the overall
> > DBI specification, thanks to all who have contributed to this development!
>
> Wa-hoo! A satisfied customer!
>
> Thanks!

I agree, Thank You!


jim


-- 
| Jim Searle   Email: Jim_Searle-ljs021@email.mot.com  602-752-2732      |
| Motorola Phoenix Strategic Design Center (MS=BB106 LOC=AZ28)    __ O   |
| 4625 South Ash Ave. Suite 12, Tempe Arizona 85282             _ \ <_   |
|______________________________________________________________( )/ ( )__|
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <16664-44@ignite.demon.co.uk>; Fri, 20 Oct 1995 07:19:27 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 20 Oct 95 00:05:50 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa05861;
          20 Oct 95 1:04 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA19310 for perldb-interest-real; Thu, 19 Oct 1995 14:42:14 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA19306 
          for <perldb-interest@fugue.com>; Thu, 19 Oct 1995 14:42:10 -0700
Received: by gw.home.vix.com id AA20949; Thu, 19 Oct 95 14:44:26 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from rijken.inter.NL.net by altrade.nijmegen.inter.nl.net 
          via ah99-17.Arnhem.NL.net [193.79.228.242] with ESMTP 
          id WAA17266 (8.6.10/1.8); Thu, 19 Oct 1995 22:44:19 +0100
Received: (from mrijken@localhost) by rijken.inter.NL.net (8.6.11/8.6.11) 
          id WAA00490; Thu, 19 Oct 1995 22:43:05 +0100
Date: Thu, 19 Oct 1995 22:43:05 +0100 (MET)
From: Marti Rijken <mrijken@solair1.inter.nl.net>
To: Doug MacEachern <dougm@osf.org>
Cc: perldb-interest@vix.com
Subject: Re: DBI/DBD::mSQL
In-Reply-To: <199510191904.PAA01903@mailbox.osf.org>
Message-Id: <Pine.LNX.3.91.951019224212.437B-100000@rijken.inter.NL.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Thu, 19 Oct 1995, Doug MacEachern wrote:

> [...]
> Should this be there?  It looks like the Makefile.PL for mSQL used the
> Oracle Makfile.PL as a template and left this behind. ??

Yes, it seems to be left behind.  DBD::mSQL was developed on a copy of
DBD::Oracle, as is the recommended way to create a new driver.

> /lib/dld.sl: Unresolved symbol: dbd_st_readblob (code)  from
> /usr/local/lib/perl5/hpux/auto/DBD/mSQL/mSQL.sl

Here's a patch in which the reference is commented out. It works o.k.
for me.  The 'todo' list of Alligator Descartes mentions a clean-up of
the code :-)

--------------------------------------------------
*** mSQL.xs     Thu Sep 21 20:02:10 1995
--- mSQL.xs.ORG Thu Sep 21 08:31:34 1995
*************** readblob(sth, field, offset, len, destsv
*** 260,267 ****
      long        len
      SV *        destsv
      CODE:
! /*  ST(0) = dbd_st_readblob(sth, field, offset, len, destsv); */
!     ST(0) = &sv_undef;  /* discarded anyway, is it? */


  void
--- 260,266 ----
      long        len
      SV *        destsv
      CODE:
!     ST(0) = dbd_st_readblob(sth, field, offset, len, destsv);


  void
--------------------------------------------------

> ** Disconnecting from second instance....
> disconnect(DBI::db=HASH(0x400aa020)) invalidates 1 associated cursor(s) at
> test2.pl line 131.
> 
> This doesn't seem to effect anything, and judging from the comments and code
> in mSQL.xs lines 120-126 or so, I should see this warning after a successful
> $dbh->disconnect, correct??

I've got the impression that all the application has to do is finish any
open cursors.  The DBI module will disconnect on exit.  Can anyone
confirm that this is as it should be?

Please tell me if you get DBD::mSQL running on HPUX.  I'm using
DBD::mSQL to my full satisfaction at home on Linux 1.2.13, but it might
even be an alternative for our Oracle database on HPUX at work...

Regards,

___ Marti Rijken ____ mrijken@inter.nl.net ____ Arnhem, Netherlands ___
_______  Province of Gelderland, nature conservation department  ______

---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <16664-53@ignite.demon.co.uk>; Fri, 20 Oct 1995 07:20:51 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 20 Oct 95 00:52:55 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa25149;
          20 Oct 95 1:50 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA19590 for perldb-interest-real; Thu, 19 Oct 1995 16:19:43 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id QAA19586 
          for <perldb-interest@fugue.com>; Thu, 19 Oct 1995 16:19:36 -0700
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id msg.ab08675;
          20 Oct 95 0:16 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id fa00285;
          19 Oct 95 23:29 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id aa05631;
          19 Oct 95 17:23 +0100
Date: Thu, 19 Oct 1995 17:22:52 +100 (BST)
From: Paul Mahoney <ptm@xact.demon.co.uk>
X-Sender: ptm@xact4.xact.com
To: perldb-interest@fugue.com
Subject: Memory leak in perl 4.036
Message-ID: <Pine.SCO.3.90.951019171225.14624B-100000@xact4.xact.com>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I believe I've found a memory leak in perl 4.036. Please don't tell me
to move over to perl 5, I can't at the moment :-(

I haven't got the solution yet ... I'm hoping the team have a fix for 
this already :-)

When you call a subroutine from within a "foreach" loop a little bit more
memory is grabbed by perl and not released. My script executes a such a
loop an EXTREMELY LARGE number of times... after 4 hours I was getting the
following error from perl: 

	Out of memory!

Basically malloc() finally refused to given me any more memory. It's taken
me a long time to pin the problem down and I'm VERY sure my summary of the
bug is correct.

Is this a known problem?
Has someone got a patch to fix it?

Thanks

---
Paul Mahoney, X-Act Solutions Limited
smail: Owlsmead, Meads Road, Little Common, Bexhill-on-Sea, East Sussex TN39 4SY
email: ptm@xact.demon.co.uk ... pmahoney@cix.compulink.co.uk
phone: +44 424 846368

---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <16664-72@ignite.demon.co.uk>; Fri, 20 Oct 1995 07:23:46 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 20 Oct 95 04:56:05 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa25646;
          20 Oct 95 5:55 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA19907 for perldb-interest-real; Thu, 19 Oct 1995 20:27:15 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id UAA19903 
          for <perldb-interest@fugue.com>; Thu, 19 Oct 1995 20:27:13 -0700
Received: by gw.home.vix.com id AA01900; Thu, 19 Oct 95 20:29:26 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from hpcc123.corp.hp.com (okamoto.corp.hp.com) by hp.com 
          with ESMTP (1.37.109.16/15.5+ECS 3.3) id AA085943544;
          Thu, 19 Oct 1995 15:59:05 -0700
Received: by hpcc123.corp.hp.com (1.37.109.16/15.5+ECS 3.3) id AA129623543;
          Thu, 19 Oct 1995 15:59:03 -0700
From: Jeff Okamoto <okamoto@hpcc123.corp.hp.com>
Message-Id: <199510192259.AA129623543@hpcc123.corp.hp.com>
Subject: Re: DBI/DBD::mSQL
To: dougm@osf.org
Date: Thu, 19 Oct 95 15:59:03 PDT
Cc: perldb-interest@vix.com, descarte@mcqueen.com
In-Reply-To: <199510191904.PAA01903@mailbox.osf.org>; from "Doug MacEachern" at Oct 19, 95 3:04 pm
Mailer: Elm [revision: 70.85]

> # Since HPUX can't mix -pic & non-pic (.a) in a dynamically loadable
> # file and oracle only supply .a libs we have to build static.
> if ($Config{osname} eq 'hpux' || $Config{osname} eq 'i386-sysv' ) {
>     print "Warning: forced to build static not dynamic on $Config{osname}\n";
>     print "         See README file for more information.\n";
>     $opts{LINKTYPE} = 'static';
> }

This is somewhat incorrect.  You *can* mix PIC and non-PIC object files in
a .a library, but you cannot link a non-PIC object file into a shared library.
I have received .a archives that contain PIC modules and can thus turn them
into shared libraries.

Perhaps the comment could be rewritten as:

# HP-UX cannot link a non-PIC object file into a shared library.  Since the
# .a libs that Oracle supplies contain non-PIC object files, we have to
# build static.

Jeff
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <19623-0@ignite.demon.co.uk>; Fri, 20 Oct 1995 07:30:46 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 20 Oct 95 06:27:01 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa22571;
          20 Oct 95 7:26 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id WAA20234 for perldb-interest-real; Thu, 19 Oct 1995 22:11:13 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id WAA20230 
          for <perldb-interest@fugue.com>; Thu, 19 Oct 1995 22:11:12 -0700
Received: by gw.home.vix.com id AA10156; Thu, 19 Oct 95 22:13:28 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id AAA12848; Fri, 20 Oct 1995 00:13:27 -0500
Date: Fri, 20 Oct 1995 00:13:26 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: DBI perl <perldb-interest@vix.com>
Subject: <weak grin> Another light comes on (QBase/Oracle)
Message-Id: <Pine.SUN.3.91.951019235722.11366B-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

Since I have a working copy of QBase driver  I printed both QBase  and 
Oracle DBD and started going through the code line by line...And it's 
rather embarassing what I learned. =)

You know all those NICE structures that were gracefully defined?  Well..
I basicly  commented them out and ignored them.  Oh well..had to start 
somewhere.  =)

Now.. I mainly understand imp_sth_st structure...but  since I don't know 
Oracle..I'm unsure what the following are used in imp_dbd_st.
	Lda_Def lda;
	ub1 hda[HDA_SIZE];

Also the whole imp_fbh_st. Niether one seems to have any direct affect
to me.  I see how imp_sth_st contains reference information  to how to 
access  the database  (like currenty "file descripter" and other required
global typedata).

So far the  rest I understand..The QuickBase ObjC object takes away a lot 
of the code and hides it...So most of my work is sorting through and
figuring out what QuickBase handles  and what I have to handle.




---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <25123-0@ignite.demon.co.uk>; Fri, 20 Oct 1995 16:54:34 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 20 Oct 95 15:43:59 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa11403;
          20 Oct 95 16:43 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA22108 for perldb-interest-real; Fri, 20 Oct 1995 06:32:23 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id GAA22104 
          for <perldb-interest@fugue.com>; Fri, 20 Oct 1995 06:32:18 -0700
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id sg.az22363;
          20 Oct 95 14:29 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id al09207;
          20 Oct 95 13:39 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id aa13549;
          20 Oct 95 12:53 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <22827-0@ignite.demon.co.uk>;
          Fri, 20 Oct 1995 12:01:52 +0100
To: okamoto@hpcc123.corp.hp.com
Subject: Re: DBI/DBD::mSQL
Cc: perldb-interest@fugue.com
Date: Fri, 20 Oct 1995 12:01:52 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510201253.aa13549@relay-3.mail.demon.net>


> From: Jeff Okamoto <okamoto@hpcc123.corp.hp.com>
>
> Perhaps the comment could be rewritten as:
> 
> # HP-UX cannot link a non-PIC object file into a shared library.  Since the
> # .a libs that Oracle supplies contain non-PIC object files, we have to
> # build static.

Done. Thanks.

Tim.
---+++---
Received: from punt3.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <03032-10@ignite.demon.co.uk>; Mon, 23 Oct 1995 07:07:36 +0100
Received: from punt-3.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 20 Oct 95 19:17:10 GMT
Received: from relay-1.mail.demon.net by punt-3.mail.demon.net id aa14373;
          20 Oct 95 20:16 +0100
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa06811;
          20 Oct 95 19:22 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA22614 for perldb-interest-real; Fri, 20 Oct 1995 09:32:20 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA22610 
          for <perldb-interest@fugue.com>; Fri, 20 Oct 1995 09:32:14 -0700
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id RAA18366; Fri, 20 Oct 1995 17:28:41 +0100
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199510201628.RAA18366@fruitbat.mcqueen.com>
Subject: Re: First release of QuickBase DBD for DBI.
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Date: Fri, 20 Oct 1995 17:28:40 +0100 (BST)
Cc: perldb-interest@fugue.com
In-Reply-To: <9510201507.ao05588@relay-3.mail.demon.net> from "Tim Bunce" at Oct 20, 95 02:46:59 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 798


> > DBD::QBase ( as is appears to be called ) is available from:
> > 
> > 	ftp://ftp.mcqueen.com/pub/dbperl/DBD/QBase/DBD-QBase-0.02.tar.gz
> > 
> > Information on the driver is available at:
> > 
> > 	http://www.hermetica.com/technologia/DBI
> 
> I think we should be using the CPAN to distribute database drivers.
> 
> Can all driver developers please vist
> 
> 	http://franz.ww.tu-berlin.de/modulelist
> 
> and register themselves. If possible please provide a URL (maybe ftp://...)
> from which your module can automatically be retrieved and mirrored
> by the Module Server.

As far as I know, the DBD::Informix and DBD::mSQL drivers are already there
and get mirrored.......
 
> Tim.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <03031-12@ignite.demon.co.uk>; Mon, 23 Oct 1995 07:08:15 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 20 Oct 95 17:37:34 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa10980;
          20 Oct 95 18:36 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA22378 for perldb-interest-real; Fri, 20 Oct 1995 08:23:34 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA22373 
          for <perldb-interest@fugue.com>; Fri, 20 Oct 1995 08:23:30 -0700
Received: by gw.home.vix.com id AA20811; Fri, 20 Oct 95 08:25:43 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id sg.bu26681;
          20 Oct 95 15:55 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id ad13862;
          20 Oct 95 15:17 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id ac05588;
          20 Oct 95 15:07 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <23461-0@ignite.demon.co.uk>;
          Fri, 20 Oct 1995 13:08:39 +0100
To: dougm@osf.org, mrijken@solair1.inter.nl.net
Subject: Re: DBI/DBD::mSQL
Cc: perldb-interest@vix.com
Date: Fri, 20 Oct 1995 13:08:39 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510201507.ac05588@relay-3.mail.demon.net>


> From: Marti Rijken <mrijken@solair1.inter.nl.net>
> 
> On Thu, 19 Oct 1995, Doug MacEachern wrote:
> 
> > disconnect(DBI::db=HASH(0x400aa020)) invalidates 1 associated cursor(s) at
> > test2.pl line 131.
> > 
> > This doesn't seem to effect anything, and judging from the comments and code
> > in mSQL.xs lines 120-126 or so, I should see this warning after a successful
> > $dbh->disconnect, correct??
> 
> I've got the impression that all the application has to do is finish any
> open cursors.  The DBI module will disconnect on exit.  Can anyone
> confirm that this is as it should be?

That's okay. The warning should not count inactive cursors. It should
get fixed.

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <03031-26@ignite.demon.co.uk>; Mon, 23 Oct 1995 07:13:50 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 21 Oct 95 01:24:47 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa29706;
          21 Oct 95 0:36 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA23893 for perldb-interest-real; Fri, 20 Oct 1995 15:24:00 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA23889 
          for <perldb-interest@fugue.com>; Fri, 20 Oct 1995 15:23:59 -0700
Received: by gw.home.vix.com id AA27264; Fri, 20 Oct 95 15:26:13 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id sg.br26681;
          20 Oct 95 15:55 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id ad13878;
          20 Oct 95 15:17 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id ag05588;
          20 Oct 95 15:07 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <23607-0@ignite.demon.co.uk>;
          Fri, 20 Oct 1995 13:42:43 +0100
To: perldb-interest@vix.com, cayouett@bnr.ca
Subject: Re: status of sybase perl?
Date: Fri, 20 Oct 1995 13:42:43 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510201507.ag05588@relay-3.mail.demon.net>


> From: "daniel (d.g.) cayouette" <cayouett@bnr.ca>
> 
>   What is the status of perl for oracle, ingres and sybase?

Check out

	http://www.hermetica.com/technologia/DBI/DBD/index.html

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <03033-35@ignite.demon.co.uk>; Mon, 23 Oct 1995 07:15:16 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 20 Oct 95 23:19:35 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa03358;
          21 Oct 95 0:18 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <21475-0@frigate.doc.ic.ac.uk>; Fri, 20 Oct 1995 18:46:43 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA22291 for perldb-interest-real; Fri, 20 Oct 1995 08:06:54 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id IAA22287 
          for <perldb-interest@fugue.com>; Fri, 20 Oct 1995 08:06:36 -0700
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id sg.al26824;
          20 Oct 95 15:55 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id ad13917;
          20 Oct 95 15:17 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id af05588;
          20 Oct 95 15:07 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <23589-0@ignite.demon.co.uk>;
          Fri, 20 Oct 1995 13:36:56 +0100
To: perldb-interest@fugue.com, mhm@austin.ibm.com
Subject: Re: How does Oracle handle LOBs?
Date: Fri, 20 Oct 1995 13:36:56 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510201507.af05588@relay-3.mail.demon.net>


> From: mhm@austin.ibm.com
> 
> Looking at DBD::Oracle v0.25 it appears that OCI supports at a minimum
> piece meal return of a LOB.  That brings up the question, does it
> support retrieving the entire LOB to a file?

No, but it could be added as a default method based on readblob
which a driver could override if required.

I'd probably do it as:

	$sth->copy_blob_to_file(1, $open_file_handle);

I'll add it to the Todo file.

> Since DB2 supports three types of LOBs (Binary, Character, Wide Character)
> there is more than one way to retrieve them.  I was wondering If I should
> make suitable additions to the DB2.xs file for the additional variants 
> or add a trailing argument to the existing readblob function.

The $sth should carry enough information for read_blob to know what
type a given field is.

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <03033-43@ignite.demon.co.uk>; Mon, 23 Oct 1995 07:16:55 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 20 Oct 95 23:19:44 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ag03358;
          21 Oct 95 0:18 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <22373-0@frigate.doc.ic.ac.uk>; Fri, 20 Oct 1995 19:23:31 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA22581 for perldb-interest-real; Fri, 20 Oct 1995 09:28:15 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id JAA22577 
          for <perldb-interest@fugue.com>; Fri, 20 Oct 1995 09:28:08 -0700
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id sg.ah26892;
          20 Oct 95 15:56 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id af13853;
          20 Oct 95 15:17 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id ao05588;
          20 Oct 95 15:07 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <24055-0@ignite.demon.co.uk>;
          Fri, 20 Oct 1995 14:46:59 +0100
To: perldb-interest@fugue.com, mouring@netnet.net, descarte@hermetica.com
Subject: Re: First release of QuickBase DBD for DBI.
Cc: k@franz.ww.tu-berlin.de
Date: Fri, 20 Oct 1995 14:46:59 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510201507.ao05588@relay-3.mail.demon.net>


> From: Alligator Descartes <descarte@hermetica.com>
> 
> > Hopefully within the next day or so the driver will be accessable form 
> > the WWW page and the FTP site for DBI.
> >
> > But just wanted to let you all know I just put out my first Alpha of the 
> > driver if anyone cares to follow along when I beg for help. =)
> > 
> > Soon..Soon..I'll have fetch.. =)
> 
> DBD::QBase ( as is appears to be called ) is available from:
> 
> 	ftp://ftp.mcqueen.com/pub/dbperl/DBD/QBase/DBD-QBase-0.02.tar.gz
> 
> Information on the driver is available at:
> 
> 	http://www.hermetica.com/technologia/DBI

I think we should be using the CPAN to distribute database drivers.

Can all driver developers please vist

	http://franz.ww.tu-berlin.de/modulelist

and register themselves. If possible please provide a URL (maybe ftp://...)
from which your module can automatically be retrieved and mirrored
by the Module Server.

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <03033-47@ignite.demon.co.uk>; Mon, 23 Oct 1995 07:17:45 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 20 Oct 95 23:19:47 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id am03358;
          21 Oct 95 0:19 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <24896-0@frigate.doc.ic.ac.uk>; Fri, 20 Oct 1995 21:08:40 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA23094 for perldb-interest-real; Fri, 20 Oct 1995 11:19:03 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from eve.mscs.mu.edu (eve.mscs.mu.edu [134.48.4.166]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id LAA23090 
          for <perldb-interest@fugue.com>; Fri, 20 Oct 1995 11:19:01 -0700
Received: by eve.mscs.mu.edu (Smail3.1.28.1 #9) id m0t6M07-0002DlC;
          Fri, 20 Oct 95 13:17 CDT
Message-Id: <m0t6M07-0002DlC@eve.mscs.mu.edu>
From: BCL HTML account <webm@marque.mscs.mu.edu>
Subject: DBI Installation
To: perldb-interest@fugue.com
Date: Fri, 20 Oct 1995 13:17:02 -0500 (CDT)
X-Mailer: ELM [version 2.4 PL23]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 2519


Hi,

We are getting segmentation fault while running make test of DBI module.
perl Makefile.PL and make are working.
Following is the output of make test.  It is giving an error on test 5.

Please HELP!!

-Thanks

Malathi 

eve:/usr/local/www# make test TEST_VERBOSE=1
Makefile:333: warning: overriding commands for target `/rsch_oracle/workarea/www/tools/GATEWAY/DBI/blib/DBI.pm'
Makefile:298: warning: ignoring old commands for target `/rsch_oracle/workarea/www/tools/GATEWAY/DBI/blib/DBI.pm'
/usr/local/bin/perl -I/rsch_oracle/workarea/www/tools/GATEWAY/DBI/blib -I/rsch_oracle/workarea/www/tools/GATEWAY/DBI/blib -I/usr/local/lib/perl5.0/lib/sun4-solaris -I/usr/local/lib/perl5.0/lib -e 'use Test::Harness qw(&runtests $verbose); $verbose=1; runtests @ARGV;' t/*.t
t/min...............1..6
ok 1
ok 2
ok 3
DBD::ExampleP in /usr/local/lib/perl5.0/lib is hidden by DBD::ExampleP in /rsch_oracle/workarea/www/tools/GATEWAY/DBI/blib
 at t/min.t line 16
DBD::NullP in /usr/local/lib/perl5.0/lib is hidden by DBD::NullP in /rsch_oracle/workarea/www/tools/GATEWAY/DBI/blib
 at t/min.t line 16
ok 4
FAILED on test 5
Failed 1 test, 0.00% okay.
Files=1,  Tests=6,  1 secs ( 0.37 cusr  0.22 csys =  0.59 cpu)
/usr/local/bin/perl -I/rsch_oracle/workarea/www/tools/GATEWAY/DBI/blib -I/rsch_oracle/workarea/www/tools/GATEWAY/DBI/blib -I/usr/local/lib/perl5.0/lib/sun4-solaris -I/usr/local/lib/perl5.0/lib test.pl
test.pl 
DBI test application $Revision: 1.12 $
make: *** [test] Segmentation Fault (core dumped)
script done on Fri Oct 20 13:06:49 1995

*******************************************************************************
***** perl -e 'use Config; print Config::myconfig()'                   ********
*******************************************************************************

Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=solaris, osver=2.4, archname=sun4-solaris
    uname='sunos eve 5.4 generic_101945-27 sun4m sparc '
    hint=recommended
  Compiler:
    cc='gcc', optimize='-O'
    cppflags=''
    ccflags =''
    ldflags =''
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=0, d_casti32=define, d_castneg=define
    intsize=4, alignbytes=8, usemymalloc=y, randbits=15
  Libraries:
    so=so
    libpth=/lib /usr/lib /usr/ccs/lib /usr/local/lib
    libs=-lsocket -lnsl -ldb -ldl -lm -lc -lcrypt
    libc=/usr/lib/libc.so
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
    cccdlflags='-fpic', ccdlflags='', lddlflags='-G'

---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <03033-49@ignite.demon.co.uk>; Mon, 23 Oct 1995 07:18:24 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 20 Oct 95 23:19:45 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ai03358;
          21 Oct 95 0:18 +0100
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <23500-0@frigate.doc.ic.ac.uk>; Fri, 20 Oct 1995 20:15:04 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA22778 for perldb-interest-real; Fri, 20 Oct 1995 10:16:58 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA22774 
          for <perldb-interest@fugue.com>; Fri, 20 Oct 1995 10:16:56 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id MAA43059 
          for <perldb-interest@fugue.com>; Fri, 20 Oct 1995 12:19:13 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA22024;
          Fri, 20 Oct 1995 12:19:12 -0500
Message-Id: <9510201719.AA22024@dax.austin.ibm.com>
To: perldb-interest@fugue.com
Subject: Anyone have successfully using blobs in DBD::Oracle?
Date: Fri, 20 Oct 95 12:19:11 -0500


Just curious, I'm having problems getting the data from readblob back
into my perl script variable under DB2.  Thus, the obvious question has
anyone tried it (readblob under Oracle)?

Mike

---------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <03031-48@ignite.demon.co.uk>; Mon, 23 Oct 1995 07:18:37 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 21 Oct 95 08:05:43 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa01527;
          21 Oct 95 9:05 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id AAA24543 for perldb-interest-real; Sat, 21 Oct 1995 00:02:13 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id AAA24539 
          for <perldb-interest@fugue.com>; Sat, 21 Oct 1995 00:02:10 -0700
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id msg.cc26681;
          20 Oct 95 15:56 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id ae13901;
          20 Oct 95 15:17 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id ap05588;
          20 Oct 95 15:07 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <24075-0@ignite.demon.co.uk>;
          Fri, 20 Oct 1995 14:50:04 +0100
To: mhm@austin.ibm.com
Subject: Re: Overriding malloc/free on AIX 3.2.5?
Cc: perldb-interest@fugue.com, chet@lusitania.watson.ibm.com
Date: Fri, 20 Oct 1995 14:50:04 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510201507.ap05588@relay-3.mail.demon.net>


> From: mhm@austin.ibm.com
> 
> |> >       /* allocate room for copy of statement with spare capacity	*/
> |> >       /* for editing ':1' into ':p1' so we can use obndrv.	*/
> |> > !     imp_sth->statement = (char*)safemalloc(strlen(statement) + 
> |> > !                                           (DBIc_NUM_PARAMS(imp_sth)*4));
> |> 
> |> Er, I don't think so.
> |> 
> |> How is DBIc_NUM_PARAMS set before you've parsed the string ?
> 
> At the point in time where DBD::Oracle calls oopen (dbdimp.c: db_st_prepare
> line 300 in version 0.25) DBD::DB2 has already parsed the statement and
> the number of parameters is available from the engine.

So what is dbd_preparse() doing? Why not get the info from the DB2 API?

I presume DB2 use '?' as the placeholder.

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <03033-267@ignite.demon.co.uk>; Mon, 23 Oct 1995 07:47:17 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sat, 21 Oct 95 08:52:54 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa23402;
          21 Oct 95 9:52 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id AAA24650 for perldb-interest-real; Sat, 21 Oct 1995 00:51:09 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id AAA24646 
          for <perldb-interest@fugue.com>; Sat, 21 Oct 1995 00:51:07 -0700
Received: by gw.home.vix.com id AA08332; Sat, 21 Oct 95 00:53:22 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from disperse.demon.co.uk by relay-4.mail.demon.net id msg.bf21862;
          20 Oct 95 14:21 +0100
Received: from post.demon.co.uk by relay-2.mail.demon.net id at09207;
          20 Oct 95 13:39 +0100
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id ai13549;
          20 Oct 95 12:54 +0100
Received: from ig.co.uk by ignite.demon.co.uk id <23137-0@ignite.demon.co.uk>;
          Fri, 20 Oct 1995 12:50:56 +0100
To: perldb-interest@vix.com, mouring@netnet.net
Subject: Re: <weak grin> Another light comes on (QBase/Oracle)
Date: Fri, 20 Oct 1995 12:50:56 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510201254.ai13549@relay-3.mail.demon.net>


> From: Ben Lindstrom <mouring@netnet.net>
> 
> Since I have a working copy of QBase driver  I printed both QBase  and 
> Oracle DBD and started going through the code line by line...And it's 
> rather embarassing what I learned. =)
> 
> You know all those NICE structures that were gracefully defined?  Well..
> I basicly  commented them out and ignored them.  Oh well..had to start 
> somewhere.  =)
> 
> Now.. I mainly understand imp_sth_st structure...but  since I don't know 
> Oracle..I'm unsure what the following are used in imp_dbd_st.
> 	Lda_Def lda;
> 	ub1 hda[HDA_SIZE];

Basically a working area for an oracle database connection.
It's oracle specific.

> Also the whole imp_fbh_st. Niether one seems to have any direct affect
> to me.

Affect?

> I see how imp_sth_st contains reference information  to how to 
> access  the database  (like currenty "file descripter" and other required
> global typedata).

Are you asking a question?

Anyway, imp_fbh_st stuff is very likely to change radically 'soon' :-)

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <03033-326@ignite.demon.co.uk>; Mon, 23 Oct 1995 07:55:04 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 22 Oct 95 16:41:35 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa06390;
          22 Oct 95 16:40 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <04972-0@frigate.doc.ic.ac.uk>; Sun, 22 Oct 1995 17:38:41 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA29199 for perldb-interest-real; Sun, 22 Oct 1995 07:43:42 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from tss0.bpt.sikorsky.com (tss0.bpt.sikorsky.com [140.76.28.5]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA29195 
          for <perldb-interest@fugue.com>; Sun, 22 Oct 1995 07:43:40 -0700
Received: by tss0.bpt.sikorsky.com (5.65/DEC-Ultrix/4.3) id AA03927;
          Sun, 22 Oct 1995 10:45:25 -0400
Received: by sun38.sikorsky (5.x/SMI-SVR4) id AA06918;
          Sun, 22 Oct 1995 10:45:51 -0400
Date: Sun, 22 Oct 1995 10:45:51 -0400
From: Dave Rattanni <dave_rattanni@sikorsky.com>
Message-Id: <9510221445.AA06918@sun38.sikorsky>
To: perldb-interest@fugue.com
Subject: DBD::Informix/Solaris 2.4 and ESQLC 7.1


As suggested, I ran test.pl on a local Informix 7.1  SE database
and it ran all tests without a hitch.

Congrats to Alligator, et al!

---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <19842-0@ignite.demon.co.uk>; Mon, 23 Oct 1995 21:31:08 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 23 Oct 95 19:30:05 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa25190;
          23 Oct 95 19:28 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA02231 for perldb-interest-real; Mon, 23 Oct 1995 06:21:38 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id GAA02227 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 06:21:37 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id IAA39718 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 08:23:49 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA26902;
          Mon, 23 Oct 1995 08:23:48 -0500
Message-Id: <9510231323.AA26902@dax.austin.ibm.com>
To: perldb-interest@fugue.com
Subject: What am I doing wrong...got to be something stupid
Date: Mon, 23 Oct 95 08:23:48 -0500


Below is my routine to read a blob from DB2, I seem to be getting
the correct values back in bufsv along with the correct length getting
set in the SV struct.

int
dbd_st_readblob(sth, field, offset, len, destrv, destoffset)
    SV *sth;
    int field;
    long offset;
    long len;
    SV *destrv;
    long destoffset;
{
    D_imp_sth(sth);
    D_imp_dbh_from_sth;
    int retl=0;
    SV *bufsv;
    int rtval=0;
    char *msg;
    
    bufsv = SvRV(destrv);
    sv_setpvn(bufsv,"",0);  /* ensure it's writable string  */
    SvGROW(bufsv, len+destoffset+1);    /* SvGROW doesn't do +1 */

    rtval = SQLGetData(imp_sth->phstmt,field,SQL_C_BINARY,
                    ((void *)SvPVX(bufsv)),len+destoffset,&retl);
    msg = (ERRTYPE(rtval) ? "GetData failed to read blob":"Invalid Handle");
    rtval = check_error(sth,rtval,henv,imp_dbh->hdbc,imp_sth->phstmt,msg);
    EOI(rtval);
    
    SvCUR_set(bufsv, len );
    *SvEND(bufsv) = '\0'; /* consistent with perl sv_setpvn etc */

    return 1;
}

However, where I get back to perl the variable contains nothing but

SCALAR(0x200c8690)SCALAR(0x200c86b4)SCALAR(0x200c869c)SCALAR(0x200c86cc)
SCALAR(0x20022254)SCALAR(0x20022260)SCALAR(0x2002226c)SCALAR(0x20022278)
...
SCALAR(0x20022284)SCALAR(0x20022290)SC

So obviously, I am either not providing the correct value for destrv or
am not returning it correctly...it has to be something truly stupid on
my part.

Any one spot it?

Mike
mhm@austin.ibm.com


MODULE = DBD::DB2    PACKAGE = DBD::DB2::st

void
readblob(sth, field, offset, len, destrv=Nullsv, destoffset=0)
    SV *	sth
    int	field
    long	offset
    long	len
    SV *	destrv
    long	destoffset
    CODE:
    if (!destrv)
	destrv = sv_2mortal(newRV(newSV(0)));
    if (dbd_st_readblob(sth, field, offset, len, destrv, destoffset))
	 ST(0) = destrv;
    else ST(0) = &sv_undef;

------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <23709-0@ignite.demon.co.uk>; Tue, 24 Oct 1995 03:39:13 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 24 Oct 95 01:17:31 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id aa11527;
          24 Oct 95 1:16 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA03191 for perldb-interest-real; Mon, 23 Oct 1995 15:30:06 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from pilot.njin.net (pilot.njin.net [128.6.7.38]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA03187 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 15:30:04 -0700
Received: from localhost (phj@localhost) 
          by pilot.njin.net (8.6.12+bestmx+oldruq+newsunq+grosshack/8.6.12) 
          with ESMTP id SAA22721 for <perldb-interest@fugue.com>;
          Mon, 23 Oct 1995 18:32:20 -0400
Message-Id: <199510232232.SAA22721@pilot.njin.net>
To: perldb-interest@fugue.com
Subject: CGI-Perl-DBI-Oracle problem
Date: Mon, 23 Oct 1995 18:32:18 -0400
From: "Patricia H. Ju" <phj@pilot.njin.net>


Hi all,

(Read subject :)  I have a perl script that runs ok from the command
line (I get a lot of:

	ERROR EVENT: DBI::db=HASH(0x158630)->DBI::default_handler:
        	12223 ORA-12223: TNS:internal limit restriction exceeded (DBD: login
	failed)
 	at /usr/local/lib/perl5/DBD/Oracle.pm line 99
	Can't call method "prepare" without a package or object reference at
	/usr/local/lib/perl5/Oraperl.pm line 90.


errors, but once in a while it doesn't spit up and behaves nicely.

However, when running this script via a browser (Netscape), I get:

	ORACLE_HOME set to /opt/oracle
	test at /home/patricia/public_html/fibbs/bin/test.cgi line 5.
	ERROR EVENT: DBI::db=HASH(0x157dd0)->DBI::default_handler:
        	1034 ORA-01034: ORACLE not available (DBD: login failed)
 	at /usr/local/lib/perl5/DBD/Oracle.pm line 99
	Can't call method "prepare" without a package or object reference at
	/usr/local/lib/perl5/Oraperl.pm line 90.


and it NEVER works.

Is there some environmental variable I must make the perl script set
or something that's keeping the script from ever successfully logging
into the Oracle database when using CGI ?

(Any DBA's who can help me stop this annoying login failure problem
would be much appreciated, too.  I'm the only person who's using this
database and I should *not* be constantly getting login errors!)


Thanks.


Patricia
.............
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <23709-2@ignite.demon.co.uk>; Tue, 24 Oct 1995 03:39:35 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 24 Oct 95 01:18:41 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id aa11730;
          24 Oct 95 1:17 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA03221 for perldb-interest-real; Mon, 23 Oct 1995 15:35:41 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from pilot.njin.net (pilot.njin.net [128.6.7.38]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA03217 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 15:35:39 -0700
Received: from localhost (phj@localhost) 
          by pilot.njin.net (8.6.12+bestmx+oldruq+newsunq+grosshack/8.6.12) 
          with ESMTP id SAA22954; Mon, 23 Oct 1995 18:37:53 -0400
Message-Id: <199510232237.SAA22954@pilot.njin.net>
To: perldb-interest@fugue.com
cc: phj@pilot.njin.net
Subject: Re: CGI-Perl-DBI-Oracle problem
Date: Mon, 23 Oct 1995 18:37:52 -0400
From: "Patricia H. Ju" <phj@pilot.njin.net>


Oops.  5 seconds after sending my help plea, I realized the problem.
Logged in as me, I have my ORACLE_SID variable set so I don't need
to specify my database in the script.  But when I run it as a CGI
script, there's no default database.

Points as to why I'm getting those TNS: internal limit reached
errors would still be useful, though.  (I imagine it's some kind of
lack-of-logging off or something; does Perl or DBD automatically
logoff or does one have to explicitly call ora_logoff ?)


Thanks (:


Patricia

...........
"Men have forgotten this truth," said the fox.  "But you must not forget it.
You become responsible, forever, for what you have tamed . . ."
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <24893-32@ignite.demon.co.uk>; Tue, 24 Oct 1995 07:10:52 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 24 Oct 95 04:42:42 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id ad17255;
          24 Oct 95 4:41 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <29636-0@frigate.doc.ic.ac.uk>; Mon, 23 Oct 1995 10:30:12 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id BAA00461 for perldb-interest-real; Mon, 23 Oct 1995 01:01:17 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id BAA00457 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 01:01:15 -0700
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id HAA25339; Mon, 23 Oct 1995 07:58:53 +0100
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199510230658.HAA25339@fruitbat.mcqueen.com>
Subject: Re: DBD::Informix
To: Dave Rattanni <dave_rattanni@sikorsky.com>
Date: Mon, 23 Oct 1995 07:58:52 +0100 (BST)
Cc: perldb-interest@fugue.com, Tim.Bunce@ig.co.uk
In-Reply-To: <9510221500.AA06926@sun38.sikorsky> from "Dave Rattanni" at Oct 22, 95 11:00:03 am
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 558


> I posted mail to the mailing list, but I forgot
> to CC you. Anyway, I ran test.pl as suggested
> and it ran with no errors on my 7.1 SE database.
> 
> Well done.

Thanks Dave. Your help has been completely invaluable!

I'll start adding more functionality into the driver this week and keep
the list up to do date with progress.

Similarly, progress will be indicated on the pages at:

	http://www.hermetica.com/technologia/DBI

Regards.

> Dave

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <24893-46@ignite.demon.co.uk>; Tue, 24 Oct 1995 07:12:38 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 24 Oct 95 04:44:08 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id am17255;
          24 Oct 95 4:43 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <08709-0@frigate.doc.ic.ac.uk>; Mon, 23 Oct 1995 17:03:48 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id FAA02116 for perldb-interest-real; Mon, 23 Oct 1995 05:04:29 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id FAA02112 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 05:04:27 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id HAA21247 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 07:06:44 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA24130;
          Mon, 23 Oct 1995 07:06:43 -0500
Message-Id: <9510231206.AA24130@dax.austin.ibm.com>
To: perldb-interest@fugue.com
Subject: Re: Overriding malloc/free on AIX 3.2.5?
In-Reply-To: Your message of Fri, 20 Oct 95 14:50:04 +0100. <9510201507.ap05588@relay-3.mail.demon.net>
Date: Mon, 23 Oct 95 07:06:43 -0500


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|>> From: mhm@austin.ibm.com
|>> 
|>> |> >       /* allocate room for copy of statement with spare capacity	*/
|>> |> >       /* for editing ':1' into ':p1' so we can use obndrv.	*/
|>> |> > !     imp_sth->statement = (char*)safemalloc(strlen(statement) + 
|>> |> > !                                (DBIc_NUM_PARAMS(imp_sth)*4));
|>> |> 
|>> |> Er, I don't think so.
|>> |> 
|>> |> How is DBIc_NUM_PARAMS set before you've parsed the string ?
|>> 
|>> At the point in time where DBD::Oracle calls oopen (dbdimp.c:
|>> db_st_prepare line 300 in version 0.25) DBD::DB2 has already 
|>> parsed the statement and the number of parameters is available 
|>> from the engine.
|>
|>So what is dbd_preparse() doing? Why not get the info from the DB2 API?

Setting up the imp_sth->bind_names hash.  Although, with this release 
of DB2 it is a little bit of overkill.  My basic tenant has been to
get as much of DBD::DB2 running with as little mutation to the reference
implementation as possible.  Conceivably, I could do away with the
entire imp_sth->bind_names hash as everything is '?' in DB2, but then
I would have significantly more changes to track during this alpha
stage of DBI/DBD.

I'll probable continue along the same path until the references 
(DBI/DBD::Oracle) go GA, then I'll look at things like above where
I can make a significant performance enhancement by droping lots
of redundant code.

|>I presume DB2 use '?' as the placeholder.

Currently, '?' is the only acceptable placeholder, but I expect that
to change if what I am hearing about the X/Open CLI standard is true
(haven't gotten my copy yet :-(  )

Mike
mhm@austin.ibm.com
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <24893-56@ignite.demon.co.uk>; Tue, 24 Oct 1995 07:13:57 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 24 Oct 95 05:50:53 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id aa03832;
          24 Oct 95 5:49 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id VAA04400 for perldb-interest-real; Mon, 23 Oct 1995 21:42:45 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-1.mail.demon.net (relay-1.mail.demon.net [158.152.1.140]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id VAA04396 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 21:42:32 -0700
Received: by relay-1.mail.demon.net id ao16465; 23 Oct 95 19:36 GMT
Received: from relay-4.mail.demon.net by relay-1.mail.demon.net id ac12830;
          23 Oct 95 18:29 GMT
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ad28410;
          23 Oct 95 13:47 GMT
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id al28074;
          23 Oct 95 13:46 GMT
Received: from ig.co.uk by ignite.demon.co.uk id <14433-0@ignite.demon.co.uk>;
          Mon, 23 Oct 1995 14:23:09 +0100
To: cayouett@bnr.ca
Subject: Re: status of sybase perl?
Cc: perldb-interest@fugue.com
Date: Mon, 23 Oct 1995 14:23:09 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510231346.al28074@relay-3.mail.demon.net>


> From: "daniel (d.g.) cayouette" <cayouett@bnr.ca>
> 
>   I guess this means that no-one is currently working on a sybase module.
> 
> Daniel
> 
> In message "Re: status of sybase perl?", you write:
> 
> >> From: "daniel (d.g.) cayouette" <cayouett@bnr.ca>
> >> 
> >>   What is the status of perl for oracle, ingres and sybase?
> >
> >Check out
> >
> >       http://www.hermetica.com/technologia/DBI/DBD/index.html

There has been talk but no action so far (I think).

Sybase is a special case since it has a well established Perl5 Module
already:

Sybase::
::DBlib        bdcO  Sybase DBlibrary interface                   MEWP
::Sybperl      bdcf  sybperl 1.0xx compatibility module           MEWP
::CTlib        cdcO  Sybase CTlibrary intgerface                  MEWP

  MEWP   Michael Peppler <mpeppler@itf.ch>

It seems sensible to write a DBD::Sybase that is actually an interface
layer to Sybase::DBlib.

Tim.
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <26572-0@ignite.demon.co.uk>; Tue, 24 Oct 1995 08:12:55 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 24 Oct 95 07:12:23 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id aa28262;
          24 Oct 95 7:11 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id XAA04643 for perldb-interest-real; Mon, 23 Oct 1995 23:11:53 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-1.mail.demon.net (relay-1.mail.demon.net [158.152.1.140]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id XAA04639 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 23:11:48 -0700
Received: from post.demon.co.uk by relay-1.mail.demon.net id ce00662;
          23 Oct 95 23:47 GMT
Received: from relay-1.mail.demon.net by relay-3.mail.demon.net id aa28733;
          23 Oct 95 20:44 GMT
Received: from ig.co.uk by ignite.demon.co.uk id <19962-0@ignite.demon.co.uk>;
          Mon, 23 Oct 1995 21:44:08 +0100
To: perldb-interest@fugue.com, mhm@austin.ibm.com
Subject: Re: What am I doing wrong...got to be something stupid
Date: Mon, 23 Oct 1995 21:44:08 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510232044.aa28733@relay-3.mail.demon.net>


> From: mhm@austin.ibm.com
> 
> Below is my routine to read a blob from DB2, I seem to be getting
> the correct values back in bufsv along with the correct length getting
> set in the SV struct.

Could you post the portion of the application that does the select,
fetch and print?

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <27113-5@ignite.demon.co.uk>; Tue, 24 Oct 1995 10:36:06 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 24 Oct 95 08:39:38 GMT
Received: from relay-2.mail.demon.net by punt-1.mail.demon.net id ab19497;
          24 Oct 95 8:38 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <14412-0@frigate.doc.ic.ac.uk>; Mon, 23 Oct 1995 21:32:54 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA02694 for perldb-interest-real; Mon, 23 Oct 1995 09:43:38 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id JAA02690 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 09:43:34 -0700
Received: by relay-4.mail.demon.net id g.aa06841; 23 Oct 95 15:46 GMT
Received: from post.demon.co.uk by relay-4.mail.demon.net id g.ag02324;
          23 Oct 95 14:43 GMT
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id aa08959;
          23 Oct 95 14:42 GMT
Received: from ig.co.uk by ignite.demon.co.uk id <15211-0@ignite.demon.co.uk>;
          Mon, 23 Oct 1995 15:42:06 +0100
To: perldb-interest@fugue.com, mhm@austin.ibm.com
Subject: Re: Anyone have successfully using blobs in DBD::Oracle?
Date: Mon, 23 Oct 1995 15:42:06 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510231442.aa08959@relay-3.mail.demon.net>


> From: mhm@austin.ibm.com
> 
> Just curious, I'm having problems getting the data from readblob back
> into my perl script variable under DB2.  Thus, the obvious question has
> anyone tried it (readblob under Oracle)?

Yes. I think at least Alligator Descartes uses it.

Tim.
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <27113-28@ignite.demon.co.uk>; Tue, 24 Oct 1995 10:37:36 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 24 Oct 95 08:42:19 GMT
Received: from relay-2.mail.demon.net by punt-1.mail.demon.net id an19497;
          24 Oct 95 8:41 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <20465-0@frigate.doc.ic.ac.uk>; Tue, 24 Oct 1995 01:37:17 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA03416 for perldb-interest-real; Mon, 23 Oct 1995 16:25:35 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from kjahds.com (root@ringotty10.jvnc.net [192.67.236.210]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id QAA03412 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 16:25:29 -0700
Received: by kjahds.com (Linux Smail3.1.28.1 #1) id m0t7WDz-0000XMC;
          Mon, 23 Oct 95 19:24 EDT
Date: Mon, 23 Oct 1995 19:24:11 -0400 (EDT)
From: Kenneth Albanowski <kjahds@kjahds.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
cc: lwall@scalpel.netlabs.com, perldb-interest@fugue.com, 
    perl5-porters@africa.nicoh.com
Subject: Re: perl bug: array of undefs is falsely false
In-Reply-To: <9510232242.aa23945@relay-3.mail.demon.net>
Message-ID: <Pine.LNX.3.91.951023192159.1639A-100000@kjahds.com>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Mon, 23 Oct 1995, Tim Bunce wrote:

> Was anything finalised on this issue?
> 
> What behaviour could we reasonably expect in 5.002? (and/or later?)

As a bizzare example, I just happened to write this:

	@a=(1,2,3,4,0,2,2,0,0,0);
	while(my($a,$b)=splice(@a,0,2)) {print "$a|$b\n"}

Unfortunately, it doesn't work.

This, however, does:

	@a=(1,2,3,4,0,2,2,0,0,0);
	my($a,$b);
	while(($a,$b)=splice(@a,0,2)) {print "$a|$b\n"}'


I'd say reasonable behaviour is the latter working properly. Exemplarly
behaviour would be the first working properly. 

> Tim.

--
Kenneth Albanowski (kjahds@kjahds.com, CIS: 70705,126)


---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <04905-2@ignite.demon.co.uk>; Tue, 24 Oct 1995 19:26:12 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 24 Oct 95 18:19:50 GMT
Received: from relay-2.mail.demon.net by punt-1.mail.demon.net id aa03734;
          24 Oct 95 18:18 GMT
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa27195;
          24 Oct 95 18:17 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA06773 for perldb-interest-real; Tue, 24 Oct 1995 07:51:41 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from hub.ucsb.edu (hub.ucsb.edu [128.111.24.40]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA06769 
          for <perldb-interest@fugue.com>; Tue, 24 Oct 1995 07:51:37 -0700
Received: from dokoka (dokoka.ucsb.edu) by hub.ucsb.edu;
          id AA08498 sendmail 4.1/UCSB-2.1-sun Tue, 24 Oct 95 07:53:46 PDT 
          for perldb-interest@fugue.com
Received: from dokoka.ucsb.edu by dokoka 
          via ESMTP (940816.SGI.8.6.9/940406.SGIv2) id HAA03758;
          Tue, 24 Oct 1995 07:53:38 -0700
Message-Id: <199510241453.HAA03758@dokoka>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: cayouett@bnr.ca, perldb-interest@fugue.com
Subject: Re: status of sybase perl?
Reply-To: "Alan K. Stebbens" <aks@hub.ucsb.edu>
In-Reply-To: Your message of Mon, 23 Oct 1995 14:23:09 PDT. <9510231346.al28074@relay-3.mail.demon.net>
Date: Tue, 24 Oct 1995 07:53:36 -0700
From: Alan Stebbens <aks@dokoka.ucsb.edu>

> Sybase is a special case since it has a well established Perl5 Module
> already:
> 
> Sybase::
> ::DBlib        bdcO  Sybase DBlibrary interface                   MEWP
> ::Sybperl      bdcf  sybperl 1.0xx compatibility module           MEWP
> ::CTlib        cdcO  Sybase CTlibrary intgerface                  MEWP
> 
>   MEWP   Michael Peppler <mpeppler@itf.ch>
> 
> It seems sensible to write a DBD::Sybase that is actually an interface
> layer to Sybase::DBlib.

Well, after looking over Sybase::DBlib and Sybase::CTlib, it is less
obvious which should be considered the primary interface if you wish to
use cursors.  If cursors are not relevant to your application, then use
DBlib.

It is true that Sybase::DBlib does handle the majority of the database
functions, but Sybase::CTlib seems to handle cursors, while
Sybase::DBlib currently does not, although the C version of DBlib (from
Sybase) does have cursor support.

I would be glad to discover that I am confused and/or mistaken.
Otherwise, perhaps the Sybase::DBlib needs an update to System 10.x?

Alan
---+++---
Received: from punt2.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <08354-12@ignite.demon.co.uk>; Tue, 24 Oct 1995 22:58:44 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 24 Oct 95 21:27:17 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id aa09811;
          24 Oct 95 21:24 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA07606 for perldb-interest-real; Tue, 24 Oct 1995 11:28:35 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-2.mail.demon.net (disperse.demon.co.uk [158.152.1.77]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id LAA07602 
          for <perldb-interest@fugue.com>; Tue, 24 Oct 1995 11:28:30 -0700
Received: from post.demon.co.uk by relay-2.mail.demon.net id ab04267;
          24 Oct 95 18:30 GMT
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id aa12690;
          24 Oct 95 18:29 GMT
Received: from ig.co.uk by ignite.demon.co.uk id <05092-0@ignite.demon.co.uk>;
          Tue, 24 Oct 1995 19:28:30 +0100
To: mpeppler@itf.ch
Subject: Re: status of sybase perl?
Cc: perldb-interest@fugue.com, aks@hub.ucsb.edu
Date: Tue, 24 Oct 1995 19:28:30 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510241829.aa12690@relay-3.mail.demon.net>

I've forwarded this to Michael Peppler since I know little about Sybase.

----- Begin Included Message -----

From: Alan Stebbens <aks@dokoka.ucsb.edu>

> Sybase is a special case since it has a well established Perl5 Module
> already:
> 
> Sybase::
> ::DBlib        bdcO  Sybase DBlibrary interface                   MEWP
> ::Sybperl      bdcf  sybperl 1.0xx compatibility module           MEWP
> ::CTlib        cdcO  Sybase CTlibrary intgerface                  MEWP
> 
>   MEWP   Michael Peppler <mpeppler@itf.ch>
> 
> It seems sensible to write a DBD::Sybase that is actually an interface
> layer to Sybase::DBlib.

Well, after looking over Sybase::DBlib and Sybase::CTlib, it is less
obvious which should be considered the primary interface if you wish to
use cursors.  If cursors are not relevant to your application, then use
DBlib.

It is true that Sybase::DBlib does handle the majority of the database
functions, but Sybase::CTlib seems to handle cursors, while
Sybase::DBlib currently does not, although the C version of DBlib (from
Sybase) does have cursor support.

I would be glad to discover that I am confused and/or mistaken.
Otherwise, perhaps the Sybase::DBlib needs an update to System 10.x?

Alan

----- End Included Message -----

---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <11740-0@ignite.demon.co.uk>; Wed, 25 Oct 1995 08:06:52 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 25 Oct 95 06:40:42 GMT
Received: from relay-2.mail.demon.net by punt-1.mail.demon.net id aa06738;
          25 Oct 95 6:40 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <20996-0@frigate.doc.ic.ac.uk>; Tue, 24 Oct 1995 01:55:05 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA03258 for perldb-interest-real; Mon, 23 Oct 1995 15:46:04 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-2.mail.demon.net (disperse.demon.co.uk [158.152.1.77]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA03254 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 15:45:59 -0700
Received: by relay-2.mail.demon.net id aa23344; 23 Oct 95 22:47 GMT
Received: from post.demon.co.uk by relay-2.mail.demon.net id ae23002;
          23 Oct 95 22:44 GMT
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id aa23945;
          23 Oct 95 22:42 GMT
Received: from ig.co.uk by ignite.demon.co.uk id <19999-0@ignite.demon.co.uk>;
          Mon, 23 Oct 1995 21:51:21 +0100
To: lwall@scalpel.netlabs.com
Subject: Re: perl bug: array of undefs is falsely false
Cc: perldb-interest@fugue.com, perl5-porters@nicoh.com
Date: Mon, 23 Oct 1995 21:51:21 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510232242.aa23945@relay-3.mail.demon.net>

Was anything finalised on this issue?

What behaviour could we reasonably expect in 5.002? (and/or later?)

Tim.

> From: Larry Wall <lwall@scalpel.netlabs.com>
> 
> : > % Excerpts from the mail message of Mark Jefferys:
> : 
> : > % )   2.  Make list-assignments return undef for zero objects assigned,
> : > % )       and SV_NO for undef-only assignments.  This allows:
> : > % )
> : > % )          if (defined(@arr = func())) ...
> : 
> : > % )   3.  Make list-assignments normal, but have list-slices cut off
> : > % )       trailing undefs, so
> : > % )          (getpwent)[0,2]
> : > % )       returns an empty list.
> : > % )          A.  This will cause code which relies on list-slices
> : > % )              returning a fixed number of items to break.  Sub calls
> : > % )              are a likely source of problems:
> : > % )                 func1((func2())[1,3], ++$cnt);
> : > % )                 # Expects $cnt in 3rd place, not last.
> : 
> : > % )   7.  Make a list-slice of an empty list be empty.  This is an example
> : > % )       of minimal intervention:  make sure empty lists stay empty, and
> : > % )       thus false, but otherwise acts normally.  This would be somewhat
> : > % )       easier to implement for tied arrays (and hashes).
> : > % 
> : > % This raises the problem of (A) again.
> : > 
> : > Granted, although far less often than the others.  I like this one
> : > mostly because the exceptions I can think of are more contrived than
> : > for the others, and pretty easy to work around:
> : > 
> : >    @arr ? @arr[@idx] : (undef) x @idx
> : >
> : > % )  I kinda like #2 or #7 at the moment; [...]
> 
> I think that as we move into using prototypes, func1() above would
> probably be declared as
> 
>     sub func1 ($$$);
> 
> so you wouldn't be able to say
> 
>     func1((func2())[1,3], ++$cnt);
> 
> in any event.  (Unless I did something Really Strange with argument
> processing to make it look inside a list slice.)
> 
> : So, to summarise the situation (and check that _I_ understand it :) ...
> : 
> :  - Currently evaluation in scalar context of the assignment of a list
> :    of undefs is regarded as false. 
> : 
> :  - It seems widely agreed that this is not ideal.
> : 
> :  - This was added to cater for: while (($user, $uid) = (getpwent)[0,2]) { }
> : 
> :  - It seems widely agreed that this is useful.
> : 
> : I also like #7 "Make a list-slice of an empty list be empty".
> : Feels kind'a like null-propagation in SQL expressions.
> 
> A little, though I think Perl's notion is a little more fail-soft.
> 
> : #2 seems too subtle for people to remember to use in their code.
> : Especially where they don't expect to get nulls but might in error
> : conditions.
> : 
> : Does anyone have and hard objections or better alternatives?
> : 
> : Larry, do you concur?
> 
> Hail the concurring hero, eh?
> 
> [sorry]
> 
> I'm leaning toward #7 too.  Especially since it makes array assignments
> a little faster...
> 
> On the other hand, doing something a bit #8ish wouldn't be too difficult.
> It would be relatively trivial to inform the OP_LSLICE that it was on the
> right side of an OP_AASSIGN.  I don't think we'd even have to worry about
> whether the assignment was in a scalar context, though even that wouldn't
> be difficult to do.
> 
> Larry
> 
---+++---
Received: from punt.demon.co.uk by ignite.demon.co.uk with SMTP (PP) 
          id <13500-2@ignite.demon.co.uk>; Wed, 25 Oct 1995 12:44:29 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 25 Oct 95 11:10:29 GMT
Received: from relay-2.mail.demon.net by punt-1.mail.demon.net id aa09282;
          25 Oct 95 11:09 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id AAA08765 for perldb-interest-real; Wed, 25 Oct 1995 00:50:31 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from chsun.eunet.ch (chsun.eunet.ch [146.228.10.15]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id AAA08761 
          for <perldb-interest@fugue.com>; Wed, 25 Oct 1995 00:50:24 -0700
Received: from itf1.UUCP by chsun.eunet.ch (8.6.10/1.34) id IAA13536;
          Wed, 25 Oct 1995 08:52:36 +0100
Received: from kiruna.itf.ch by itf.ch (4.1/SMI-4.1) id AA00443;
          Wed, 25 Oct 95 08:27:14 +0100
Date: Wed, 25 Oct 95 08:27:14 +0100
From: Michael Peppler <mpeppler@itf.ch>
Message-Id: <9510250727.AA00443@itf.ch>
To: perldb-interest@fugue.com
Subject: Re: status of sybase perl?
Cc: aks@hub.ucsb.edu

[ Note: I was unfortunately removed from the perldb-interest list when
the address changed, so I haven't followed this discussion from the
begining...]


From: Alan Stebbens <aks@dokoka.ucsb.edu>
> 
> > Sybase is a special case since it has a well established Perl5 Module
> > already:
> > 
> > Sybase::
> > ::DBlib        bdcO  Sybase DBlibrary interface                   MEWP
> > ::Sybperl      bdcf  sybperl 1.0xx compatibility module           MEWP
> > ::CTlib        cdcO  Sybase CTlibrary intgerface                  MEWP
> > 
> >   MEWP   Michael Peppler <mpeppler@itf.ch>

A quick recap of the situation of the Sybase modules:

::DBlib and ::Sybperl will be taken out of beta (full 2.0 release) in a
couple of days. The modules are stable, and I have refrained from
adding new functionality to them.

::CTlib is quite advanced, and includes many features not found in the
other modules, such as native handling of special datatypes such as
DATETIME, MONEY and NUMERIC/DECIMAL, using operator overloading where
possible.

::CTlib is where I will be concentrating my developpment efforts (for
reasons that will probably become clear in a couple of weeks). The API
is much cleaner than DBlib, and this is where Sybase will be enhancing
their functionality as well.

> > 
> > It seems sensible to write a DBD::Sybase that is actually an interface
> > layer to Sybase::DBlib.
> 
> Well, after looking over Sybase::DBlib and Sybase::CTlib, it is less
> obvious which should be considered the primary interface if you wish to
> use cursors.  If cursors are not relevant to your application, then use
> DBlib.

I would write DBD::Sybase on top of Sybase::CTlib. It's bound to be
quite a bit simpler.
 
> It is true that Sybase::DBlib does handle the majority of the database
> functions, but Sybase::CTlib seems to handle cursors, while
> Sybase::DBlib currently does not, although the C version of DBlib (from
> Sybase) does have cursor support.
> 
> I would be glad to discover that I am confused and/or mistaken.
> Otherwise, perhaps the Sybase::DBlib needs an update to System 10.x?

Sybase::DBlib already includes 90+ API calls (out of a total of over
300). CTlib already offers better functionality (with the exception of
the BCP API) using only 16 API calls...

Michael
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <08754-1@oink>;
          Wed, 25 Oct 1995 17:55:11 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 25 Oct 95 16:44:53 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id aa14067;
          25 Oct 95 16:44 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA10523 for perldb-interest-real; Wed, 25 Oct 1995 06:20:36 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id GAA10519 
          for <perldb-interest@fugue.com>; Wed, 25 Oct 1995 06:20:34 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id IAA69819 
          for <perldb-interest@fugue.com>; Wed, 25 Oct 1995 08:22:53 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA29726;
          Wed, 25 Oct 1995 08:22:52 -0500
Message-Id: <9510251322.AA29726@dax.austin.ibm.com>
To: perldb-interest@fugue.com
Subject: Re: What am I doing wrong...got to be something stupid
Date: Wed, 25 Oct 95 08:22:51 -0500


Sorry about the delay.  I lost permissions to one directory in my mail
hierarchy and as a result have not seen anything coming from
perldb-interest for a few days.


Tim Bunce <Tim.Bunce@ig.co.uk> writes:
|> > From: mhm@austin.ibm.com
|> > 
|> > Below is my routine to read a blob from DB2, I seem to be getting
|> > the correct values back in bufsv along with the correct length getting
|> > set in the SV struct.
|> 
|> Could you post the portion of the application that does the select,
|> fetch and print?
|> 

Here is a small test case.

Mike
mhm@austin.ibm.com


#!/usr/local/bin/perl

use DBI;
use DB2::Constants;
use DBD::DB2 qw($attrib_char );

$DBI::dbi_debug=2;

$dbh = DBI->connect('sample');

$stmt = "select empno, photo_format from emp_photo where photo_format ='gif';"; 
$sth = $dbh->prepare($stmt);

$sth->execute();

while ((@row = $sth->fetchrow())) {
	open(OUTPUT,">$row[0].$row[1]") || die "Can't open $row[0].$row[1]"; 
	$stmt = "select empno,picture from emp_photo where empno = ?;";
    $pict_sth = $dbh->prepare($stmt);
	$pict_sth->bind_param(1,$row[0],$attrib_char);
	$pict_sth->execute();
	$pict_sth->fetch();

    while ($buff = $pict_sth->readblob(1,0,4096)) { 
		print OUTPUT $buff;
		$buff = "";
	}
	close(OUTPUT);
}
------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <10121-0@oink>;
          Wed, 25 Oct 1995 18:59:38 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 25 Oct 95 17:57:58 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id aa20481;
          25 Oct 95 17:57 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA10598 for perldb-interest-real; Wed, 25 Oct 1995 07:16:52 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from hatch.sonalysts.com (hatch.sonalysts.com [198.6.208.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id HAA10594 
          for <perldb-interest@fugue.com>; Wed, 25 Oct 1995 07:16:50 -0700
Received: by hatch.sonalysts.com (1.37.109.16/16.2) id AA157200636;
          Wed, 25 Oct 1995 10:17:16 -0400
Date: Wed, 25 Oct 1995 10:17:16 -0400 (EDT)
From: Matt Stahl <mgstahl@sonalysts.com>
To: jfox@slb.com
Cc: ntperl@mail.hip.com, perldb-interest@fugue.com
Subject: Re: [?] NTPerl5 Configure
In-Reply-To: <9510242113.AA09707@jade>
Message-Id: <Pine.HPP.3.91.951025094748.14484B-100000@hatch.sonalysts.com>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Tue, 24 Oct 1995 fox@austin.asc.slb.com wrote:

> 
> > Date: Tue, 24 Oct 1995 16:35:02 -0400 (EDT)
> > From: Matt Stahl <mgstahl@sonalysts.com>
> > Precedence: bulk
> > 
> > 	I recently downloaded the latest NTPerl5 for i386 from
> > ntperl.hip.com (ntperl.5.091.i86.zip). Looking at the configure.pm module,
> > I noticed all the harware specific info that was pertinent to the machine
> > the src was compiled on, which of course, doesn't match my machine.
> > 	I also noticed that there is no *configure* script (like there is
> > in the 5.001m UNIX version).
> > 	I'd like to be able to make some extensions (such as
> > DBI/DBD::Oracle), but they use ExtUtils::MakeMaker (also not a part of the
> > NTperl5 port, but will *hopefully* work as is), which uses Configure.pm.
> > 	If I make perl from the src, will Configure.pm get updated? This
> > is an option only if I get my hands on the Microsoft SDK (since the Perl
> > Makefile needs some SDK libs...)
> > 	Has anyone already tackled these problems?
> > 	
> > Thanks,
> > Matt
> 
> Hi, Matt=
> 
> I had no luck with a quick hack attack at geting DBI/DBD::Oracle to
> work on NT (because of the missing MakeMaker and, worse, lack of
> support for dynamic loading.  I didn't have much luck with my quick
> attempt to make DBI/DBD static extensions.  As this is not the primary
> focus of my work, I didn't want to spend too much time on it.

It would be nice if NTperl included MakeMaker, Configure, et al. It would 
certainly make all our jobs a little easier. (Hint, hint to hip.com) 

> 
> I can, however, build perl from the source on NT (Visual-C++ does it
> pretty much by itself).  If you have some experiments that fail for
> lack of SDK libs, perhaps I can try them for you "in my spare time."
> 
> =Jim Fox

Thanks Jim! I'll continue my attempts (also in my *spare time*), and will 
keep your offer in mind.
--Matt Stahl



---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <11820-0@oink>;
          Wed, 25 Oct 1995 20:52:31 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 25 Oct 95 19:44:58 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id aa17377;
          25 Oct 95 19:44 GMT
Received: from [204.254.239.2] by relay-1.mail.demon.net id aa23044;
          25 Oct 95 19:43 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA11109 for perldb-interest-real; Wed, 25 Oct 1995 10:45:30 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA11105 
          for <perldb-interest@fugue.com>; Wed, 25 Oct 1995 10:45:28 -0700
Received: by gw.home.vix.com id AA09739; Wed, 25 Oct 95 10:47:46 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id MAA26022; Wed, 25 Oct 1995 12:47:44 -0500
Date: Wed, 25 Oct 1995 12:47:44 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: DBI perl <perldb-interest@vix.com>
Subject: I think I have fetch almost working..
Message-Id: <Pine.SUN.3.91.951025124330.25783A-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII


I just need to verify my test perl code is correct.

...Assume datbase connected.
$cursor = $dbh->prepare( "SELECT * FROM table1" );

$cursor->execute;

while ( ($name,$age) = $cursor->fetchrow ) {
    print "Field: $name --> $age\n";
  }

$cursor->finish;

I only get name returned currently.

I need to know if I've done the Perl code right.  If so I know it's in my
DBD.

Thanks.

---
Closer we come to success..The more problems that occur.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <12007-0@oink>;
          Wed, 25 Oct 1995 21:13:31 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 25 Oct 95 20:10:57 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id aa01330;
          25 Oct 95 20:10 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa24099;
          25 Oct 95 20:09 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA11203 for perldb-interest-real; Wed, 25 Oct 1995 11:19:04 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-2.mail.demon.net (disperse.demon.co.uk [158.152.1.77]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id LAA11199 
          for <perldb-interest@fugue.com>; Wed, 25 Oct 1995 11:18:57 -0700
Received: from post.demon.co.uk by relay-2.mail.demon.net id ad27407;
          25 Oct 95 18:13 GMT
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id aa26359;
          25 Oct 95 18:13 GMT
Received: from toad by oink with SMTP (PP) id <10247-0@oink>;
          Wed, 25 Oct 1995 19:11:50 +0100
Received: by toad (5.0/SMI-SVR4) id AA19547; Wed, 25 Oct 1995 19:11:27 +0000
Date: Wed, 25 Oct 1995 19:11:27 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9510251811.AA19547@toad>
To: jfox@slb.com, mgstahl@sonalysts.com
Subject: Re: [?] NTPerl5 Configure
Cc: ntperl@mail.hip.com, perldb-interest@fugue.com, 
    makemaker@franz.ww.tu-berlin.de
X-Sun-Charset: US-ASCII
content-length: 974
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Matt Stahl <mgstahl@sonalysts.com>
> 
> > I had no luck with a quick hack attack at geting DBI/DBD::Oracle to
> > work on NT (because of the missing MakeMaker and, worse, lack of
> > support for dynamic loading.  I didn't have much luck with my quick
> > attempt to make DBI/DBD static extensions.  As this is not the primary
> > focus of my work, I didn't want to spend too much time on it.
> 
> It would be nice if NTperl included MakeMaker, Configure, et al. It would 
> certainly make all our jobs a little easier. (Hint, hint to hip.com) 

MakeMaker is *vital* to any useful Perl port. Period.

A new much-enhanced MakeMaker (5.00) is about to me released which
includes improved support for OS/2. That should be a useful stepping
stone for NT porters.

Anyone interested in working on or with MakeMaker should subscribe
to the mailing list via makemaker-request@franz.ww.tu-berlin.de.
I urge the NT porters to join. You'll find us very willing to help.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15516-25@oink>;
          Thu, 26 Oct 1995 07:09:13 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 25 Oct 95 23:27:52 GMT
Received: from relay-2.mail.demon.net by punt-1.mail.demon.net id aa14711;
          25 Oct 95 23:26 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA11993 for perldb-interest-real; Wed, 25 Oct 1995 15:10:08 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-2.mail.demon.net (disperse.demon.co.uk [158.152.1.77]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA11986 
          for <perldb-interest@fugue.com>; Wed, 25 Oct 1995 15:09:59 -0700
Received: from post.demon.co.uk by relay-2.mail.demon.net id ac12058;
          25 Oct 95 22:06 GMT
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id aa22533;
          25 Oct 95 22:06 GMT
Received: from toad by oink with SMTP (PP) id <14049-0@oink>;
          Wed, 25 Oct 1995 23:05:40 +0100
Received: by toad (5.0/SMI-SVR4) id AA19753; Wed, 25 Oct 1995 23:05:15 +0000
Date: Wed, 25 Oct 1995 23:05:15 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9510252205.AA19753@toad>
To: perldb-interest@fugue.com, mhm@austin.ibm.com
Subject: Re: What am I doing wrong...got to be something stupid
Cc: descarte@hermetica.com
X-Sun-Charset: US-ASCII
content-length: 1208
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk> writes:
> |> > From: mhm@austin.ibm.com
> |> > 
> |> > Below is my routine to read a blob from DB2, I seem to be getting
> |> > the correct values back in bufsv along with the correct length getting
> |> > set in the SV struct.
> |> 
> |> Could you post the portion of the application that does the select,
> |> fetch and print?
> |> 
> 
> Here is a small test case.
> 
>     while ($buff = $pict_sth->readblob(1,0,4096)) { 
> 		print OUTPUT $buff;
> 		$buff = "";
> 	}

Ah, so your getting
SCALAR(0x200c8690)SCALAR(0x200c86b4)SCALAR(0x200c869c)SCALAR(0x200c86cc)
was actually one 'SCALAR(0x200c86b4)' per fetch. That makes more sense.

It means that you're returning a reference to a scalar. That points me
to this code in the xs file:

    if (!destrv)
	destrv = sv_2mortal(newRV(newSV(0)));
    if (dbd_st_readblob(sth, field, offset, len, destrv, destoffset))
	 ST(0) = destrv;      <===
    else ST(0) = &sv_undef;

and I now see what's wrong. Make this change and let me know how it goes:

-	 ST(0) = destrv;
+	 ST(0) = SvRV(destrv);

Alligator, why didn't this affect you? Did you use the readblob(..., \$dest)
mechanism instead?

Tim.

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <15515-6@oink>;
          Thu, 26 Oct 1995 07:06:28 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 25 Oct 95 23:21:41 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id aa09388;
          25 Oct 95 23:20 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA11868 for perldb-interest-real; Wed, 25 Oct 1995 14:46:06 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA11864 
          for <perldb-interest@fugue.com>; Wed, 25 Oct 1995 14:46:05 -0700
Received: by gw.home.vix.com id AA28747; Wed, 25 Oct 95 14:48:24 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from sunspot.filoli.com (root@sunspot.filoli.com [204.162.1.17]) 
          by filoli.filoli.com (8.6.10/8.6.9) with ESMTP id OAA28225;
          Wed, 25 Oct 1995 14:47:52 -0700
Received: from orac.filoli.com (orac.filoli.com [204.162.1.137]) 
          by sunspot.filoli.com (8.6.12/8.6.9) with SMTP id OAA12212;
          Wed, 25 Oct 1995 14:47:47 -0700
Message-Id: <199510252147.OAA12212@sunspot.filoli.com>
Received: by orac.filoli.com (NX5.67e/NX3.0X) id AA04384;
          Wed, 25 Oct 95 14:47:45 -0700
Content-Type: text/plain
Mime-Version: 1.0 (NeXT Mail 3.3 v118.2)
Original-Received: by NeXT.Mailer (1.118.2)
PP-warning: Illegal Received field on preceding line
From: George Johnston <gj@filoli.com>
Date: Wed, 25 Oct 95 14:47:43 -0700
To: Ben Lindstrom <mouring@netnet.net>
Subject: I think I have fetch almost working..
Cc: DBI perl <perldb-interest@vix.com>, andy_lyman@filoli.com
References: <Pine.SUN.3.91.951025124330.25783A-100000@netnet1.netnet.net>


>Sender: perldb-interest-request@fugue.com
> X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
> Date: Wed, 25 Oct 1995 12:47:44 -0500 (CDT)
> From: Ben Lindstrom <mouring@netnet.net>
> To: DBI perl <perldb-interest@vix.com>
> Subject: I think I have fetch almost working..
>
>
> I just need to verify my test perl code is correct.
>
>...Assume datbase connected.
> $cursor = $dbh->prepare( "SELECT * FROM table1" );
>
> $cursor->execute;
>
> while ( ($name,$age) = $cursor->fetchrow ) {
>    print "Field: $name --> $age\n";
>  }
>
> $cursor->finish;
>
> I only get name returned currently.
>
> I need to know if I've done the Perl code right.  If so I know  
it's > in myDBD.
>
> Thanks.
>
>---
> Closer we come to success..The more problems that occur.
>

I had to go in and make fetch work on my own, we are operating on a  
tight deadline.  The last bug that kept me up was in your test  
script qb.pl.

while (@field = $cursor3->fetchrow) {
   print "Field: $field\n";
  }

I just changed it to
while (@field = $cursor3->fetchrow) {
   print "Field: @field\n";
  }

and I got fetch to work all the way back to the calling perl program.

I would suggest that you look to see that you are really returning  
an array from dbd_st_fetch in your dbdimp.c.

George
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <15515-8@oink>;
          Thu, 26 Oct 1995 07:06:39 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 25 Oct 95 23:47:45 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id aa22074;
          25 Oct 95 23:46 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA12092 for perldb-interest-real; Wed, 25 Oct 1995 15:33:18 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA12088 
          for <perldb-interest@fugue.com>; Wed, 25 Oct 1995 15:33:15 -0700
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id WAA24240; Wed, 25 Oct 1995 22:30:54 +0100
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199510252130.WAA24240@fruitbat.mcqueen.com>
Subject: Re: What am I doing wrong...got to be something stupid
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Date: Wed, 25 Oct 1995 22:30:53 +0100 (BST)
Cc: perldb-interest@fugue.com, mhm@austin.ibm.com
In-Reply-To: <9510252205.AA19753@toad> from "Tim Bunce" at Oct 25, 95 11:05:15 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 458


> Alligator, why didn't this affect you? Did you use the readblob(..., \$dest)
> mechanism instead?

The mSQL API doesn't support BLOBs currently. ( So I dropped the code! )

And I've been completely tied up with real work, so I haven't reached this
issue with the Informix driver yet!

So, I suppose that's why it didn't hit me.......

8-)

> Tim.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15516-20@oink>;
          Thu, 26 Oct 1995 07:08:26 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 25 Oct 95 23:21:47 GMT
Received: from relay-2.mail.demon.net by punt-1.mail.demon.net id aa11582;
          25 Oct 95 23:20 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA11972 for perldb-interest-real; Wed, 25 Oct 1995 15:07:13 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA11967 
          for <perldb-interest@fugue.com>; Wed, 25 Oct 1995 15:07:11 -0700
Received: by gw.home.vix.com id AA00492; Wed, 25 Oct 95 15:09:29 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id RAA11388; Wed, 25 Oct 1995 17:09:14 -0500
Date: Wed, 25 Oct 1995 17:09:14 -0500 (CDT)
From: Ben Lindstrom <mouring@netnet.net>
To: George Johnston <gj@filoli.com>
Cc: DBI perl <perldb-interest@vix.com>, andy_lyman@filoli.com
Subject: Re: I think I have fetch almost working..
In-Reply-To: <199510252147.OAA12212@sunspot.filoli.com>
Message-Id: <Pine.SUN.3.91.951025170506.10970A-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

> I had to go in and make fetch work on my own, we are operating on a  
> tight deadline.  The last bug that kept me up was in your test  
> script qb.pl.
> 
> while (@field = $cursor3->fetchrow) {
>    print "Field: $field\n";
>   }
> 
Hmm...I guess I don't rememver $field...Oh well..

> I just changed it to
> while (@field = $cursor3->fetchrow) {
>    print "Field: @field\n";
>   }
> 
> and I got fetch to work all the way back to the calling perl program.
> 
> I would suggest that you look to see that you are really returning  
> an array from dbd_st_fetch in your dbdimp.c.
> 
Yes..I just changed my  test suite to what you have and I do have
a problem with passing things back. The first column is being
passed back twice.

I have the new QuickBase server for rollbacks and commits.  You can send the
transcation commands via prepre()  or via makeCommand:.  

Have you started working on multiply cursors active?  I don't think it's
good for both of us to be working on the same functions.   It might go
quicker to work together.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15516-84@oink>;
          Thu, 26 Oct 1995 07:15:33 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 26 Oct 95 05:06:46 GMT
Received: from relay-2.mail.demon.net by punt-1.mail.demon.net id aa16866;
          26 Oct 95 5:05 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA12962 for perldb-interest-real; Wed, 25 Oct 1995 20:44:04 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id UAA12958 
          for <perldb-interest@fugue.com>; Wed, 25 Oct 1995 20:43:59 -0700
Received: by gw.home.vix.com id AA23114; Wed, 25 Oct 95 20:46:12 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-2.mail.demon.net id ad17736;
          25 Oct 95 19:56 GMT
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id aa24135;
          25 Oct 95 19:55 GMT
Received: from toad by oink with SMTP (PP) id <11929-0@oink>;
          Wed, 25 Oct 1995 20:55:33 +0100
Received: by toad (5.0/SMI-SVR4) id AA19658; Wed, 25 Oct 1995 20:55:11 +0000
Date: Wed, 25 Oct 1995 20:55:11 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9510251955.AA19658@toad>
To: perldb-interest@vix.com, mouring@netnet.net
Subject: Re: I think I have fetch almost working..
X-Sun-Charset: US-ASCII
Content-Length: 226
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Ben Lindstrom <mouring@netnet.net>
> 
> I just need to verify my test perl code is correct.
> 
> ...Assume datbase connected.
> $cursor = $dbh->prepare( "SELECT * FROM table1" );

Add
  $cursor->debug(2);
here.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <20508-62@oink>;
          Thu, 26 Oct 1995 14:29:54 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 26 Oct 95 08:39:31 GMT
Received: from relay-2.mail.demon.net by punt-1.mail.demon.net id bg15403;
          26 Oct 95 8:39 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <24359-0@frigate.doc.ic.ac.uk>; Tue, 24 Oct 1995 05:26:33 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA04192 for perldb-interest-real; Mon, 23 Oct 1995 20:07:21 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-2.mail.demon.net (disperse.demon.co.uk [158.152.1.77]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id UAA04188 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 20:07:17 -0700
Received: from post.demon.co.uk by relay-2.mail.demon.net id aa25981;
          24 Oct 95 2:58 GMT
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id aa24494;
          24 Oct 95 2:57 GMT
Received: from ig.co.uk by ignite.demon.co.uk id <24021-0@ignite.demon.co.uk>;
          Tue, 24 Oct 1995 03:54:10 +0100
To: perldb-interest@fugue.com, phj@pilot.njin.net
Subject: Re: CGI-Perl-DBI-Oracle problem
Date: Tue, 24 Oct 1995 03:54:10 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510240257.aa24494@relay-3.mail.demon.net>


> From: "Patricia H. Ju" <phj@pilot.njin.net>
> 
> 
> Oops.  5 seconds after sending my help plea, I realized the problem.
> Logged in as me, I have my ORACLE_SID variable set so I don't need
> to specify my database in the script.  But when I run it as a CGI
> script, there's no default database.

If I had a penny (or a cent) for every time someone ...

> Points as to why I'm getting those TNS: internal limit reached
> errors would still be useful, though.

Talk to the person who configured TNS.

> (I imagine it's some kind of
> lack-of-logging off or something; does Perl or DBD automatically
> logoff or does one have to explicitly call ora_logoff ?)

DBD::Oracle will call ologof() when the $dbh object is destroyed.
Perl will do that when it exits.

> "Men have forgotten this truth," said the fox.  "But you must not forget it.
> You become responsible, forever, for what you have tamed . . ."

Very true. 

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <20508-6@oink>;
          Thu, 26 Oct 1995 14:25:39 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 26 Oct 95 08:36:45 GMT
Received: from relay-2.mail.demon.net by punt-1.mail.demon.net id ab15403;
          26 Oct 95 8:35 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <27225-0@frigate.doc.ic.ac.uk>; Tue, 24 Oct 1995 07:58:17 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id WAA04582 for perldb-interest-real; Mon, 23 Oct 1995 22:57:55 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-1.mail.demon.net (relay-1.mail.demon.net [158.152.1.140]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id WAA04578 
          for <perldb-interest@fugue.com>; Mon, 23 Oct 1995 22:57:43 -0700
Received: from post.demon.co.uk by relay-1.mail.demon.net id ab00508;
          23 Oct 95 23:28 GMT
Received: from relay-1.mail.demon.net by relay-3.mail.demon.net id aa25586;
          23 Oct 95 18:26 GMT
Received: from ig.co.uk by ignite.demon.co.uk id <18592-0@ignite.demon.co.uk>;
          Mon, 23 Oct 1995 19:26:45 +0100
To: perldb-interest@fugue.com, webm@marque.mscs.mu.edu
Subject: Re: DBI Installation
Date: Mon, 23 Oct 1995 19:26:45 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-ID: <9510231826.aa25586@relay-3.mail.demon.net>


> From: BCL HTML account <webm@marque.mscs.mu.edu>
> 
> We are getting segmentation fault while running make test of DBI module.
> perl Makefile.PL and make are working.
> Following is the output of make test.  It is giving an error on test 5.
> 
> FAILED on test 5
> DBI test application $Revision: 1.12 $
> make: *** [test] Segmentation Fault (core dumped)
>
> Summary of my perl5 (patchlevel 1) configuration:
>   Platform:
>     osname=solaris, osver=2.4, archname=sun4-solaris
>     uname='sunos eve 5.4 generic_101945-27 sun4m sparc '
>     hint=recommended
>   Compiler:
>     cc='gcc', optimize='-O'
>     cppflags=''
>     ccflags =''
>     ldflags =''
>     stdchar='unsigned char', d_stdstdio=define, usevfork=false
>     voidflags=15, castflags=0, d_casti32=define, d_castneg=define
>     intsize=4, alignbytes=8, usemymalloc=y, randbits=15
>   Libraries:
>     so=so
>     libpth=/lib /usr/lib /usr/ccs/lib /usr/local/lib
>     libs=-lsocket -lnsl -ldb -ldl -lm -lc -lcrypt
>     libc=/usr/lib/libc.so
>   Dynamic Linking:
>     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
>     cccdlflags='-fpic', ccdlflags='', lddlflags='-G'

Thanks. Please also post...

	Perl version number (if not 5.001m then upgrade first)
	Release number of DBI (if not 0.63 then upgrade first)
	GCC version number (if not >=2.5.8 then upgrade first)
	Stack trace from core file (rebuild with -g & use gdb or adb)

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <20508-133@oink>;
          Thu, 26 Oct 1995 14:36:10 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 26 Oct 95 08:43:27 GMT
Received: from relay-2.mail.demon.net by punt-1.mail.demon.net id cs15403;
          26 Oct 95 8:42 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <09782-0@frigate.doc.ic.ac.uk>; Tue, 24 Oct 1995 19:35:40 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA07079 for perldb-interest-real; Tue, 24 Oct 1995 09:21:54 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA07075 
          for <perldb-interest@fugue.com>; Tue, 24 Oct 1995 09:21:51 -0700
Received: by gw.home.vix.com id AA19443; Tue, 24 Oct 95 09:23:55 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-2.mail.demon.net id aa11657;
          24 Oct 95 15:39 GMT
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id aa06912;
          24 Oct 95 15:38 GMT
Received: from ig.co.uk by ignite.demon.co.uk id <02386-0@ignite.demon.co.uk>;
          Tue, 24 Oct 1995 15:13:23 +0100
To: perldb-interest@fugue.com, mhm@austin.ibm.com
Subject: Re: Overriding malloc/free on AIX 3.2.5?
Date: Tue, 24 Oct 1995 15:13:23 +0100
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424
Message-Id: <9510241538.aa06912@relay-3.mail.demon.net>


> From: mhm@austin.ibm.com
> 
> Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
> |>> From: mhm@austin.ibm.com
> |>> 
> |>> |> >       /* allocate room for copy of statement with spare capacity	*/
> |>> |> >       /* for editing ':1' into ':p1' so we can use obndrv.	*/
> |>> |> > !     imp_sth->statement = (char*)safemalloc(strlen(statement) + 
> |>> |> > !                                (DBIc_NUM_PARAMS(imp_sth)*4));
> |>> |> 
> |>> |> Er, I don't think so.
> |>> |> 
> |>> |> How is DBIc_NUM_PARAMS set before you've parsed the string ?
> |>> 
> |>> At the point in time where DBD::Oracle calls oopen (dbdimp.c:
> |>> db_st_prepare line 300 in version 0.25) DBD::DB2 has already 
> |>> parsed the statement and the number of parameters is available 
> |>> from the engine.
> |>
> |>So what is dbd_preparse() doing? Why not get the info from the DB2 API?
> 
> Setting up the imp_sth->bind_names hash.  Although, with this release 
> of DB2 it is a little bit of overkill.  My basic tenant has been to
> get as much of DBD::DB2 running with as little mutation to the reference
> implementation as possible.  Conceivably, I could do away with the
> entire imp_sth->bind_names hash as everything is '?' in DB2, but then
> I would have significantly more changes to track during this alpha
> stage of DBI/DBD.

A wise policy :-)

> |>I presume DB2 use '?' as the placeholder.
> 
> Currently, '?' is the only acceptable placeholder, but I expect that
> to change if what I am hearing about the X/Open CLI standard is true
> (haven't gotten my copy yet :-(  )

X/Open CLI uses '?'.

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <25428-14@oink>;
          Thu, 26 Oct 1995 17:50:04 +0100
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 26 Oct 95 16:02:43 GMT
Received: from relay-2.mail.demon.net by punt-2.mail.demon.net id aa09948;
          26 Oct 95 16:01 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa04020;
          26 Oct 95 16:01 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA14877 for perldb-interest-real; Thu, 26 Oct 1995 06:21:54 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id GAA14873 
          for <perldb-interest@fugue.com>; Thu, 26 Oct 1995 06:21:51 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id IAA56331 
          for <perldb-interest@fugue.com>; Thu, 26 Oct 1995 08:24:10 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA23938;
          Thu, 26 Oct 1995 08:24:09 -0500
Message-Id: <9510261324.AA23938@dax.austin.ibm.com>
To: perldb-interest@fugue.com
Subject: Re: What am I doing wrong...got to be something stupid
Date: Thu, 26 Oct 95 08:24:08 -0500


Tim Bunce <Tim.Bunce@ig.co.uk> writes:
|> > From: mhm@austin.ibm.com
|> > 
|> > Here is a small test case.
|> > 
|> >     while ($buff = $pict_sth->readblob(1,0,4096)) { 
|> > 		print OUTPUT $buff;
|> > 		$buff = "";
|> > 	}
|> 
|> It means that you're returning a reference to a scalar. That points me
|> to this code in the xs file:
|> 
|>     if (!destrv)
|> 	destrv = sv_2mortal(newRV(newSV(0)));
|>     if (dbd_st_readblob(sth, field, offset, len, destrv, destoffset))
|> 	 ST(0) = destrv;      <===
|>     else ST(0) = &sv_undef;
|> 
|> and I now see what's wrong. Make this change and let me know how it goes:
|> 
|> -	 ST(0) = destrv;
|> +	 ST(0) = SvRV(destrv);
|> 

After making the above change, something is still not right with 
dbd_st_readblob or my understanding of perlguts is still severly
lacking.

From dbd_st_readblob, my assumption has been that the line 

bufsv = SvRV(destrv);

causes destrv to be dereferenced, which means that bufsv and destrv
would both be pointing at the same memory.  However, when looking at
both destrv and bufsv in the debugger after the SQLGetData call, I
see the appropriate piece of the blob in bufsv->sv_any->xpvav.xav_array
and an unchanged destrv->sv_any->xpvav.xav_array.

So just what am I missing?  Is it not getting passed in correctly?

Mike
mhm@austin.ibm.com


void
readblob(sth, field, offset, len, destrv=Nullsv, destoffset=0)
    SV *	sth
    int	field
    long	offset
    long	len
    SV *	destrv
    long	destoffset
    CODE:
    if (!destrv)
	destrv = sv_2mortal(newRV(newSV(0)));
    if (dbd_st_readblob(sth, field, offset, len, destrv, destoffset))
        ST(0) = SvRV(destrv);
    else 
        ST(0) = &sv_undef;


int
dbd_st_readblob(sth, field, offset, len, destrv, destoffset)
    SV *sth;
    int field;
    long offset;
    long len;
    SV *destrv;
    long destoffset;
{
    D_imp_sth(sth);
	D_imp_dbh_from_sth;
    int retl=0;
    SV *bufsv;
	int rtval=0;
	char *msg;
	
    bufsv = SvRV(destrv);
    sv_setpvn(bufsv,"",0);	/* ensure it's writable string	*/
    SvGROW(bufsv, len+destoffset+1);	/* SvGROW doesn't do +1	*/

    rtval = SQLGetData(imp_sth->phstmt,field,SQL_C_BINARY,
                          ((void *)SvPVX(bufsv)),len+destoffset,&retl);
    msg = (ERRTYPE(rtval) ? "GetData failed to read blob":"Invalid Handle");
    rtval = check_error(sth,rtval,henv,imp_dbh->hdbc,imp_sth->phstmt,msg);
    EOI(rtval);
	
    SvCUR_set(bufsv, len );
    *SvEND(bufsv) = '\0'; /* consistent with perl sv_setpvn etc	*/

    return 1;
}


------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <27567-12@oink>;
          Thu, 26 Oct 1995 19:59:08 +0100
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 26 Oct 95 18:41:18 GMT
Received: from relay-2.mail.demon.net by punt-1.mail.demon.net id aa04910;
          26 Oct 95 18:40 GMT
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id aa10793;
          26 Oct 95 18:38 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <10364-0@frigate.doc.ic.ac.uk>; Tue, 24 Oct 1995 20:03:34 +0100
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA06903 for perldb-interest-real; Tue, 24 Oct 1995 08:28:18 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA06899 
          for <perldb-interest@fugue.com>; Tue, 24 Oct 1995 08:28:12 -0700
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.112.95]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id KAA105938;
          Tue, 24 Oct 1995 10:30:18 -0500
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA22134;
          Tue, 24 Oct 1995 10:30:05 -0500
Message-Id: <9510241530.AA22134@dax.austin.ibm.com>
To: mhm@austin.ibm.com
Cc: perldb-interest@fugue.com
Subject: Re: What am I doing wrong...got to be something stupid
In-Reply-To: Your message of Mon, 23 Oct 95 08:23:48 -0500. <9510231323.AA26902@dax.austin.ibm.com>
Date: Tue, 24 Oct 95 10:30:04 -0500


mhm@austin.ibm.com  writes:
|>int
|>dbd_st_readblob(sth, field, offset, len, destrv, destoffset)
|>  SV *sth;
|>  int field;
|>  long offset;
|>  long len;
|>  SV *destrv;
|>  long destoffset;
|>{
|>  D_imp_sth(sth);
|>  D_imp_dbh_from_sth;
|>  int retl=0;
|>  SV *bufsv;
|>  int rtval=0;
|>  char *msg;
|>    
|>  bufsv = SvRV(destrv);
|>  sv_setpvn(bufsv,"",0);  /* ensure it's writable string  */
|>  SvGROW(bufsv, len+destoffset+1);    /* SvGROW doesn't do +1 */
|>
|>  rtval = SQLGetData(imp_sth->phstmt,field,SQL_C_BINARY,
|>                  ((void *)SvPVX(bufsv)),len+destoffset,&retl);
|>  msg = (ERRTYPE(rtval) ? "GetData failed to readblob":"InvalidHandle");
|>  rtval = check_error(sth,rtval,henv,imp_dbh->hdbc,imp_sth->phstmt,msg);
|>  EOI(rtval);
|>  
|>  SvCUR_set(bufsv, len );
|>  *SvEND(bufsv) = '\0'; /* consistent with perl sv_setpvn etc */
|>
|>  return 1;
|>}

Ok, I need ideas...I'm using perl5.001m + patches, it passes all tests
yet the above code doesn't work right.

On the first call to imp_sth->readblob, destrv is created by the 
Xs routine and is passed in to dbd_st_readblob along with zero offset.

bufsv is created and get properly filled by SQLGetData, but it is not
reflected in destrv.  Why? Is bufsv created wrong?  Is destsv not
created or passed properly?

As you can tell I'm in over my head.  So, I'm just trying to figure 
it out and learn something.

Mike
mhm@austin.ibm.com


void
readblob(sth, field, offset, len, destrv=Nullsv, destoffset=0)
    SV *    sth
    int field
    long    offset
    long    len
    SV *    destrv
    long    destoffset
    CODE:
    if (!destrv)
    destrv = sv_2mortal(newRV(newSV(0)));
    if (dbd_st_readblob(sth, field, offset, len, destrv, destoffset))
     ST(0) = destrv;
    else ST(0) = &sv_undef;
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <12024-0@oink>;
          Mon, 30 Oct 1995 19:18:07 +0000
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 30 Oct 95 18:48:06 GMT
Received: from relay-4.mail.demon.net by punt-2.mail.demon.net id aa00566;
          30 Oct 95 18:46 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA28283 for perldb-interest-real; Mon, 30 Oct 1995 08:39:24 -0800
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA28279 
          for <perldb-interest@fugue.com>; Mon, 30 Oct 1995 08:39:17 -0800
Received: by gw.home.vix.com id AA01052; Mon, 30 Oct 95 08:41:32 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from kstock@localhost) by nova.auspex.fr (8.6.9/8.6.9) id RAA00293;
          Robinson France, Mon, 30 Oct 1995 17:42:42 +0100
Date: Mon, 30 Oct 1995 17:42:42 +0100
Message-Id: <199510301642.RAA00293@nova.auspex.fr>
To: perldb-interest@vix.com
Subject: Re: OraPerl
Cc: kstock@nova.auspex.fr, djb2413@is2.nyu.edu
From: Kevin Stock <KStock@auspex.com>
Organisation: Auspex Systems European Technical Support Centre
Phone: +33 1 41 07 95 05
Reply-To: KStock@auspex.com

Hello Dan,

> I'm wondering if anyone out there has been able to
> compile OraPerl for a Solaris (v2.4) machine running
> Perl (v5.0) and Oracle (v7.2.2)???

No, I can safely say that no-one has been able to do this. Oraperl will
not work with Perl v5 at all. You could either build Oraperl with Perl
4 or use Tim Bunce' DBD:Oracle which works with v5.

	Kevin
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12023-7@oink>;
          Mon, 30 Oct 1995 19:18:59 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 30 Oct 95 18:55:36 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id af03063;
          30 Oct 95 18:54 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <13536-0@frigate.doc.ic.ac.uk>; Mon, 30 Oct 1995 17:17:37 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA28048 for perldb-interest-real; Mon, 30 Oct 1995 06:16:28 -0800
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id GAA28044 
          for <perldb-interest@fugue.com>; Mon, 30 Oct 1995 06:16:26 -0800
Received: by gw.home.vix.com id AA20381; Mon, 30 Oct 95 06:18:45 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from PORT-048.DIAL.NET.NYU.EDU by is2.NYU.EDU;
          (5.65v3.0/1.1.8.2/23Sep94-1121PM) id AA32381;
          Mon, 30 Oct 1995 09:18:36 -0500
Message-Id: <v01510102acba9c0d664b@[128.122.237.148]>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Mon, 30 Oct 1995 10:17:55 -0500
To: perldb-interest@vix.com
From: Dan Boyle <djb2413@is2.nyu.edu>
Subject: OraPerl

I've just joined this list so excuse me if this thread has
already woven its ugly cloth.

I'm wondering if anyone out there has been able to
compile OraPerl for a Solaris (v2.4) machine running
Perl (v5.0) and Oracle (v7.2.2)???


---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12023-15@oink>;
          Mon, 30 Oct 1995 19:19:41 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 30 Oct 95 19:12:43 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa11886;
          30 Oct 95 19:12 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <15598-0@frigate.doc.ic.ac.uk>; Mon, 30 Oct 1995 18:56:11 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA28358 for perldb-interest-real; Mon, 30 Oct 1995 09:03:24 -0800
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA28354 
          for <perldb-interest@fugue.com>; Mon, 30 Oct 1995 09:03:22 -0800
Received: by gw.home.vix.com id AA02568; Mon, 30 Oct 95 09:05:32 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from romulus.InterNex.Net by starfleet (SMI-8.6.9/SMI-SVR4) 
          id JAA01673; Mon, 30 Oct 1995 09:05:29 -0800
Received: by romulus.InterNex.Net (5.x/SMI-SVR4) id AA04545;
          Mon, 30 Oct 1995 09:05:23 -0800
Date: Mon, 30 Oct 1995 09:05:21 -0800 (PST)
From: Matt Ho <matt@starfleet.internex.net>
X-Sender: matt@romulus
To: Dan Boyle <djb2413@is2.nyu.edu>
Cc: perldb-interest@vix.com
Subject: Re: OraPerl
In-Reply-To: <v01510102acba9c0d664b@[128.122.237.148]>
Message-Id: <Pine.SOL.3.91.951030090450.4364B-100000@romulus>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Mon, 30 Oct 1995, Dan Boyle wrote:

> I've just joined this list so excuse me if this thread has
> already woven its ugly cloth.
> 
> I'm wondering if anyone out there has been able to
> compile OraPerl for a Solaris (v2.4) machine running
> Perl (v5.0) and Oracle (v7.2.2)???

Yeah, though the server is running on an NT box (bleh)

                               '''
                              (o o)
--------------------------oOO--(_)--OOo--------------------------
Matt Ho                           PGP available on request
WWW Architect                     Email: matt@InterNex.Net
InterNex Information Services     http://www.InterNex.Net/

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12701-23@oink>;
          Mon, 30 Oct 1995 20:49:20 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 30 Oct 95 20:46:31 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa28156;
          30 Oct 95 20:45 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id aa08252;
          30 Oct 95 20:45 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA28672 for perldb-interest-real; Mon, 30 Oct 1995 10:33:21 -0800
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA28668 
          for <perldb-interest@fugue.com>; Mon, 30 Oct 1995 10:33:20 -0800
Received: by gw.home.vix.com id AA10490; Mon, 30 Oct 95 10:35:38 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from romulus.InterNex.Net by starfleet (SMI-8.6.9/SMI-SVR4) 
          id KAA02880; Mon, 30 Oct 1995 10:35:31 -0800
Received: by romulus.InterNex.Net (5.x/SMI-SVR4) id AA05093;
          Mon, 30 Oct 1995 10:35:25 -0800
Date: Mon, 30 Oct 1995 10:35:24 -0800 (PST)
From: Matt Ho <matt@starfleet.internex.net>
X-Sender: matt@romulus
To: Kevin Stock <KStock@auspex.com>
Cc: perldb-interest@vix.com, kstock@nova.auspex.fr, djb2413@is2.nyu.edu
Subject: Re: OraPerl
In-Reply-To: <199510301642.RAA00293@nova.auspex.fr>
Message-Id: <Pine.SOL.3.91.951030103454.5087A-100000@romulus>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Mon, 30 Oct 1995, Kevin Stock wrote:

> > I'm wondering if anyone out there has been able to
> > compile OraPerl for a Solaris (v2.4) machine running
> > Perl (v5.0) and Oracle (v7.2.2)???
> 
> No, I can safely say that no-one has been able to do this. Oraperl will
> not work with Perl v5 at all. You could either build Oraperl with Perl
> 4 or use Tim Bunce' DBD:Oracle which works with v5.

Actually, he's right.  I built the DBD:Oracle package which has OraPerl 
emulation built into it. 

                               '''
                              (o o)
--------------------------oOO--(_)--OOo--------------------------
Matt Ho                           PGP available on request
WWW Architect                     Email: matt@InterNex.Net
InterNex Information Services     http://www.InterNex.Net/

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13732-62@oink>;
          Mon, 30 Oct 1995 22:35:32 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 30 Oct 95 20:55:04 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa02230;
          30 Oct 95 20:53 GMT
Received: from relay-4.mail.demon.net by relay-2.mail.demon.net id ae02460;
          30 Oct 95 20:52 GMT
Received: from punt.demon.co.uk by relay-4.mail.demon.net id sg.aa26014;
          28 Oct 95 15:53 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa29607;
          28 Oct 95 15:52 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA22129 for perldb-interest-real; Sat, 28 Oct 1995 07:08:30 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-2.mail.demon.net (disperse.demon.co.uk [158.152.1.77]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA22125 
          for <perldb-interest@fugue.com>; Sat, 28 Oct 1995 07:08:26 -0700
Received: from post.demon.co.uk by relay-2.mail.demon.net id aa08154;
          26 Oct 95 13:22 GMT
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id ai06692;
          26 Oct 95 13:21 GMT
Received: from toad by oink with SMTP (PP) id <19974-0@oink>;
          Thu, 26 Oct 1995 13:25:34 +0100
Received: by toad (5.0/SMI-SVR4) id AA20240; Thu, 26 Oct 1995 13:25:12 +0000
Date: Thu, 26 Oct 1995 13:25:12 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9510261225.AA20240@toad>
To: brent@dino.cortex.net
Subject: Re: (Comments|Request)
Cc: perldb-interest@fugue.com
X-Sun-Charset: US-ASCII
content-length: 1177
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Brent Halliburton <brent@dino.cortex.net>
> 
> How do I unsubscribe?

Mail to perldb-interest-REQUEST@fugue.com

> Or more accurately, could this list be subdivided somewhat.  I am
> interested in finding out when new versions of the software are released,
> or about things like the Hermetica site, but I am not interested in
> problems that people on platforms I will never use are having compiling the
> DBI stuff.
> 
> It would be nice if there was an announcements list (tightly moderated), a
> compiling list, and a usage list.
> 
> Please take these remarks as constructive.  I like reading the list, but I
> get too much e-mail to read about Sybase problems on HP machines, etc..  I
> can't help them, and I will probably never have similar problems.
>
> Your assistance in either of these arenas would be very helpful.

I've been having similar thoughts. I was thinking of three lists like this:

	dbi-announce	obvious
	dbi-users	general + discussion of the DBI interface evolution
	dbi-dev		DBI & DBD driver development and porting

Installation problems would be mailed to dbi-dev but you need not subscribe.

I've CC'd this to the list for comments.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13732-88@oink>;
          Mon, 30 Oct 1995 22:37:21 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 30 Oct 95 20:55:39 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id ab02821;
          30 Oct 95 20:54 GMT
Received: from relay-4.mail.demon.net by relay-2.mail.demon.net id ap02525;
          30 Oct 95 20:53 GMT
Received: from punt.demon.co.uk by relay-4.mail.demon.net id sg.aa04811;
          28 Oct 95 18:44 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa15159;
          28 Oct 95 18:43 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA22516 for perldb-interest-real; Sat, 28 Oct 1995 10:33:36 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from ubmail.ubalt.edu (ubmail.ubalt.edu [198.202.0.25]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA22512 
          for <perldb-interest@fugue.com>; Sat, 28 Oct 1995 10:33:33 -0700
Received: from UBmail.ubalt.edu by UBmail.ubalt.edu (PMDF V5.0-3 #7370) 
          id <01HWZ4KR9LVK00CI6U@UBmail.ubalt.edu> 
          for perldb-interest@fugue.com; Sat, 28 Oct 1995 13:34:14 -0500 (EST)
Date: Sat, 28 Oct 1995 13:34:14 -0500 (EST)
From: SHAZAD MALIK <SMALIK@ubmail.ubalt.edu>
Subject: link between two different platforms ????
To: perldb-interest@fugue.com
Message-id: <01HWZ4KRAY3M00CI6U@UBmail.ubalt.edu>
X-VMS-To: MX%"perldb-interest@fugue.com"
X-VMS-Cc: SMALIK
MIME-version: 1.0
Content-type: TEXT/PLAIN; CHARSET=US-ASCII
Content-transfer-encoding: 7BIT

Hi there...
	
	I have a database called "PROCITE" installed on my PC.  I wanna
create a search browser which will be performed from the Unix server(SGI) on
my PC database.  My problem is how do I make the link between the two
platform, so that they communicate with each other.

	Is there any software which can create the link.  I just dont
understand how to make the translation from my UNIX to PC, in order to
get and store information on my PC database.

I have figured out some options:
1) install a DOS device on the UNIX machine.
2) Install a DOS hard disk on the UNIX machine while duplicating the
   PC database on it.
3) OR is there something much easier from the above two options.

	But I just fail to see the picture about the link between the two
platforms.

Any suggestion ...plezzzzzzz !!!!

Shazad.



---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13732-119@oink>;
          Mon, 30 Oct 1995 22:39:59 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Mon, 30 Oct 95 20:57:10 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa03649;
          30 Oct 95 20:56 GMT
Received: from relay-4.mail.demon.net by relay-2.mail.demon.net id ar02611;
          30 Oct 95 20:55 GMT
Received: from punt.demon.co.uk by relay-4.mail.demon.net id msg.aa23448;
          28 Oct 95 15:43 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa25544;
          28 Oct 95 15:43 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA22135 for perldb-interest-real; Sat, 28 Oct 1995 07:09:06 -0700
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id HAA22131 
          for <perldb-interest@fugue.com>; Sat, 28 Oct 1995 07:09:04 -0700
Received: by gw.home.vix.com id AA20009; Sat, 28 Oct 95 07:11:17 -0700
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-2.mail.demon.net id ae08069;
          26 Oct 95 13:22 GMT
Received: from relay-2.mail.demon.net by relay-3.mail.demon.net id af06692;
          26 Oct 95 13:21 GMT
Received: from toad by oink with SMTP (PP) id <19907-0@oink>;
          Thu, 26 Oct 1995 13:06:43 +0100
Received: by toad (5.0/SMI-SVR4) id AA20228; Thu, 26 Oct 1995 13:06:21 +0000
Date: Thu, 26 Oct 1995 13:06:21 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9510261206.AA20228@toad>
To: gj@filoli.com, mouring@netnet.net
Subject: Re: I think I have fetch almost working..
Cc: perldb-interest@vix.com, andy_lyman@filoli.com
X-Sun-Charset: US-ASCII
Content-Length: 405
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Ben Lindstrom <mouring@netnet.net>
> 
> I have the new QuickBase server for rollbacks and commits.  You can send the
> transcation commands via prepre()  or via makeCommand:.  
> 
> Have you started working on multiply cursors active?  I don't think it's
> good for both of us to be working on the same functions.   It might go
> quicker to work together.

Yes, cooperate, don't duplicate.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <17755-1@oink>;
          Tue, 31 Oct 1995 01:24:12 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 31 Oct 95 01:18:36 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa01988;
          31 Oct 95 1:17 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA29299 for perldb-interest-real; Mon, 30 Oct 1995 16:03:50 -0800
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id QAA29295 
          for <perldb-interest@fugue.com>; Mon, 30 Oct 1995 16:03:43 -0800
Received: by relay-4.mail.demon.net id sg.aa14360; 31 Oct 95 0:02 GMT
Received: from post.demon.co.uk by relay-4.mail.demon.net id g.ae13398;
          30 Oct 95 23:49 GMT
Received: from relay-4.mail.demon.net by relay-3.mail.demon.net id ah14873;
          30 Oct 95 23:48 GMT
Received: from toad by oink with SMTP (PP) id <16122-0@oink>;
          Mon, 30 Oct 1995 23:43:13 +0000
Received: by toad (5.0/SMI-SVR4) id AA24470; Mon, 30 Oct 1995 23:42:51 +0000
Date: Mon, 30 Oct 1995 23:42:51 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9510302342.AA24470@toad>
To: perldb-interest@fugue.com, SMALIK@ubmail.ubalt.edu
Subject: Re: link between two different platforms ????
X-Sun-Charset: US-ASCII
content-length: 511
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: SHAZAD MALIK <SMALIK@ubmail.ubalt.edu>
> 
> Hi there...
> 	
> 	I have a database called "PROCITE" installed on my PC.  I wanna
> create a search browser which will be performed from the Unix server(SGI) on
> my PC database.  My problem is how do I make the link between the two
> platform, so that they communicate with each other.
> 
> Any suggestion ...plezzzzzzz !!!!

Join the www-rdb@w3.org mailing list. Subscribe via www-rdb-request@w3.org.
Also ask in comp.infosystems.www.authoring.cgi.

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <19207-1@oink>;
          Tue, 31 Oct 1995 07:06:19 +0000
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 31 Oct 95 03:07:38 GMT
Received: from relay-4.mail.demon.net by punt-2.mail.demon.net id aa06017;
          31 Oct 95 3:07 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA29535 for perldb-interest-real; Mon, 30 Oct 1995 17:51:29 -0800
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id RAA29531 
          for <perldb-interest@fugue.com>; Mon, 30 Oct 1995 17:51:27 -0800
Received: by gw.home.vix.com id AA18526; Mon, 30 Oct 95 17:53:46 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id TAA08053; Mon, 30 Oct 1995 19:53:42 -0600
Date: Mon, 30 Oct 1995 19:53:42 -0600 (CST)
From: Ben Lindstrom <mouring@netnet.net>
To: DBI perl <perldb-interest@vix.com>
Subject: Openning database on another machine.
Message-Id: <Pine.SUN.3.91.951030184930.3202B-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII


I noticed in Oracle you have some information in your dbd_db_login() that
describes how to use other databases on different machines (if I
understand it correctly.).  

Is this going to be the standard for identifying another machine for
pulling information from?  Or should the argument line be explanded for
login to include "host machine"?

Also, is there a standard way of adding in non-standard database routines.
Example: QuickBase lets you set what software is currently accessing the
database.  It would be nice to beable to let the user change it.

I sorta have the test.pl...but I'm unsure by quickly looking at it what
the tangled web of perl code is attempting to do.  You can take a look
at the output tommorrow when I release version .02 alpha.

---
Quote of the day: Anyways..progress is made slowly...=)  (Really slowly when 
		  your being over taken by finals. =)

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <23041-2@oink>;
          Tue, 31 Oct 1995 16:55:08 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 31 Oct 95 14:34:28 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa12652;
          31 Oct 95 14:33 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA01642 for perldb-interest-real; Tue, 31 Oct 1995 03:57:35 -0800
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id DAA01638 
          for <perldb-interest@fugue.com>; Tue, 31 Oct 1995 03:57:33 -0800
Received: by gw.home.vix.com id AA29441; Tue, 31 Oct 95 03:59:51 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.aa16189;
          31 Oct 95 11:58 GMT
Received: from relay-4.mail.demon.net by relay-3.mail.demon.net id aa24423;
          31 Oct 95 11:57 GMT
Received: from toad by oink with SMTP (PP) id <21646-0@oink>;
          Tue, 31 Oct 1995 11:56:44 +0000
Received: by toad (5.0/SMI-SVR4) id AA25558; Tue, 31 Oct 1995 11:56:22 +0000
Date: Tue, 31 Oct 1995 11:56:22 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9510311156.AA25558@toad>
To: perldb-interest@vix.com, mouring@netnet.net
Subject: Re: Openning database on another machine.
X-Sun-Charset: US-ASCII
Content-Length: 1035
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Ben Lindstrom <mouring@netnet.net>
> 
> I noticed in Oracle you have some information in your dbd_db_login() that
> describes how to use other databases on different machines (if I
> understand it correctly.).  
> 
> Is this going to be the standard for identifying another machine for
> pulling information from?

No.

> Or should the argument line be explanded for login to include "host machine"?

Basically the DBI standard says what the other standards say...
How you specify the database to connect to is an implementation issue.

If you're designing something from scratch I'd suggest following a URL style
or an ODBC style.

> Also, is there a standard way of adding in non-standard database routines.

Yes:
	$h->func(...., $func_name);

> I sorta have the test.pl...but I'm unsure by quickly looking at it what
> the tangled web of perl code is attempting to do.  You can take a look
> at the output tommorrow when I release version .02 alpha.

Please mail a copy to me. I've no time to go ftp fishing. Thanks.

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <24122-6@oink>;
          Tue, 31 Oct 1995 18:44:04 +0000
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 31 Oct 95 18:32:23 GMT
Received: from relay-4.mail.demon.net by punt-2.mail.demon.net id aa11647;
          31 Oct 95 18:31 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <10691-0@frigate.doc.ic.ac.uk>; Tue, 31 Oct 1995 18:06:41 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA01916 for perldb-interest-real; Tue, 31 Oct 1995 07:20:19 -0800
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id HAA01912 
          for <perldb-interest@fugue.com>; Tue, 31 Oct 1995 07:20:17 -0800
Received: by gw.home.vix.com id AA12162; Tue, 31 Oct 95 07:22:36 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id JAA04221; Tue, 31 Oct 1995 09:12:09 -0600
Date: Tue, 31 Oct 1995 09:12:09 -0600 (CST)
From: Ben Lindstrom <mouring@netnet.net>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: perldb-interest@vix.com
Subject: Re: Openning database on another machine.
In-Reply-To: <9510311156.AA25558@toad>
Message-Id: <Pine.SUN.3.91.951031090608.3626A-100000@netnet1.netnet.net>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Tue, 31 Oct 1995, Tim Bunce wrote:

> 
> > From: Ben Lindstrom <mouring@netnet.net>
> > 
> > Or should the argument line be explanded for login to include "host machine"?
> 
> Basically the DBI standard says what the other standards say...
> How you specify the database to connect to is an implementation issue.
> 
> If you're designing something from scratch I'd suggest following a URL style
> or an ODBC style.
> 
I guess my thoughts are it should be decided what front interface all 
DBI drivers will use.  If it be:

$dbh->connect('hostmachine.com','database','user','pass','driver');

or

$dbh->connect('hostmachine.com/database',''usr',pass',driver');

So if/when other people plan on building clients that access a server on 
another machine it will be setup.  (Of course that means that the DBD will
have to figure out how to do the physical connect, just the interface will
be documented).

> > I sorta have the test.pl...but I'm unsure by quickly looking at it what
> > the tangled web of perl code is attempting to do.  You can take a look
> > at the output tommorrow when I release version .02 alpha.
> 
> Please mail a copy to me. I've no time to go ftp fishing. Thanks.
> 
Ok..I'll add you to the list of people I'm sending the release (that should
be .03 alpha =).  

I'll also send a copy of the output+errors.


---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <25679-20@oink>;
          Tue, 31 Oct 1995 21:22:27 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Tue, 31 Oct 95 20:56:39 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa14476;
          31 Oct 95 20:55 GMT
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id aa22553;
          31 Oct 95 20:54 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <13751-0@frigate.doc.ic.ac.uk>; Tue, 31 Oct 1995 20:50:19 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA02373 for perldb-interest-real; Tue, 31 Oct 1995 11:08:16 -0800
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id LAA02369 
          for <perldb-interest@fugue.com>; Tue, 31 Oct 1995 11:08:12 -0800
Received: by gw.home.vix.com id AA27538; Tue, 31 Oct 95 10:46:41 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ab17408;
          31 Oct 95 18:45 GMT
Received: from relay-4.mail.demon.net by relay-3.mail.demon.net id ae11268;
          31 Oct 95 18:43 GMT
Received: from toad by oink with SMTP (PP) id <24007-0@oink>;
          Tue, 31 Oct 1995 18:00:30 +0000
Received: by toad (5.0/SMI-SVR4) id AA25830; Tue, 31 Oct 1995 18:00:09 +0000
Date: Tue, 31 Oct 1995 18:00:09 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9510311800.AA25830@toad>
To: mouring@netnet.net
Subject: Re: Openning database on another machine.
Cc: perldb-interest@vix.com
X-Sun-Charset: US-ASCII
Content-Length: 1397
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Ben Lindstrom <mouring@netnet.net>
> 
> On Tue, 31 Oct 1995, Tim Bunce wrote:
> 
> > > From: Ben Lindstrom <mouring@netnet.net>
> > > 
> > > Or should the argument line be explanded for login to include "host machine"?
> > 
> > Basically the DBI standard says what the other standards say...
> > How you specify the database to connect to is an implementation issue.
> > 
> > If you're designing something from scratch I'd suggest following a URL style
> > or an ODBC style.
>
> I guess my thoughts are it should be decided what front interface all 
> DBI drivers will use.  If it be:
> 
> $dbh->connect('hostmachine.com','database','user','pass','driver');
> 
> or
> 
> $dbh->connect('hostmachine.com/database',''usr',pass',driver');
> 
> So if/when other people plan on building clients that access a server on 
> another machine it will be setup.  (Of course that means that the DBD will
> have to figure out how to do the physical connect, just the interface will
> be documented).

Databases, from the applications point of view, are logical things.
Exposing physical details such as host name as an explicit part of the
interface is generally not a good idea.

I have no plans to change $dbh->connect arguments or argument handling.
It matches SQL CLI and other interfaces well.

It _is_ possible that the DBI->connect may do something fancy one day
with it's first argument.

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <00857-0@oink>;
          Wed, 1 Nov 1995 07:05:50 +0000
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 01 Nov 95 05:18:28 GMT
Received: from relay-4.mail.demon.net by punt-2.mail.demon.net id aa23614;
          1 Nov 95 5:18 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA03508 for perldb-interest-real; Tue, 31 Oct 1995 20:16:31 -0800
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id UAA03504 
          for <perldb-interest@fugue.com>; Tue, 31 Oct 1995 20:16:29 -0800
Received: by gw.home.vix.com id AA08420; Tue, 31 Oct 95 20:18:47 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: by proxy.netlabs.com (4.1/SMI-4.1) id AA24674;
          Tue, 31 Oct 95 20:23:47 PST
Received: from vaccine-bb.netlabs.com(192.190.199.1) by proxy.netlabs.com 
          via smap (V1.3) id sma024671; Tue Oct 31 20:23:21 1995
Received: from tile (tile.netlabs.com) by netlabs.com (4.1/SMI-4.1) id AA29226;
          Tue, 31 Oct 95 20:20:28 PST
From: Chuck Kung <chuck@netlabs.com>
Message-Id: <9511010420.AA29226@netlabs.com>
Subject: Re: OraPerl
To: Matt Ho <matt@starfleet.internex.net>
Date: Tue, 31 Oct 95 20:16:49 PST
Cc: djb2413@is2.nyu.edu, perldb-interest@vix.com
In-Reply-To: <Pine.SOL.3.91.951030090450.4364B-100000@romulus>; from "Matt Ho" at Oct 30, 95 9:05 am
X-Mailer: ELM [version 2.3 PL11]

hi,

i'm interested in the current progress of DBperl.
how far along is it?  is it in the specification
stage or implementation stage?  i'm deciding now          
whether to use sybperl of isqlperl but could wait if
DBperl is near.

thanks,

chuck


---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <03046-2@oink>;
          Wed, 1 Nov 1995 12:01:42 +0000
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 01 Nov 95 11:41:02 GMT
Received: from relay-4.mail.demon.net by punt-2.mail.demon.net id aa01193;
          1 Nov 95 11:40 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id CAA05239 for perldb-interest-real; Wed, 1 Nov 1995 02:14:57 -0800
Precedence: junk
Sender: perldb-interest-request@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id CAA05235 
          for <perldb-interest@fugue.com>; Wed, 1 Nov 1995 02:14:54 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id KAA23443; Wed, 1 Nov 1995 10:12:32 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511011012.KAA23443@fruitbat.mcqueen.com>
Subject: Re: OraPerl
To: Chuck Kung <chuck@netlabs.com>
Date: Wed, 1 Nov 1995 10:12:31 +0000 (GMT)
Cc: perldb-interest@fugue.com
In-Reply-To: <9511010420.AA29226@netlabs.com> from "Chuck Kung" at Oct 31, 95 08:16:49 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 817


> i'm interested in the current progress of DBperl.
> how far along is it?  is it in the specification
> stage or implementation stage?  i'm deciding now          
> whether to use sybperl of isqlperl but could wait if
> DBperl is near.

You can find a load of information on DBI at:
	
	http://www.hermetica.com/technologia/DBI

There are currently a few drivers implemented for it including:

	Oracle by Tim Bunce ( complete-ish )
	mSQL by myself ( complete-ish )
	Informix by myself ( early development, but looking good! )
	Quickbase by Ben Lindstrom ( very early development )

Sybase has been allocated, but I don't know what stage it's at. Probably
"about to be implemented"

Hope this helps.

> chuck

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <07848-19@oink>;
          Wed, 1 Nov 1995 21:21:28 +0000
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 01 Nov 95 21:14:35 GMT
Received: from relay-4.mail.demon.net by punt-2.mail.demon.net id aa01165;
          1 Nov 95 21:14 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA05970 for perldb-interest-real; Wed, 1 Nov 1995 09:34:51 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from localhost (mellon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          with SMTP id JAA05965 for <perldb-interest@toccata.fugue.com>;
          Wed, 1 Nov 1995 09:34:50 -0800
Message-Id: <199511011734.JAA05965@toccata.fugue.com>
To: perldb-interest@toccata.fugue.com
Subject: The perldb-interest mailing list is now obsolete.
Date: Wed, 01 Nov 1995 09:34:49 -0800
From: Ted Lemon <mellon@fugue.com>


The perldb-interest mailing list has been split into three mailing
lists; one for users, one for developers and one for announcements of
interest to both.

The perldb-interest mailing list will be gatewayed to the dbi-users
mailing list for the time being.  If you are involved in a
developer-related discussion, please redirect it to dbi-dev@fugue.com.
If you have an announcement to make, send it to
dbi-announce@fugue.com.  If you are engaging in discussions of
interest to all DBI users, please redirect that to
dbi-users@fugue.com.

Once the activity on perldb-interest has died down, I'll be disabling
the list and putting in an automatic responder telling people what's
happened.

			       _MelloN_
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <08649-0@oink>;
          Wed, 1 Nov 1995 22:00:27 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 01 Nov 95 21:57:50 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id ad06514;
          1 Nov 95 21:56 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <05710-0@frigate.doc.ic.ac.uk>; Wed, 1 Nov 1995 21:19:57 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA06169 for dbi-users-real; Wed, 1 Nov 1995 10:13:55 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: (from root@localhost) by toccata.fugue.com (8.6.9/8.6.11) id KAA06164 
          for dbi-users; Wed, 1 Nov 1995 10:13:54 -0800
Message-Id: <199511011813.KAA06164@toccata.fugue.com>
To: dbi-users@toccata.fugue.com
Subject: Welcome to the DBI Users' mailing list!
Date: Wed, 01 Nov 1995 09:27:22 -0800
From: Ted Lemon <mellon@fugue.com>


The perldb-interest mailing list has been split into three mailing
lists; one for users, one for developers and one for announcements of
interest to both.

The DBI Users' mailing list is intended for users who wish to share
information and experience about the use of the perl DBI.  Developers
are obviously also welcome on the list, but the list is not intended
for the discussion of issues strictly of interest to developers.

If you do not wish to be on the DBI Users' mailing list, please send
mail to dbi-users-request including your full name and email address
and asking to be removed.

			       _MelloN_
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <08649-11@oink>;
          Wed, 1 Nov 1995 22:01:25 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 01 Nov 95 21:57:53 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id ae06514;
          1 Nov 95 21:56 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <05842-0@frigate.doc.ic.ac.uk>; Wed, 1 Nov 1995 21:26:45 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA06153 for dbi-announce-real; Wed, 1 Nov 1995 10:13:27 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: (from root@localhost) by toccata.fugue.com (8.6.9/8.6.11) id KAA06148 
          for dbi-announce; Wed, 1 Nov 1995 10:13:26 -0800
Message-Id: <199511011813.KAA06148@toccata.fugue.com>
To: dbi-announce@toccata.fugue.com
Subject: Welcome to the DBI Announcement mailing list!
Date: Wed, 01 Nov 1995 09:31:34 -0800
From: Ted Lemon <mellon@fugue.com>


The perldb-interest mailing list has been split into three mailing
lists; one for users, one for developers and one for announcements of
interest to both.

The DBI Announcement mailing list is intended for announcements about
the availability of new versions of DBI software, new discussions
about DBI software, and new DBI-related resources.   It is not
intended for discussions of any kind.

If you do not wish to be on the DBI Announcement mailing list, please
send mail to dbi-announce-request including your full name and email
address and asking to be removed.

			       _MelloN_
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <08649-12@oink>;
          Wed, 1 Nov 1995 22:01:31 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 01 Nov 95 21:58:06 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id ag06514;
          1 Nov 95 21:56 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <06211-0@frigate.doc.ic.ac.uk>; Wed, 1 Nov 1995 21:48:28 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA06016 for perldb-interest-real; Wed, 1 Nov 1995 09:47:28 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA06012 
          for <perldb-interest@fugue.com>; Wed, 1 Nov 1995 09:47:24 -0800
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.86.169]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id LAA52678 
          for <perldb-interest@fugue.com>; Wed, 1 Nov 1995 11:49:39 -0600
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for perldb-interest@fugue.com at austin.ibm.com; id AA19842;
          Wed, 1 Nov 1995 11:49:38 -0600
Message-Id: <9511011749.AA19842@dax.austin.ibm.com>
To: perldb-interest@fugue.com
Subject: Dealing with blobs
Date: Wed, 01 Nov 95 11:49:37 -0600


My appologies if you have seen this before, but between Tim's mail
problems and my department moving and changing IP address I have
not seen a reply to the following message.

Any one have any ideas about what is happening?

Mike
mhm@austin.ibm.com


------- Forwarded Message

Subject: Re: What am I doing wrong...got to be something stupid 
In-Reply-To: Your message of Thu, 26 Oct 95 21:09:19 +0000.
             <9510262009.AA21540@toad> 
Date: Fri, 27 Oct 95 06:47:01 -0500
X-Filter: mailagent [version 3.0 PL44] for mhm@austin.ibm.com


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|> > From: mhm@austin.ibm.com
|> > 
|> > Tim Bunce <Tim.Bunce@ig.co.uk> writes:
|> > |> 
|> > |> -	 ST(0) = destrv;
|> > |> +	 ST(0) = SvRV(destrv);
|> > 
|> > After making the above change, something is still not right with 
|> > dbd_st_readblob or my understanding of perlguts is still severly lacking.
|> >
|> > From dbd_st_readblob, my assumption has been that the line 
|> > 
|> > bufsv = SvRV(destrv);
|> > 
|> > causes destrv to be dereferenced, which means that bufsv and destrv
|> > would both be pointing at the same memory.  However, when looking at
|> > both destrv and bufsv in the debugger after the SQLGetData call, I
|> > see the appropriate piece of the blob in bufsv->sv_any->xpvav.xav_array
|> > and an unchanged destrv->sv_any->xpvav.xav_array.
|> 
|> You should be looking at destrv->sv_any->xpv.xpv_pv but no matter,
|> they both have the same shape:
|> 
|> struct xpvav {
|>     char*   xav_array;  /* pointer to malloced string */
|> 
|> struct xpv {
|>     char *  xpv_pv;     /* pointer to malloced string */
|> 
|> so, the data is there!
|> 
|> > So just what am I missing?  Is it not getting passed in correctly?
|> 
|> You've not said what $sth->readblob is returning now!

I don't know exactly what it is, but it looks like $sth->readblob is
walking through the perl memory areas (I'll enclose a sample at the end).

|> 
|> >     rtval = SQLGetData(imp_sth->phstmt,field,SQL_C_BINARY,
|> >                           ((void *)SvPVX(bufsv)),len+destoffset,&retl);
|> >     msg = (ERRTYPE(rtval) ? "GetData failed to read blob":"Invalid Handle");
|> >     rtval = check_error(sth,rtval,henv,imp_dbh->hdbc,imp_sth->phstmt,msg);
|> >     EOI(rtval);
|> > 	
|> >     SvCUR_set(bufsv, len );
|> >     *SvEND(bufsv) = '\0'; /* consistent with perl sv_setpvn etc	*/
|> 
|> It's probably not relevant but
|> 
|> 	SvCUR_set(bufsv, len );
|> should be
|> 	SvCUR_set(bufsv, offset+retl );

Unfortunately, this is one of DB2 CLI's defeciencies.  I don't know how
many bytes were actually read.  What I do know is how many bytes
remaining.  So far, I have not come up with a reasonable method of
determining what retl is with out burning a lot of cycles.

Mike
mhm@austin.ibm.com

As promised a sample of dump of what is being returned by
$sth->readblob():


0000000    0   0   0   1   3   0  \0  \0  \0  \0  \0 222  \0  \0  \0   T
0000020   \0  \0  \0 003  \0  \0 016  \0  \0  \0 002 002  \0  \0 016   T
0000040   \0  \0  \0  \0  \0  \0  \0 002  \0  \0  \0  \0  \0  \0   @ 004
0000060   \0  \0  \0 001  \0  \0  \0  \0   _   i   o   b  \0  \0  \0  \0
0000100   \0  \0  \0  \0  \0  \0   @ 005  \0  \0  \0 001  \0  \0  \0  \0
0000120    s   t   r   l   e   n  \0  \0  \0  \0  \0  \0  \0  \0   @  \n
0000140   \0  \0  \0 001  \0  \0  \0  \0   m   a   l   l   o   c  \0  \0
0000160   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0 001  \0  \0  \0  \0
0000200    f   r   e   e  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0   @  \n
0000220   \0  \0  \0 001  \0  \0  \0  \0   s   p   r   i   n   t   f  \0
0000240   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0 001  \0  \0  \0  \0
0000260    f   p   r   i   n   t   f  \0  \0  \0  \0  \0  \0  \0   @  \n
0000300   \0  \0  \0 001  \0  \0  \0  \0   a   t   o   i  \0  \0  \0  \0
0000320   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0 001  \0  \0  \0  \0
0000340    i   s   d   i   g   i   t  \0  \0  \0  \0  \0  \0  \0   @  \n
0000360   \0  \0  \0 001  \0  \0  \0  \0   i   s   a   l   p   h   a  \0
0000400   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0 001  \0  \0  \0  \0
0000420    S   v  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0   @ 004
0000440   \0  \0  \0  \0  \0  \0  \0  \0   X   p   v  \0  \0  \0  \0  \0
0000460   \0  \0  \0  \0  \0  \0   @ 004  \0  \0  \0  \0  \0  \0  \0  \0
0000500   \0  \0  \0  \0  \0  \0  \0 032  \0  \0  \0  \0  \0  \0   @ 004
0000520   \0  \0  \0  \0  \0  \0  \0  \0   n   a  \0  \0  \0  \0  \0  \0
0000540   \0  \0  \0  \0  \0  \0   @ 004  \0  \0  \0  \0  \0  \0  \0  \0
0000560    o   p  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0   @ 004
0000600   \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0   *
0000620   \0  \0  \0  \0  \0  \0   @ 004  \0  \0  \0  \0  \0  \0  \0  \0
0000640   \0  \0  \0  \0  \0  \0  \0   7  \0  \0  \0  \0  \0  \0   @ 004
0000660   \0  \0  \0  \0  \0  \0  \0  \0   s   t   a   c   k   _   s   p
0000700   \0  \0  \0  \0  \0  \0   @ 004  \0  \0  \0  \0  \0  \0  \0  \0
0000720    s   v   _   n   o  \0  \0  \0  \0  \0  \0  \0  \0  \0   @ 004
0000740   \0  \0  \0  \0  \0  \0  \0  \0   s   v   _   u   n   d   e   f
0000760   \0  \0  \0  \0  \0  \0   @ 004  \0  \0  \0  \0  \0  \0  \0  \0
0001000    s   v   _   y   e   s  \0  \0  \0  \0  \0  \0  \0  \0   @ 004
0001020   \0  \0  \0  \0  \0  \0  \0  \0   a   v   _   s   t   o   r   e
0001040   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0001060    c   r   o   a   k  \0  \0  \0  \0  \0  \0  \0  \0  \0   @  \n
0001100   \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0   C
0001120   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0001140    h   v   _   f   e   t   c   h  \0  \0  \0  \0  \0  \0   @  \n
0001160   \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0   Q
0001200   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0001220   \0  \0  \0  \0  \0  \0  \0   _  \0  \0  \0  \0  \0  \0   @  \n
0001240   \0  \0  \0  \0  \0  \0  \0  \0   h   v   _   s   t   o   r   e
0001260   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0001300    n   e   w   A   V  \0  \0  \0  \0  \0  \0  \0  \0  \0   @  \n
0001320   \0  \0  \0  \0  \0  \0  \0  \0   n   e   w   H   V  \0  \0  \0
0001340   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0001360    n   e   w   R   V  \0  \0  \0  \0  \0  \0  \0  \0  \0   @  \n
0001400   \0  \0  \0  \0  \0  \0  \0  \0   n   e   w   S   V  \0  \0  \0
0001420   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0001440    n   e   w   S   V   i   v  \0  \0  \0  \0  \0  \0  \0   @  \n
0001460   \0  \0  \0  \0  \0  \0  \0  \0   n   e   w   S   V   p   v  \0
0001500   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0001520    n   e   w   X   S  \0  \0  \0  \0  \0  \0  \0  \0  \0   @  \n
0001540   \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0   o
0001560   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0001600    s   v   _   2   b   o   o   l  \0  \0  \0  \0  \0  \0   @  \n
0001620   \0  \0  \0  \0  \0  \0  \0  \0   s   v   _   2   i   v  \0  \0
0001640   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0001660   \0  \0  \0  \0  \0  \0  \0   |  \0  \0  \0  \0  \0  \0   @  \n
0001700   \0  \0  \0  \0  \0  \0  \0  \0   s   v   _   2   p   v  \0  \0
0001720   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0001740   \0  \0  \0  \0  \0  \0  \0 211  \0  \0  \0  \0  \0  \0   @  \n
0001760   \0  \0  \0  \0  \0  \0  \0  \0   s   v   _   c   a   t   p   v
0002000   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0002020    s   v   _   f   r   e   e  \0  \0  \0  \0  \0  \0  \0   @  \n
0002040   \0  \0  \0  \0  \0  \0  \0  \0   s   v   _   g   r   o   w  \0
0002060   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0002100   \0  \0  \0  \0  \0  \0  \0 226  \0  \0  \0  \0  \0  \0   @  \n
0002120   \0  \0  \0  \0  \0  \0  \0  \0   s   v   _   s   e   t   i   v
0002140   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0002160    s   v   _   s   e   t   p   v  \0  \0  \0  \0  \0  \0   @  \n
0002200   \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0 246
0002220   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0002240    s   v   _   s   e   t   s   v  \0  \0  \0  \0  \0  \0   @  \n
0002260   \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0 262
0002300   \0  \0  \0  \0  \0  \0   @  \n  \0  \0  \0  \0  \0  \0  \0  \0
0002320    w   a   r   n  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0   @  \n
0002340   \0  \0  \0  \0  \0  \0  \0  \0   d   i   r   t   y  \0  \0  \0

------- End of Forwarded Message

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <08649-15@oink>;
          Wed, 1 Nov 1995 22:01:47 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 01 Nov 95 21:58:01 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id ah06514;
          1 Nov 95 21:56 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <06225-0@frigate.doc.ic.ac.uk>; Wed, 1 Nov 1995 21:48:30 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA06161 for dbi-dev-real; Wed, 1 Nov 1995 10:13:41 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: (from root@localhost) by toccata.fugue.com (8.6.9/8.6.11) id KAA06156 
          for dbi-dev; Wed, 1 Nov 1995 10:13:41 -0800
Message-Id: <199511011813.KAA06156@toccata.fugue.com>
To: dbi-dev@toccata.fugue.com
Subject: Welcome to the DBI Developers' mailing list!
Date: Wed, 01 Nov 1995 09:30:22 -0800
From: Ted Lemon <mellon@fugue.com>


The perldb-interest mailing list has been split into three mailing
lists; one for users, one for developers and one for announcements of
interest to both.

The DBI Developers' mailing list is intended for DBI and DBD
developers who wish to discuss implementation issues, standards issues
and bug fixes.  User-related issues such as how to build and/or
install the DBI, where to get it, and so on, are not appropriate on
this list - please direct such queries to the DBI Users' mailing list.

If you do not wish to be on the DBI Developers' mailing list, please send
mail to dbi-dev-request including your full name and email address
and asking to be removed.

			       _MelloN_
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <08649-16@oink>;
          Wed, 1 Nov 1995 22:02:01 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 01 Nov 95 21:58:02 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id ai06514;
          1 Nov 95 21:57 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <06342-0@frigate.doc.ic.ac.uk>; Wed, 1 Nov 1995 21:52:15 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA06323 for dbi-announce-real; Wed, 1 Nov 1995 10:35:54 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from localhost (mellon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          with SMTP id KAA06318 for <dbi-announce@toccata.fugue.com>;
          Wed, 1 Nov 1995 10:35:51 -0800
Message-Id: <199511011835.KAA06318@toccata.fugue.com>
To: dbi-announce@toccata.fugue.com
Subject: Do not send me subscription requests if you're already subscribed!!!
Date: Wed, 01 Nov 1995 10:35:50 -0800
From: Ted Lemon <mellon@fugue.com>


I'm starting to get subscription requests from existing members for
the new mailing list.   Please don't.  If you were on perldb-interest,
you're already on the new lists.   Only send me requests to
unsubscribe to the lists you don't want to be on.

Thanks!

			       _MelloN_

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <10903-4@oink>;
          Thu, 2 Nov 1995 07:06:12 +0000
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 02 Nov 95 00:13:36 GMT
Received: from relay-4.mail.demon.net by punt-2.mail.demon.net id aa23329;
          2 Nov 95 0:13 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA07575 for dbi-dev-real; Wed, 1 Nov 1995 14:28:06 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA07571;
          Wed, 1 Nov 1995 14:28:03 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id WAA29379; Wed, 1 Nov 1995 22:25:51 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511012225.WAA29379@fruitbat.mcqueen.com>
Subject: DBD::Qbase 0.03
To: perldb-interest@fugue.com, dbi-dev@fugue.com, mouring@netnet.net, 
    Tim.Bunce@ig.co.uk
Date: Wed, 1 Nov 1995 22:25:49 +0000 (GMT)
Cc: Alligator Descartes <descarte@fruitbat.mcqueen.com>
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 2064


I've just taken a quick peek at the code. Some comments:

	o Your build instructions are slightly odd in that you suggest 
	  building DBD::Qbase within the perl5 source tree. DBI and the other
	  DBDs state you *shouldn't* build within the perl5 source tree.

	o You don't appear to be using any of the structures Tim has put in
	  place for the purpose of using!

	  Eg, the imp_dbh structures are to be used for connections. The
	  imp_fbh structures for fetching data from the database. I don't see
	  them.

	  Maybe Quickbase is odd that way, I don't know, but you're not
	  helping yourself by not using them!

I'd suggest ( again ) crefully reading the source code for DBD::Oracle and
DBD::mSQL ( and maybe DBD::Informix ). Those clearly show the function
flow for doing database stuff. Excluding binds, a normal session could be:

	connect
	prepare a cursor
	execute
	fetch the rows
	finish cursor
	disconnect

Not entirely unusual. Tell me if Quickbase is different. The connection is
handled via the _login function in <driver>.xs. This calls dbd_db_login. That
handles the connection and population of the lda ( which is not Oracle-specific,
although, the Oracle implementtion of it is! Check DBD::mSQL for more hints
on transporting it ).

dbd_st_prepare is called next through the stubs in the XS code. This prepares
the cursor for execution. In mSQL, the tests the statement for inserts et al,
since they are handled differently than SELECTs. In DBD::Informix, it opens
a cursor with the SQL provided.

execute is called via the XS code again. You backend mileage will vary heavily
here.

dbd_describe I regard as the guts of the driver's fetch functionality. This
reads the structures of the data returned by the cursor and creates SVs which
are the data types that perl can cope with. This routine doesn't appear to
exist in your code. 

disconnect merely frees the imp_dbh structure created above.

Hope this helps a bit.

Regards.

A. 

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <10902-13@oink>;
          Thu, 2 Nov 1995 07:06:53 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 02 Nov 95 00:28:16 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id af11376;
          2 Nov 95 0:27 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <09405-0@frigate.doc.ic.ac.uk>; Thu, 2 Nov 1995 00:08:07 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA07583 for perldb-interest-real; Wed, 1 Nov 1995 14:28:25 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA07571;
          Wed, 1 Nov 1995 14:28:03 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id WAA29379; Wed, 1 Nov 1995 22:25:51 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511012225.WAA29379@fruitbat.mcqueen.com>
Subject: DBD::Qbase 0.03
To: perldb-interest@fugue.com, dbi-dev@fugue.com, mouring@netnet.net, 
    Tim.Bunce@ig.co.uk
Date: Wed, 1 Nov 1995 22:25:49 +0000 (GMT)
Cc: Alligator Descartes <descarte@fruitbat.mcqueen.com>
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 2064


I've just taken a quick peek at the code. Some comments:

	o Your build instructions are slightly odd in that you suggest 
	  building DBD::Qbase within the perl5 source tree. DBI and the other
	  DBDs state you *shouldn't* build within the perl5 source tree.

	o You don't appear to be using any of the structures Tim has put in
	  place for the purpose of using!

	  Eg, the imp_dbh structures are to be used for connections. The
	  imp_fbh structures for fetching data from the database. I don't see
	  them.

	  Maybe Quickbase is odd that way, I don't know, but you're not
	  helping yourself by not using them!

I'd suggest ( again ) crefully reading the source code for DBD::Oracle and
DBD::mSQL ( and maybe DBD::Informix ). Those clearly show the function
flow for doing database stuff. Excluding binds, a normal session could be:

	connect
	prepare a cursor
	execute
	fetch the rows
	finish cursor
	disconnect

Not entirely unusual. Tell me if Quickbase is different. The connection is
handled via the _login function in <driver>.xs. This calls dbd_db_login. That
handles the connection and population of the lda ( which is not Oracle-specific,
although, the Oracle implementtion of it is! Check DBD::mSQL for more hints
on transporting it ).

dbd_st_prepare is called next through the stubs in the XS code. This prepares
the cursor for execution. In mSQL, the tests the statement for inserts et al,
since they are handled differently than SELECTs. In DBD::Informix, it opens
a cursor with the SQL provided.

execute is called via the XS code again. You backend mileage will vary heavily
here.

dbd_describe I regard as the guts of the driver's fetch functionality. This
reads the structures of the data returned by the cursor and creates SVs which
are the data types that perl can cope with. This routine doesn't appear to
exist in your code. 

disconnect merely frees the imp_dbh structure created above.

Hope this helps a bit.

Regards.

A. 

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <10903-12@oink>;
          Thu, 2 Nov 1995 07:06:52 +0000
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 02 Nov 95 00:50:28 GMT
Received: from relay-4.mail.demon.net by punt-2.mail.demon.net id aa06041;
          2 Nov 95 0:49 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA07877 for dbi-dev-real; Wed, 1 Nov 1995 15:17:51 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netnet1.netnet.net (netnet1.netnet.net [198.70.64.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA07861;
          Wed, 1 Nov 1995 15:17:15 -0800
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id RAA15312; Wed, 1 Nov 1995 17:18:01 -0600
Date: Wed, 1 Nov 1995 17:18:01 -0600 (CST)
From: Ben Lindstrom <mouring@netnet.net>
To: Alligator Descartes <descarte@hermetica.com>
cc: perldb-interest@fugue.com, dbi-dev@fugue.com, Tim.Bunce@ig.co.uk, 
    Alligator Descartes <descarte@fruitbat.mcqueen.com>
Subject: Re: DBD::Qbase 0.03
In-Reply-To: <199511012225.WAA29379@fruitbat.mcqueen.com>
Message-ID: <Pine.SUN.3.91.951101165703.11167C-100000@netnet1.netnet.net>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Wed, 1 Nov 1995, Alligator Descartes wrote:

> 
> I've just taken a quick peek at the code. Some comments:
> 
> 	o Your build instructions are slightly odd in that you suggest 
> 	  building DBD::Qbase within the perl5 source tree. DBI and the other
> 	  DBDs state you *shouldn't* build within the perl5 source tree.
> 
Since the DBD is built using Objective-Cism it does not currently lend 
itself being dynamicaly loaded. I've spent 20 to 30 hours of compiling
and recompiling and modifying to try and make it work, and I've currently
given  up...I'm not sure if one can staticly compile the DBD and dynamicly
compile the DBI.  If you would  have read the TODO it would have  stated
this problem.

It's something I don't have time to play with due  to  dead lines, but from
what I've heard  from people in the NeXT  comunity it's a problem with 
Perl's lack of knowledge of Objective-C.

> 	o You don't appear to be using any of the structures Tim has put in
> 	  place for the purpose of using!
> 
I know, the structures go hand and hand with multiply Cursors which is the
next project.   I felt it would be easier to debug a single staticly
built connect while I learned how DBD's were built.  Version .04 Alpha
will fix this drawback and support multiply cursors.


> 	  Eg, the imp_dbh structures are to be used for connections. The
> 	  imp_fbh structures for fetching data from the database. I don't see
> 	  them.
> 
> 	  Maybe Quickbase is odd that way, I don't know, but you're not
> 	  helping yourself by not using them!
> 
QuickBase is an Object.  So most of the structures are not needed...However
imp_dbh is needed for multiply database connects. (see above)

> I'd suggest ( again ) crefully reading the source code for DBD::Oracle and
> DBD::mSQL ( and maybe DBD::Informix ). Those clearly show the function
> flow for doing database stuff. Excluding binds, a normal session could be:
> 
binding is something I'm unsure of at the moment.  But this driver works
as a single cursor system.  I have small test databases to prove it.=)

> dbd_st_prepare is called next through the stubs in the XS code. This prepares
> the cursor for execution. In mSQL, the tests the statement for inserts et al,
> since they are handled differently than SELECTs. In DBD::Informix, it opens
> a cursor with the SQL provided.
> 
Correct me if  I'm  wrong but prepare takes as it's arguement an SQL 
statement.  Correct?  (Note: I'm leaving out bind shortcuts for the 
moment  =)    QuickBase takes as it's arguement SQL/Transcation commands.
So the only thing that seems to be missing is multiply-cursors (coming) and
user define binds/shortcuts.

> dbd_describe I regard as the guts of the driver's fetch functionality. This
> reads the structures of the data returned by the cursor and creates SVs which
> are the data types that perl can cope with. This routine doesn't appear to
> exist in your code. 
> 
That is becuase currently...(and might be very improper) split between 
the execute comand (see the  for (....) [qb bindStr...] for binding 
string pointers to the internal QuickBase Object) and in fetch 
(does an newsSVpv/av_push for each column so it can be returned).

> Hope this helps a bit.
> 

=) Yes it does. It conforms most of the things that the DBD-QBase lacks
that I know about. And also helps me to verify that changes need to be
made before the next release.

Sorry if the current version of the driver looks a bit strange compared to
mSQL, Oracle, but most of the deep database work is hidden via Objective-C.

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <10903-24@oink>;
          Thu, 2 Nov 1995 07:08:31 +0000
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 02 Nov 95 01:45:58 GMT
Received: from relay-4.mail.demon.net by punt-2.mail.demon.net id ae23556;
          2 Nov 95 1:45 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <10640-0@frigate.doc.ic.ac.uk>; Thu, 2 Nov 1995 00:51:40 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA07866 for perldb-interest-real; Wed, 1 Nov 1995 15:17:20 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netnet1.netnet.net (netnet1.netnet.net [198.70.64.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA07861;
          Wed, 1 Nov 1995 15:17:15 -0800
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id RAA15312; Wed, 1 Nov 1995 17:18:01 -0600
Date: Wed, 1 Nov 1995 17:18:01 -0600 (CST)
From: Ben Lindstrom <mouring@netnet.net>
To: Alligator Descartes <descarte@hermetica.com>
cc: perldb-interest@fugue.com, dbi-dev@fugue.com, Tim.Bunce@ig.co.uk, 
    Alligator Descartes <descarte@fruitbat.mcqueen.com>
Subject: Re: DBD::Qbase 0.03
In-Reply-To: <199511012225.WAA29379@fruitbat.mcqueen.com>
Message-ID: <Pine.SUN.3.91.951101165703.11167C-100000@netnet1.netnet.net>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Wed, 1 Nov 1995, Alligator Descartes wrote:

> 
> I've just taken a quick peek at the code. Some comments:
> 
> 	o Your build instructions are slightly odd in that you suggest 
> 	  building DBD::Qbase within the perl5 source tree. DBI and the other
> 	  DBDs state you *shouldn't* build within the perl5 source tree.
> 
Since the DBD is built using Objective-Cism it does not currently lend 
itself being dynamicaly loaded. I've spent 20 to 30 hours of compiling
and recompiling and modifying to try and make it work, and I've currently
given  up...I'm not sure if one can staticly compile the DBD and dynamicly
compile the DBI.  If you would  have read the TODO it would have  stated
this problem.

It's something I don't have time to play with due  to  dead lines, but from
what I've heard  from people in the NeXT  comunity it's a problem with 
Perl's lack of knowledge of Objective-C.

> 	o You don't appear to be using any of the structures Tim has put in
> 	  place for the purpose of using!
> 
I know, the structures go hand and hand with multiply Cursors which is the
next project.   I felt it would be easier to debug a single staticly
built connect while I learned how DBD's were built.  Version .04 Alpha
will fix this drawback and support multiply cursors.


> 	  Eg, the imp_dbh structures are to be used for connections. The
> 	  imp_fbh structures for fetching data from the database. I don't see
> 	  them.
> 
> 	  Maybe Quickbase is odd that way, I don't know, but you're not
> 	  helping yourself by not using them!
> 
QuickBase is an Object.  So most of the structures are not needed...However
imp_dbh is needed for multiply database connects. (see above)

> I'd suggest ( again ) crefully reading the source code for DBD::Oracle and
> DBD::mSQL ( and maybe DBD::Informix ). Those clearly show the function
> flow for doing database stuff. Excluding binds, a normal session could be:
> 
binding is something I'm unsure of at the moment.  But this driver works
as a single cursor system.  I have small test databases to prove it.=)

> dbd_st_prepare is called next through the stubs in the XS code. This prepares
> the cursor for execution. In mSQL, the tests the statement for inserts et al,
> since they are handled differently than SELECTs. In DBD::Informix, it opens
> a cursor with the SQL provided.
> 
Correct me if  I'm  wrong but prepare takes as it's arguement an SQL 
statement.  Correct?  (Note: I'm leaving out bind shortcuts for the 
moment  =)    QuickBase takes as it's arguement SQL/Transcation commands.
So the only thing that seems to be missing is multiply-cursors (coming) and
user define binds/shortcuts.

> dbd_describe I regard as the guts of the driver's fetch functionality. This
> reads the structures of the data returned by the cursor and creates SVs which
> are the data types that perl can cope with. This routine doesn't appear to
> exist in your code. 
> 
That is becuase currently...(and might be very improper) split between 
the execute comand (see the  for (....) [qb bindStr...] for binding 
string pointers to the internal QuickBase Object) and in fetch 
(does an newsSVpv/av_push for each column so it can be returned).

> Hope this helps a bit.
> 

=) Yes it does. It conforms most of the things that the DBD-QBase lacks
that I know about. And also helps me to verify that changes need to be
made before the next release.

Sorry if the current version of the driver looks a bit strange compared to
mSQL, Oracle, but most of the deep database work is hidden via Objective-C.

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <10903-33@oink>;
          Thu, 2 Nov 1995 07:09:56 +0000
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 02 Nov 95 01:46:08 GMT
Received: from relay-4.mail.demon.net by punt-2.mail.demon.net id aj23556;
          2 Nov 95 1:45 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <09037-0@frigate.doc.ic.ac.uk>; Wed, 1 Nov 1995 23:51:43 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA07356 for perldb-interest-real; Wed, 1 Nov 1995 13:48:40 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA07347 
          for <perldb-interest@fugue.com>; Wed, 1 Nov 1995 13:48:07 -0800
Received: by relay-4.mail.demon.net id sg.ab07018; 1 Nov 95 21:43 GMT
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ak05338;
          1 Nov 95 21:23 GMT
Received: from relay-4.mail.demon.net by relay-3.mail.demon.net id aa17534;
          1 Nov 95 21:19 GMT
Received: from toad by oink with SMTP (PP) id <07787-0@oink>;
          Wed, 1 Nov 1995 20:50:57 +0000
Received: by toad (5.0/SMI-SVR4) id AA02021; Wed, 1 Nov 1995 20:50:36 +0000
Date: Wed, 1 Nov 1995 20:50:36 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511012050.AA02021@toad>
To: perldb-interest@fugue.com
Subject: Update
X-Sun-Charset: US-ASCII
content-length: 380
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424

Just a quickie before I go away for a few days (till Tuesday).

I did actually make a release last week (!) but our ftp server was,
and still is, down. I won't tease you with the Changes (they were
minor tidy-ups anyway).

Meanwhile I've pressed ahead and I hope to release the Oraperl
emulation (only) as a beta after just one more alpha release.

Till next week (or so :)

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <10902-40@oink>;
          Thu, 2 Nov 1995 07:11:21 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 02 Nov 95 04:01:49 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa18161;
          2 Nov 95 4:00 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <14542-0@frigate.doc.ic.ac.uk>; Thu, 2 Nov 1995 03:50:31 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA08569 for dbi-dev-real; Wed, 1 Nov 1995 18:01:26 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from filoli.filoli.com (filoli.com [204.162.0.10]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id SAA08565 
          for <dbi-dev@fugue.com>; Wed, 1 Nov 1995 18:01:24 -0800
Received: from sunspot.filoli.com (root@sunspot.filoli.com [204.162.1.17]) 
          by filoli.filoli.com (8.6.10/8.6.9) with ESMTP id SAA27015;
          Wed, 1 Nov 1995 18:03:03 -0800
Received: from orac.filoli.com (orac.filoli.com [204.162.1.137]) 
          by sunspot.filoli.com (8.6.12/8.6.9) with SMTP id SAA20366;
          Wed, 1 Nov 1995 18:02:56 -0800
Message-Id: <199511020202.SAA20366@sunspot.filoli.com>
Received: by orac.filoli.com (NX5.67e/NX3.0X) id AA12833;
          Wed, 1 Nov 95 18:02:46 -0800
Mime-Version: 1.0 (NeXT Mail 3.3 v118.2)
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Original-Received: by NeXT.Mailer (1.118.2)
PP-warning: Illegal Received field on preceding line
From: George Johnston <gj@filoli.com>
Date: Wed, 1 Nov 95 18:02:43 -0800
To: dbi-dev@fugue.com
Subject: Re: DBD::Qbase 0.03
Cc: Alligator Descartes <descarte@hermetica.com>, Tim.Bunce@ig.co.uk, 
    Ben Lindstrom <mouring@netnet.net>
References: <Pine.SUN.3.91.951101165703.11167C-100000@netnet1.netnet.net>

Yes, Alligator you are right, we haven't used the internal stuff.  =
I had a quick deadline and am totally new to perl internals.  I am =
impressed by its used of memory handles and I need to learn the =
nuances of  when one uses sv_newmortal vs newSViv .

Once I am familiar with the memory allocation and release routines =
and knowing when to call which ones where, then I can use those =
impish things to keep track of the connection information which =
(because it is an object pointer as Ben pointed out) is trivial to =
keep track of once I know where to put it without stepping on =
memory that DBI is using for its purposes.  Your email has gone a =
long way to showing some of these nuances.  Further enlightenment =
(or a pointer to such) would be greatly appreciated.

Because QuickBase is Objective-C then perlmain.c needs to be =
compiled with the -ObjC option.  I know for my users of =
perl/QuickBase it was much more important for them to be able to =
use QuickBase than to have it dynamically loaded thus I spent no =
cycles on the dynamic loading problem especially since the Obj-C =
runtime (I believe) needs to be linked in statically.

Thanks for the code review and I know I will have more questions.

George



---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <17121-38@oink>;
          Fri, 3 Nov 1995 07:10:16 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Thu, 02 Nov 95 23:44:23 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa03575;
          2 Nov 95 23:43 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA12225 for dbi-dev-real; Thu, 2 Nov 1995 14:02:55 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA12221 
          for <dbi-dev@fugue.com>; Thu, 2 Nov 1995 14:02:51 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id WAA09605; Thu, 2 Nov 1995 22:00:30 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511022200.WAA09605@fruitbat.mcqueen.com>
Subject: Re: DBD::Qbase 0.03
To: George Johnston <gj@filoli.com>
Date: Thu, 2 Nov 1995 22:00:29 +0000 (GMT)
Cc: dbi-dev@fugue.com
In-Reply-To: <199511020202.SAA20366@sunspot.filoli.com> from "George Johnston" at Nov 1, 95 06:02:43 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 956


> Because QuickBase is Objective-C then perlmain.c needs to be =
> compiled with the -ObjC option.  I know for my users of =
> perl/QuickBase it was much more important for them to be able to =
> use QuickBase than to have it dynamically loaded thus I spent no =
> cycles on the dynamic loading problem especially since the Obj-C =
> runtime (I believe) needs to be linked in statically.

Yes, but if you specify:

	make LINKTYPE=static

on building just the DBD::QBase module, surely that would allow you to load
the other modules dynamically, no? Maybe not.....

8-)

> Thanks for the code review and I know I will have more questions.

Sure thing. I'm usually fairly helpful.....8-)

I'm going to tidy up my "How-to-write-a-driver" document in the next day or
so and make that available on Hermetica's WWW, so take a look at that....

> George

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <17121-49@oink>;
          Fri, 3 Nov 1995 07:11:36 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 03 Nov 95 00:11:41 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa16732;
          3 Nov 95 0:10 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA12329 for dbi-dev-real; Thu, 2 Nov 1995 14:34:25 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netnet1.netnet.net (netnet1.netnet.net [198.70.64.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA12325 
          for <dbi-dev@fugue.com>; Thu, 2 Nov 1995 14:34:21 -0800
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id QAA12851; Thu, 2 Nov 1995 16:36:31 -0600
Date: Thu, 2 Nov 1995 16:36:31 -0600 (CST)
From: Ben Lindstrom <mouring@netnet.net>
To: Alligator Descartes <descarte@hermetica.com>
cc: George Johnston <gj@filoli.com>, dbi-dev@fugue.com
Subject: Re: DBD::Qbase 0.03
In-Reply-To: <199511022200.WAA09605@fruitbat.mcqueen.com>
Message-ID: <Pine.SUN.3.91.951102163351.12582B-100000@netnet1.netnet.net>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII



On Thu, 2 Nov 1995, Alligator Descartes wrote:

> 
> > Because QuickBase is Objective-C then perlmain.c needs to be =
> > compiled with the -ObjC option.  I know for my users of =
> > perl/QuickBase it was much more important for them to be able to =
> > use QuickBase than to have it dynamically loaded thus I spent no =
> > cycles on the dynamic loading problem especially since the Obj-C =
> > runtime (I believe) needs to be linked in statically.
> 
> Yes, but if you specify:
> 
> 	make LINKTYPE=static
> 
> on building just the DBD::QBase module, surely that would allow you to load
> the other modules dynamically, no? Maybe not.....
> 
I'll look into it this weekend when I have my next block of time for working
on the code is. 

> > Thanks for the code review and I know I will have more questions.
> 
> Sure thing. I'm usually fairly helpful.....8-)
> 
> I'm going to tidy up my "How-to-write-a-driver" document in the next day or
> so and make that available on Hermetica's WWW, so take a look at that....
> 
That was something I was thinking about as I was learning..."Gee...it would
be nice to write down what I'm doing and later go back and put it in some
decent order."  Oh well..I'll leave it for the more experienced hackers.
I'm just a poor college student learning to be a Network Admin. =)
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <21809-20@oink>;
          Fri, 3 Nov 1995 17:03:46 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 03 Nov 95 13:11:29 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa21120;
          3 Nov 95 13:10 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA15980 for dbi-announce-real; Fri, 3 Nov 1995 03:05:48 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from localhost (mellon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          with SMTP id DAA15975 for <dbi-announce@fugue.com>;
          Fri, 3 Nov 1995 03:05:45 -0800
Message-Id: <199511031105.DAA15975@toccata.fugue.com>
To: dbi-announce@fugue.com
Subject: New DBI Mailing List administration interface...
Date: Fri, 03 Nov 1995 03:05:44 -0800
From: Ted Lemon <mellon@fugue.com>


			 Power To The People

I'm tired of hacking on my mailing list database, so I sat down over
the course of the past two days and hacked together a WorldWide Web
CGI Script that can be used to subscribe and unsubscribe from the
DBI mailing lists.

If you don't have WWW access, you can still send administrivia
requests to dbi-request@fugue.com, but if you do have WWW access, I'd
appreciate it if you'd use the Web page instead.

The URL is http://www.fugue.com/dbi/.

If you have any comments on how the thing works, please let me know.
I'm feeling kind of smug about it right now, so somebody should pop my
balloon ASAP.   :')

BTW, it uses forms, so it looks really ugly if you're running Lynx.
When I feel ambitious, I'll conditionalize that, but for now, you're
kind of stuck with it.   Sorry about that.   You can still use it from
Lynx if you're clever and patient.

			       _MelloN_
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <24602-3@oink>;
          Fri, 3 Nov 1995 21:04:20 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Fri, 03 Nov 95 19:55:49 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa26853;
          3 Nov 95 19:53 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA16864 for dbi-users-real; Fri, 3 Nov 1995 09:55:17 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fns.com (ops1-fddi.fns.com [168.127.10.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id JAA16860 
          for <dbi-users@fugue.com>; Fri, 3 Nov 1995 09:55:15 -0800
From: Scott=Alexander%se%FNS@fnsvines1.fns.com
Received: from fnsvines1.fns.com by fns.com (5.0/SMI-SVR4) id AA28800;
          Fri, 3 Nov 1995 12:58:02 +0500
Message-Id: <9511031758.AA28800@fns.com>
Received: by fnsvines1.fns.com with VINES ; Fri, 3 Nov 95 13:00:22 EST
Date: Fri, 3 Nov 95 13:00:08 EST
Subject: How to trap database error messages?
To: dbi-users@fugue.com
content-length: 268

Can someone provide me with example code on how to trap database error 
messages. I'm trying to trap a unique constraint message when inserting 
records into an Oracle db. It seems by default to output the message to the 
display.

Thanks,
Scott Alexander
sga@fns.com
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01930-75@oink>;
          Mon, 6 Nov 1995 07:17:28 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 05 Nov 95 13:19:15 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa21652;
          5 Nov 95 13:18 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA22401 for dbi-announce-real; Sun, 5 Nov 1995 04:20:09 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id EAA22380;
          Sun, 5 Nov 1995 04:13:30 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id MAA20599; Sun, 5 Nov 1995 12:11:07 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511051211.MAA20599@fruitbat.mcqueen.com>
Subject: DBD::mSQL-0.60pl7 released
To: dbi-dev@fugue.com, dbi-announce@fugue.com, dbi-users@fugue.com, 
    dbi-users@fugue.com, msql-list@bunyip.com, k@anna.mind.de, 
    Sven Verdoolaege <SVEN.VERDOOLAEGE@student.kuleuven.ac.be>
Date: Sun, 5 Nov 1995 12:11:05 +0000 (GMT)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 526


The new release of DBD::mSQL ( 0.60pl7 ) has been released. This release is
yet another developers release since I think Tim's planning to update the DBI
code again. Thus, I'm holding off going to 0.61 until:

	a) The new driver works
	b) The new DBI stuff is out

Anyway, some stuff has changed, and there's more features now, so go get!

Further information at:

	http://www.hermetica.com/technologia/DBI

Regards.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01930-76@oink>;
          Mon, 6 Nov 1995 07:17:33 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 05 Nov 95 13:19:17 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa21704;
          5 Nov 95 13:18 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA22384 for perldb-interest-real; Sun, 5 Nov 1995 04:13:34 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id EAA22380;
          Sun, 5 Nov 1995 04:13:30 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id MAA20599; Sun, 5 Nov 1995 12:11:07 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511051211.MAA20599@fruitbat.mcqueen.com>
Subject: DBD::mSQL-0.60pl7 released
To: dbi-dev@fugue.com, dbi-announce@fugue.com, dbi-users@fugue.com, 
    dbi-users@fugue.com, msql-list@bunyip.com, k@anna.mind.de, 
    Sven Verdoolaege <SVEN.VERDOOLAEGE@student.kuleuven.ac.be>
Date: Sun, 5 Nov 1995 12:11:05 +0000 (GMT)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 526


The new release of DBD::mSQL ( 0.60pl7 ) has been released. This release is
yet another developers release since I think Tim's planning to update the DBI
code again. Thus, I'm holding off going to 0.61 until:

	a) The new driver works
	b) The new DBI stuff is out

Anyway, some stuff has changed, and there's more features now, so go get!

Further information at:

	http://www.hermetica.com/technologia/DBI

Regards.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01930-78@oink>;
          Mon, 6 Nov 1995 07:17:44 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 05 Nov 95 13:19:18 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id ab21766;
          5 Nov 95 13:18 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA22406 for dbi-dev-real; Sun, 5 Nov 1995 04:21:33 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id EAA22380;
          Sun, 5 Nov 1995 04:13:30 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id MAA20599; Sun, 5 Nov 1995 12:11:07 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511051211.MAA20599@fruitbat.mcqueen.com>
Subject: DBD::mSQL-0.60pl7 released
To: dbi-dev@fugue.com, dbi-announce@fugue.com, dbi-users@fugue.com, 
    dbi-users@fugue.com, msql-list@bunyip.com, k@anna.mind.de, 
    Sven Verdoolaege <SVEN.VERDOOLAEGE@student.kuleuven.ac.be>
Date: Sun, 5 Nov 1995 12:11:05 +0000 (GMT)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 526


The new release of DBD::mSQL ( 0.60pl7 ) has been released. This release is
yet another developers release since I think Tim's planning to update the DBI
code again. Thus, I'm holding off going to 0.61 until:

	a) The new driver works
	b) The new DBI stuff is out

Anyway, some stuff has changed, and there's more features now, so go get!

Further information at:

	http://www.hermetica.com/technologia/DBI

Regards.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01930-80@oink>;
          Mon, 6 Nov 1995 07:17:56 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Sun, 05 Nov 95 13:22:41 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa22975;
          5 Nov 95 13:22 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA22391 for dbi-users-real; Sun, 5 Nov 1995 04:18:29 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id EAA22380;
          Sun, 5 Nov 1995 04:13:30 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id MAA20599; Sun, 5 Nov 1995 12:11:07 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511051211.MAA20599@fruitbat.mcqueen.com>
Subject: DBD::mSQL-0.60pl7 released
To: dbi-dev@fugue.com, dbi-announce@fugue.com, dbi-users@fugue.com, 
    dbi-users@fugue.com, msql-list@bunyip.com, k@anna.mind.de, 
    Sven Verdoolaege <SVEN.VERDOOLAEGE@student.kuleuven.ac.be>
Date: Sun, 5 Nov 1995 12:11:05 +0000 (GMT)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 526


The new release of DBD::mSQL ( 0.60pl7 ) has been released. This release is
yet another developers release since I think Tim's planning to update the DBI
code again. Thus, I'm holding off going to 0.61 until:

	a) The new driver works
	b) The new DBI stuff is out

Anyway, some stuff has changed, and there's more features now, so go get!

Further information at:

	http://www.hermetica.com/technologia/DBI

Regards.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <18624-1@oink>;
          Wed, 8 Nov 1995 02:16:38 +0000
Received: from punt-2.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 08 Nov 95 00:26:34 GMT
Received: from relay-4.mail.demon.net by punt-2.mail.demon.net id aa03237;
          8 Nov 95 0:25 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA00920 for dbi-dev-real; Tue, 7 Nov 1995 14:27:45 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from wpgate.hqpacaf.af.mil (WPGATE.hqpacaf.af.mil [131.38.122.206]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id OAA00912 
          for <dbi-dev@fugue.com>; Tue, 7 Nov 1995 14:27:40 -0800
Received: from HQPACAF-Message_Server by wpgate.hqpacaf.af.mil 
          with Novell_GroupWise; Tue, 07 Nov 1995 12:12:19 -1000
Message-Id: <s09f4d22.061@wpgate.hqpacaf.af.mil>
X-Mailer: Novell GroupWise 4.1
Date: Tue, 07 Nov 1995 12:09:52 -1000
From: Damon LaCaille <LACAILLD@wpgate.hqpacaf.af.mil>
To: dbi-dev@fugue.com
Subject: unsubscribe Damon L. LaCaille

	lacailld@wpgate.hqpacaf.af.mil

unsubscribe Damon L. LaCaille lacailld@wpgate.hqpacaf.af.mil


---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <18625-8@oink>;
          Wed, 8 Nov 1995 02:17:07 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 08 Nov 95 00:20:50 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa21241;
          8 Nov 95 0:19 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa01336;
          8 Nov 95 0:18 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA00138 for dbi-dev-real; Tue, 7 Nov 1995 09:26:34 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id JAA00123 
          for <dbi-dev@fugue.com>; Tue, 7 Nov 1995 09:26:17 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ae21082;
          7 Nov 95 17:01 GMT
Received: from relay-4.mail.demon.net by relay-3.mail.demon.net id msg.ag00212;
          7 Nov 95 17:01 GMT
Received: from toad by oink with SMTP (PP) id <14967-0@oink>;
          Tue, 7 Nov 1995 16:23:59 +0000
Received: by toad (5.0/SMI-SVR4) id AA08604; Tue, 7 Nov 1995 16:23:36 +0000
Date: Tue, 7 Nov 1995 16:23:36 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511071623.AA08604@toad>
To: dbi-dev@fugue.com
Subject: Re: DBD::Qbase 0.03
X-Sun-Charset: US-ASCII
content-length: 162
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424

> From: Ben Lindstrom <mouring@netnet.net>
> 
> I'm not sure if one can staticly compile the DBD and dynamicly
> compile the DBI.

If you can't it's a bug.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <18625-10@oink>;
          Wed, 8 Nov 1995 02:17:16 +0000
Received: from punt-1.mail.demon.net via puntmail for dbperl@ignite.demon.co.uk;
          Wed, 08 Nov 95 00:42:42 GMT
Received: from relay-4.mail.demon.net by punt-1.mail.demon.net id aa29727;
          8 Nov 95 0:41 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA00820 for dbi-users-real; Tue, 7 Nov 1995 14:01:04 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA00816 
          for <dbi-users@fugue.com>; Tue, 7 Nov 1995 14:01:02 -0800
Received: by gw.home.vix.com id AA06325; Tue, 7 Nov 95 14:01:44 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ai14005;
          7 Nov 95 21:55 GMT
Received: from relay-4.mail.demon.net by relay-3.mail.demon.net id sg.ai06695;
          7 Nov 95 21:55 GMT
Received: from toad by oink with SMTP (PP) id <17258-0@oink>;
          Tue, 7 Nov 1995 21:48:53 +0000
Received: by toad (5.0/SMI-SVR4) id AA09164; Tue, 7 Nov 1995 21:48:30 +0000
Date: Tue, 7 Nov 1995 21:48:30 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511072148.AA09164@toad>
To: kerce@scri.fsu.edu
Subject: Re: Well done!
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
Content-Length: 1515
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Kingsley Kerce <kerce@scri.fsu.edu>
> 
> If you're getting sick of bug reports, here's a success report.

Yippe!

> Platform:
> AIX 3.2.5 on RS/6000 Model 375
> Oracle7 Server Release 7.1.3.0.0 - Production Release
> With the distributed option
> 
> I picked up DBD::Oracle 0.25 and DBI 0.63 via the following URL:
> http://www.hermetica.com/technologia/DBI/DBD/index.html
> 
> I had installed perl 5.001m a few weeks back, so I followed your
> READMEs in DBI and Oracle, testing and installing with no problems at
> all.
> 
> Next, the big test, as far as I'm concerned: porting a Web-database
> gateway based on oraperl (perl 4.036) to DBD::Oracle.  I'd coded such
> a gateway a month or so back and it's been running fine since.  Well,
> I simply changed the CGI scripts' #! paths to point to the perl5.001m
> installation (instead of oraperl/perl 4.036) and inserted the
> following lines in a commonly "require"d file:
> 
> 	$ENV{ORACLE_HOME} = '/usr/oracle' unless $ENV{ORACLE_HOME};
> 
> 	eval 'use Oraperl; 1' || die $@ if $] >= 5;
> 
> and IT WORKED ON FIRST TRY!!!
> 
> Congratulations,
> Kingsley Kerce                           Systems Development and Administration
> Supercomputer Computations Research Institute                kerce@scri.fsu.edu
> Florida State University                        http://www.scri.fsu.edu/~kerce/
> Tallahassee, FL, USA  32306             Obtain my PGP public key via finger/WWW

The next one will fix more of the bugs you've not yet tripped up on!

:-)

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01286-29@oink>;
          Thu, 9 Nov 1995 17:01:04 +0000
Received: from punt-1.mail.demon.net with mailstore id 815931629:08951:0;
          Thu, 09 Nov 95 15:40:29 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa08882;
          9 Nov 95 15:40 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa05519;
          9 Nov 95 15:39 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id CAA05421 for dbi-users-real; Thu, 9 Nov 1995 02:09:46 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id CAA05417 
          for <dbi-users@fugue.com>; Thu, 9 Nov 1995 02:09:40 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id KAA17548; Thu, 9 Nov 1995 10:07:04 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511091007.KAA17548@fruitbat.mcqueen.com>
Subject: Re: DBD::mSQL
To: Randy Terbush <randy@zyzzyva.com>
Date: Thu, 9 Nov 1995 10:07:03 +0000 (GMT)
Cc: dbi-users@fugue.com
In-Reply-To: <199511090357.VAA29787@sierra.zyzzyva.com> from "Randy Terbush" at Nov 8, 95 09:57:59 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 7959


[ Please note! Comments most welcome! I'll incorporate this stuff into a
  WWW page soon! -- A ]

> I don't suppose you have a snippet of code to show how to do a
> submit with mSQL and DBD?

I'm going to assume you mean through a WWW form? Anyway, it's much of a 
muchness. Try this ( off the top of my head! ):

-----------------8<----------------------------8<----------------------
#!/usr/bin/perl -w
#

use DBI;			# Load the DBI Switch
$drh = DBI->install_driver( 'mSQL' );
				# Load the mSQL driver. Returns a driver
				# - handle in $drh
$dbh = $drh->connect( '', 'rubbish' );
				# Connects via the mSQL driver ( as designated
				# - by the driver handle $drh ) to a database
				# - on the local machine called 'rubbish'.
die "Cannot connect: $DBI::errstr\n"
    unless $dbh;
				# Check we've connected. Die if not.

&ReadParse;			# A routine to parse a URL. See CGI.pm

foreach $arg ( keys %in ) {	# The args are returned in a hash %in
    print "$arg: $in{$arg}<P>\n";
  }

# Assume that we've submitted a form with the following fields:
#
#     o Name
#     o Email address
#
# Assume we have a table in the 'rubbish' database called 'cgistuff' with the
# - following fields:
#
#     o name CHAR(64)
#     o email CHAR(128)

$cursor = $dbh->do( "			# Insert a row of data into the table
    INSERT INTO cgistuff VALUES 	# - via the database handle returned
        ( $in{'name'}, $in{'email'} )" );	# - above	

# A $dbh->do doesn't require an execute or finish phase. It just happens
# - atomically.

$dbh->disconnect;		# Disconnect the database handle. This actually
				# - disconnects you from the database specified
				# - by $dbh

exit 0;
--------------------------8<--------------------------8<---------------------

> I am confused by the code. Where do I find a complete list of the
> functions that are available to me.

The 'test.pl' script in 0.60pl7 exercises all the functions in the driver. A
basic problem to using drivers is understanding the architecture, which
I'll take a moment to try and explain:

		$drh---------------------		Driver handles
		|			|
		$dbh---$dbh---$dbh---$dbh		Database handles
		|       |       |      |
   $sth---$sth--+  $sth-+  $sth-+ $sth-+-$sth		Statement handles

( Apologies for the bad drawing! ). What is says though is:

	o Before you do operations with a certain type of database you load
	  the database driver, eg, if you want to use mSQL you call:

		$drh = DBI->install_driver( 'mSQL' );

	  If we thern wished to load the Oracle driver, another line:

		$oradrh = DBI->install_driver( 'Oracle' );

	  Notice they are assigned to different variables. The driver for each
	  database *type* ( Oracle, mSQL ) is loaded only ONCE per script.
	  Hence the one $drh above. All operations on that type of database
	  are invoked indirectly through the $drh ( or DRIVER HANDLE ).

	o Now that we've got a driver loaded, we can start doing things with
	  databases of that type, eg, connect! Obviously you have to connect to
	  a specific database before you can start doing stuff, so these
	  functions are called against the DRIVER HANDLE, eg:

		$dbh = $drh->connect( '', 'rubbish' );

	  This connects you to an mSQL database ( as defined by the driver 
	  handle you use to connect ), identified by the arguments passed to
	  the 'connect' call. If successfull, it returns a variable $dbh
	  ( DATABASE HANDLE ).

	  The differences between a DRIVER HANDLE and a DATABASE HANDLE is
   	  that the driver handle is independent of actual databases. It just
	  tells the DBI Switch which set of lower-level database routines to
	  call, eg, the Switch thinks "I've just had a connect request with
	  these arguments, and it's via the $drh driver handle. Now, the $drh
    	  driver handle is an mSQL one, so we'll call the mSQL connect primitive
	  to do the actual work."

	  Previously, we only had *one* driver handle per database type. 
	  Database handles are much more plentiful. You can have as many
  	  database handles as you need within one driver handle, eg:

		$dbh1 = $drh->connect( '', 'rubbish1' );
		$dbh2 = $drh->connect( '', 'rubbish2' );
		$dbh3 = $drh->connect( 'someotherhost', 'pants1' );
	 	$dbh4 = $drh->connect( 'someotherhost2', 'pants2' );

	  Connects us simultaneously to 4 different databases ( all mSQL, using
	  the *one* driver handle ). These database are located on 3 different
	  physical machines. This can be done within one script. 

	o Statement handles are another level down. Think of the whole
	  structure as a tree. You can one DRIVER HANDLE, but many DATABASE
	  HANDLES from that, and many STATEMENT HANDLES from *each* DATABASE
	  HANDLE. Yes?

	  Good! Now, a statement handle is a handle created on operations within
	  the driver which act on statements! No, really! A statement is an
	  operation on actual data within tables ( usually ), eg,

		$sth = $dbh1->do( "DELETE FROM table1" );

	  This executes the statement "DELETE FROM table1" in the database
	  indicated previously by $dbh1 ( from above, the one on 'localhost'
          called 'rubbish1'. We could now do:

		$sth = $dbh4->do( "UPDATE cgistuff SET email = ''" );

	  In our CGI example, which would clear all the email fields.
	  As in the relationship between DATABASE HANDLES and DRIVER HANDLES
	  of the many to one, it exists between STATEMENT HANDLES and DATABASE
	  HANDLES.

	  Another aspect of STATEMENT HANDLES is the 'cursor', eg:

		$sth = $dbh1->prepare( "SELECT id, name, email 
                                        FROM madeuptable" );
		$sth->execute;
		while ( @row = $sth->fetchrow ) {
		    print "Row: @row\n";
 	          }
 		$sth->finish;

	  This chunk of code prepares a STATEMENT HANDLE $sth with regard to
	  the statement "SELECT .....". If the database allows you to prepare
	  it ( $sth is returned defined and not undef ), ( a successfull
	  prepare implies the field name are correct, the database is 
	  connectable still and the table exists ), then you can continue
	  working with that statement.

	  The second part of using a cursor is to EXECUTE the statement. This
	  sends it to the database engine to return the rows into a cache. At
	  this point, you specifiy bind variables ( if any ), but these don't
	  exist in DBD::mSQL, so don't worry!

	  After a successful execution, the data is ready to fetch from the
	  database. We can now execute a 'while' loop calling 'fetchrow'
	  against the STATEMENT HANDLE. If the fetchrow returns 'undef', the
	  loop will terminate. The 'fetchrow' will return undef when there's
	  no more data to be fetched.

	  A LIST is returned from fetchrow. In the example above, we're 
	  fetching all the fields into a LIST, but you could have done:

	 	while ( ( $id, $name, $email ) = $sth->fetchrow ) 

	  and fetched the fields directly into separate variables.

	  The final call is: 'finish' which closes a cursor and is called
	  usually after all the rows have been fetched. This frees up the 
	  memory used by the cursor.

> Thanks for your help

Hope this helps!

Again, with this information in mind, re-read the 'test.pl' script with
DBD::mSQL-0.60pl7. It'll show which functions are callable against which sort
of HANDLE. Although here's another off the top of my head list. I may have
missed one or two.....

$drh is a DRIVER HANDLE, $dbh a DATABASE HANDLE and $sth a STATEMENT HANDLE.
@ary is a LIST, $scalar is an ordinary scalar, %hash is a hash. $rv is a
return value which is ignorable.
(*) means non-standard and mSQL specific

	Invoking through		Returns
	----------------		-------
	DBI->install_driver		$drh
	$drh->connect			$dbh
	$drh->func( '_ListDBs' )	@ary		*
	$drh->disconnect_all		?
	
	$dbh->func( '_ListTables' )	@ary		*
	$dbh->disconnect		$rv
	$dbh->do			$rv
	$dbh->prepare			$sth

	$sth->execute			$rv
	$sth->fetchrow			@ary
	$sth->finish			$rv

Regards.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05363-21@oink>;
          Fri, 10 Nov 1995 07:09:29 +0000
Received: from punt-1.mail.demon.net with mailstore id 815948860:08356:0;
          Thu, 09 Nov 95 20:27:40 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa08349;
          9 Nov 95 20:27 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa25024;
          9 Nov 95 20:26 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA06089 for dbi-users-real; Thu, 9 Nov 1995 09:58:24 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id JAA06085 
          for <dbi-users@fugue.com>; Thu, 9 Nov 1995 09:58:19 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ab08926;
          9 Nov 95 17:59 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa29508;
          9 Nov 95 17:59 GMT
Received: from toad by oink with SMTP (PP) id <02884-0@oink>;
          Thu, 9 Nov 1995 17:54:44 +0000
Received: by toad (5.0/SMI-SVR4) id AA12673; Thu, 9 Nov 1995 17:54:22 +0000
Date: Thu, 9 Nov 1995 17:54:22 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511091754.AA12673@toad>
To: randy@zyzzyva.com, descarte@hermetica.com
Subject: Re: DBD::mSQL
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 3746
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Alligator Descartes <descarte@hermetica.com>
> 
> [ Please note! Comments most welcome! I'll incorporate this stuff into a
>   WWW page soon! -- A ]
> 
> > I don't suppose you have a snippet of code to show how to do a
> > submit with mSQL and DBD?
> 
> I'm going to assume you mean through a WWW form? Anyway, it's much of a 
> muchness. Try this ( off the top of my head! ):
> 
> -----------------8<----------------------------8<----------------------
> #!/usr/bin/perl -w
> #
> 
> use DBI;			# Load the DBI Switch
> $drh = DBI->install_driver( 'mSQL' );
> 				# Load the mSQL driver. Returns a driver
> 				# - handle in $drh
> $dbh = $drh->connect( '', 'rubbish' );
> 				# Connects via the mSQL driver ( as designated
> 				# - by the driver handle $drh ) to a database
> 				# - on the local machine called 'rubbish'.
> die "Cannot connect: $DBI::errstr\n"
>     unless $dbh;
> 				# Check we've connected. Die if not.
> 
> &ReadParse;			# A routine to parse a URL. See CGI.pm

General CGI issues: Ideally you should send the Content-type header _first_
and redirect STDERR to STDOUT (and/or use Tom's CGI::ErrorWrap module).
That way any error with use/install/connect (which are _bound_ to happen)
will still generate some output for the user.

> $cursor = $dbh->do( "			# Insert a row of data into the table
>     INSERT INTO cgistuff VALUES 	# - via the database handle returned
>         ( $in{'name'}, $in{'email'} )" );	# - above	

*Always* test the return status.

It's almost certain that the default error handler in the DBI will *NOT*
output anything in future releases.

> 	o Before you do operations with a certain type of database you load
> 	  the database driver, eg, if you want to use mSQL you call:
> 
> 		$drh = DBI->install_driver( 'mSQL' );

I strongly recommend that you *don't* explicitly load drivers.

It's much better to use the Driver parameter to the DBI->connect() method.

> 
> 	  The differences between a DRIVER HANDLE and a DATABASE HANDLE is
>    	  that the driver handle is independent of actual databases. It just
> 	  tells the DBI Switch which set of lower-level database routines to
> 	  call, eg, the Switch thinks "I've just had a connect request with
> 	  these arguments, and it's via the $drh driver handle. Now, the $drh
>     	  driver handle is an mSQL one, so we'll call the mSQL connect primitive
> 	  to do the actual work."

Think Methods and Objects.

> 	o Statement handles are another level down. Think of the whole
> 	  structure as a tree. You can one DRIVER HANDLE, but many DATABASE
> 	  HANDLES from that, and many STATEMENT HANDLES from *each* DATABASE
> 	  HANDLE. Yes?
> 
> 	  Good! Now, a statement handle is a handle created on operations within
> 	  the driver which act on statements! No, really!

Not quite. A statement handle is a handle representing a 'prepared statement'.

> A statement is an
> 	  operation on actual data within tables ( usually ), eg,

Nope, it could be an 'alter session set foo=bar'. Think Generality.
I'd drop the sentance or put the usually upfront without the ().

> 		$sth = $dbh1->do( "DELETE FROM table1" );

Ooops. The do method does NOT return a handle. It 'does' the statement and
returns a status.

> 	  The second part of using a cursor is to EXECUTE the statement. This
> 	  sends it to the database engine to return the rows into a cache.

The engine may already have it (eg Oracle). Say "asks the engine to execute
the prepared statement".

Adding || die "..." to everything would set a good example.

> Hope this helps!

A *big* thankyou for doing all this Alligator! It really needs to be done.

> 	$drh->func( '_ListDBs' )	@ary		*
> 	$dbh->func( '_ListTables' )	@ary		*

These may have official methods very soon.

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <05362-22@oink>;
          Fri, 10 Nov 1995 07:09:30 +0000
Received: from punt-2.mail.demon.net with mailstore id 815960016:24260:1;
          Thu, 09 Nov 95 23:33:36 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa22940;
          9 Nov 95 23:33 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA06457 for dbi-users-real; Thu, 9 Nov 1995 13:13:16 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from srs.gov (bubba.srs.gov [192.33.240.5]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA06453 
          for <dbi-users@fugue.com>; Thu, 9 Nov 1995 13:12:23 -0800
From: james.taylor@srs.gov
Received: by srs.gov id AA08214 (InterLock SMTP Gateway 1.1 
          for dbi-users@fugue.com); Thu, 9 Nov 1995 16:12:02 -0500
Received: by srs.gov (Internal Mail Agent-1); Thu, 9 Nov 1995 16:12:02 -0500
Date: Thu, 9 Nov 1995 16:11:56 -0500
Message-Id: <199511092111.QAA04943@dark-knight.srs.gov>
To: Tim.Bunce@ig.co.uk
Subject: DBD::Oracle
Cc: dbi-users@fugue.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Content-Md5: pbzhVhIGjV9/TJgmd/61/A==

Tim,

I no longer need to make any changes to get DBD::Oracle to compile with =
Solaris=20
2.4 SPARCompiler C.  You might want to remove the note from the README =
file.

Thanks,

James
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05363-32@oink>;
          Fri, 10 Nov 1995 07:11:15 +0000
Received: from punt-1.mail.demon.net with mailstore id 815951457:00223:0;
          Thu, 09 Nov 95 21:10:57 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ab00107;
          9 Nov 95 21:10 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <10555-0@frigate.doc.ic.ac.uk>; Tue, 7 Nov 1995 23:49:25 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA00439 for dbi-dev-real; Tue, 7 Nov 1995 12:53:19 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from pilot.njin.net (pilot.njin.net [128.6.7.38]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA00435 
          for <dbi-dev@fugue.com>; Tue, 7 Nov 1995 12:53:16 -0800
Received: from localhost (phj@localhost) 
          by pilot.njin.net (8.6.12+bestmx+oldruq+newsunq+grosshack/8.6.12) 
          with ESMTP id PAA28099; Tue, 7 Nov 1995 15:55:28 -0500
Message-Id: <199511072055.PAA28099@pilot.njin.net>
To: dbi-dev@fugue.com
cc: phj@pilot.njin.net
Subject: sqlNet login
Date: Tue, 07 Nov 1995 15:55:25 -0500
From: "Patricia H. Ju" <phj@pilot.njin.net>


Hi all,

Sorry if this is inappropriate (I can't remember what is and what isn't)
or can be found elsewhere (tell me where!) but I have no idea how to
loginto another host's oracle server via Oracle DBI.  The
connect string should probably be:
	sqlplus mylogin/mypassword@T:the.server.com:database

?  but I'm not even sure about that, as I can't get this working at the
command line, even.

Help ?


Patricia
phj@pilot.njin.net
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05363-89@oink>;
          Fri, 10 Nov 1995 07:20:10 +0000
Received: from punt-1.mail.demon.net with mailstore id 815977100:07796:1;
          Fri, 10 Nov 95 04:18:20 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa07780;
          10 Nov 95 4:18 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA07091 for dbi-users-real; Thu, 9 Nov 1995 18:49:18 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from sierra.zyzzyva.com (root@ppp0.zyzzyva.com [198.183.2.50]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id SAA07087 
          for <dbi-users@fugue.com>; Thu, 9 Nov 1995 18:49:13 -0800
Received: from zyzzyva.com (randy@localhost.zyzzyva.com [127.0.0.1]) 
          by sierra.zyzzyva.com (8.6.12/8.6.11) with ESMTP id UAA17450;
          Thu, 9 Nov 1995 20:48:17 -0600
Message-Id: <199511100248.UAA17450@sierra.zyzzyva.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Subject: Re: DBD::mSQL
In-reply-to: Tim.Bunce's message of Thu, 09 Nov 1995 17:54:22 +0000. <9511091754.AA12673@toad>
Cc: dbi-users@fugue.com
X-uri: http://www.zyzzyva.com/
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Thu, 09 Nov 1995 20:48:09 -0600
From: Randy Terbush <randy@zyzzyva.com>


> 
> > 	o Before you do operations with a certain type of database you load
> > 	  the database driver, eg, if you want to use mSQL you call:
> > 
> > 		$drh = DBI->install_driver( 'mSQL' );
> 
> I strongly recommend that you *don't* explicitly load drivers.
> 
> It's much better to use the Driver parameter to the DBI->connect() method.

Could you give an example of the syntax for this? I cannot seem to
get it to work from the comments in the code.


> A *big* thankyou for doing all this Alligator! It really needs to be done.

A strong second. This is very helpful.




---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05636-47@oink>;
          Fri, 10 Nov 1995 07:20:11 +0000
Received: from punt-1.mail.demon.net with mailstore id 815977211:08217:1;
          Fri, 10 Nov 95 04:20:11 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa08174;
          10 Nov 95 4:20 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA07070 for perldb-interest-real; Thu, 9 Nov 1995 18:45:38 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id SAA07066 
          for <dbi-users@fugue.com>; Thu, 9 Nov 1995 18:45:29 -0800
Received: by gw.home.vix.com id AA13833; Thu, 9 Nov 95 18:47:45 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from cthulhu.engr.sgi.com by sgi.sgi.com 
          via ESMTP (950405.SGI.8.6.12/910110.SGI) id SAA27242;
          Thu, 9 Nov 1995 18:47:38 -0800
Received: from whitetiger.engr.sgi.com by cthulhu.engr.sgi.com 
          via ESMTP (950511.SGI.8.6.12.PATCH526/911001.SGI) id RAA14383;
          Thu, 9 Nov 1995 17:29:22 -0800
Received: by whitetiger.engr.sgi.com (940816.SGI.8.6.9/940406.SGI.AUTO) 
          id RAA05844; Thu, 9 Nov 1995 17:29:18 -0800
From: Todd Hoff <tmh@whitetiger.engr.sgi.com>
Message-Id: <9511091729.ZM5842@whitetiger.engr.sgi.com>
Date: Thu, 9 Nov 1995 17:29:16 -0800
X-Mailer: Z-Mail (3.2.0 26oct94 MediaMail)
To: dbi-users@vix.com
Subject: Oracle Login Problems
Cc: Tim.Bunce@ig.co.uk
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii

Congratulations on such an easy to install system, it is quite nice.
The only problem is i can't get it to work :-)

When i try to do a login i get this message:

Oraperl Emulation Interface version 1.21
Oracle Driver 1.20
DBI Switch by Tim Bunce, version 1.45

ERROR EVENT: DBI::db=HASH(0x100a75dc)->DBI::default_handler:
        1034 ORA-01034: ORACLE not available (DBD: login failed)
 at /usr/local/lib/perl5/DBD/Oracle.pm line 99


The code looks like:
#!/bin/perl

use Oraperl;
ora_version();
ora_login("i18n", "sgi", "cool");

The same call in per4 oraperl works. I've tried lots of combinations
and asked some people.

Do you have any idea why it might not be working?

Log:

whitetiger 84% uname -a
IRIX whitetiger 5.3 11091812 IP22 mips

Oracle Version:

SQL*Plus: Release 3.1.3.4.1 - Production on Thu Nov  9 16:51:17 1995

Copyright (c) Oracle Corporation 1979, 1994.  All rights reserved.


Connected to:
Oracle7 Server Release 7.1.4.1.0 - Production Release
With the distributed and parallel query options
PL/SQL Release 2.1.4.0.0 - Production


hitetiger 149% perl !$
perl Makefile.PL

Configuring DBD::Oracle version 0.25...
Remember to actually read the README file!

Using Oracle in /hosts/furnace/db/oracle7.1.3
Oracle sysliblist: -lc -lm
Using /hosts/furnace/db/oracle7.1.3/proc16/lib/proc16.mk version 1.6
System: perl5.001 irix hoshi 5.3 12200159 ip22 mips  irix dl_dlopen.xs
Compiler: cc -O -D_BSD_TYPES -D_BSD_SIGNALS -Olimit 3000
Oracle proc.mk would have used these values but we override them:
  CC:       cc
  CFLAGS:   -I. -O `if [ -d /usr/lib/cmplrs ] ; then echo "-systype svr4 -KPIC"
; fi `
  LDFLAGS:  -L$(LIBHOME) `if [ -x /usr/necbin/uversion ] ; then echo
"-Zcommon_pic -znodefs" ;                       elif [ -d /usr/lib/cmplrs ] ;
then echo "-systype svr4" ; fi `

Writing Makefile for DBD::Oracle
whitetiger 150% make
mkdir ./blib
mkdir ./blib/DBD
mkdir ./blib/auto
mkdir ./blib/auto/DBD
mkdir ./blib/auto/DBD/Oracle
        /bin/perl /usr/local/lib/perl5/ExtUtils/xsubpp -typemap
/usr/local/lib/perl5/ExtUtils/typemap Oracle.xs >Oracle.tc && mv Oracle.tc
Oracle.c
        cc -c -D_BSD_TYPES -D_BSD_SIGNALS -Olimit 3000 -O
    -I/usr/local/lib/perl5/irix/CORE
 -I/hosts/furnace/db/oracle7.1.3/rdbms/demo -I/usr/local/lib/perl5/irix/DBI
Oracle.c
        cc -c -D_BSD_TYPES -D_BSD_SIGNALS -Olimit 3000 -O
    -I/usr/local/lib/perl5/irix/CORE
 -I/hosts/furnace/db/oracle7.1.3/rdbms/demo -I/usr/local/lib/perl5/irix/DBI
dbdimp.c
Running mkbootstrap for DBD::Oracle ()
        ld -o ./blib/auto/DBD/Oracle/Oracle.so -shared Oracle.o  dbdimp.o
-L/hosts/furnace/db/oracle7.1.3/lib  -locic
/hosts/furnace/db/oracle7.1.3/lib/osntab.o -lsqlnet -lora  -lsqlnet  -lora
-lnlsrtl -lcv6 -lcore -lnlsrtl -lcv6           -lcore  `cat
/hosts/furnace/db/oracle7.1.3/rdbms/lib/sysliblist`   -lc -lm
        cp Oracle.bs ./blib/auto/DBD/Oracle/Oracle.bs
        cp Oraperl.pm ./blib/Oraperl.pm
        cp Oracle.pm ./blib/DBD/Oracle.pm
whitetiger 151% make test
        /bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/irix
-I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose);
$verbose=0; runtests @ARGV;' t/*.t
t/base..............ok
t/main..............ok
All tests successful.
Files=2,  Tests=6,  2 secs ( 0.60 cusr  0.15 csys =  0.75 cpu)
        /bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/irix
-I/usr/local/lib/perl5 test.pl
Oraperl test application $Revision: 1.17 $

Oraperl Emulation Interface version 1.21
Oracle Driver 1.20
DBI Switch by Tim Bunce, version 1.45


Connecting to '' (from command line, else uses ORACLE_SID/TWO_TASK
           as 'crgs/crgs' (via ORACLE_USERID environment var or default)
ERROR EVENT: DBI::db=HASH(0x100b1068)->DBI::default_handler:
        1017 ORA-01017: invalid username/password; logon denied (DBD: login
failed)
 at blib/DBD/Oracle.pm line 99
ora_login: 1017: ORA-01017: invalid username/password; logon denied (DBD: login
failed)
*** Error code 255 (bu21)
whitetiger 152% make install
        : perl5.000 and MM pre 3.8 autosplit into INST_ARCHLIB, we delete these
old files here
        rm -f /usr/local/lib/perl5/irix/auto/DBD/Oracle/*.al
        rm -f /usr/local/lib/perl5/irix/auto/DBD/Oracle/*.ix
        make INST_LIB=/usr/local/lib/perl5
INST_ARCHLIB=/usr/local/lib/perl5/irix INST_EXE=/usr/local/bin
        ld -o /usr/local/lib/perl5/irix/auto/DBD/Oracle/Oracle.so -shared
Oracle.o  dbdimp.o -L/hosts/furnace/db/oracle7.1.3/lib  -locic
/hosts/furnace/db/oracle7.1.3/lib/osntab.o -lsqlnet -lora  -lsqlnet  -lora
-lnlsrtl -lcv6 -lcore -lnlsrtl -lcv6           -lcore  `cat
/hosts/furnace/db/oracle7.1.3/rdbms/lib/sysliblist`   -lc -lm

Oraperl Emulation Interface version 1.21
Oracle Driver 1.20
DBI Switch by Tim Bunce, version 1.45

ERROR EVENT: DBI::db=HASH(0x100a75dc)->DBI::default_handler:
        1034 ORA-01034: ORACLE not available (DBD: login failed)
 at /usr/local/lib/perl5/DBD/Oracle.pm line 99
whitetiger 128% perl -e 'use Config; print Config::myconfig()'
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=irix, osver=5, archname=irix
    uname='irix hoshi 5.3 12200159 ip22 mips '
    hint=recommended
  Compiler:
    cc='cc', optimize='-O'
    cppflags='-D_BSD_TYPES -D_BSD_SIGNALS'
    ccflags ='-D_BSD_TYPES -D_BSD_SIGNALS -Olimit 3000'
    ldflags =''
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=1, d_casti32=define, d_castneg=
    intsize=4, alignbytes=8, usemymalloc=y, randbits=15
  Libraries:
    so=so
    libpth=/usr/lib /usr/local/lib /lib
    libs=-lcrypt -lm
    libc=/usr/lib/libc.so
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
    cccdlflags=' ', ccdlflags=' ', lddlflags='-shared'

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <12121-1@oink>;
          Fri, 10 Nov 1995 15:36:25 +0000
Received: from punt-2.mail.demon.net with mailstore id 816010022:10119:0;
          Fri, 10 Nov 95 13:27:02 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id aa10112;
          10 Nov 95 13:27 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <05805-1@frigate.doc.ic.ac.uk>; Thu, 9 Nov 1995 02:58:03 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA03227 for dbi-dev-real; Wed, 8 Nov 1995 16:00:14 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netnet1.netnet.net (netnet1.netnet.net [198.70.64.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id QAA03223 
          for <dbi-dev@fugue.com>; Wed, 8 Nov 1995 16:00:08 -0800
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id SAA22181; Wed, 8 Nov 1995 18:02:28 -0600
Date: Wed, 8 Nov 1995 18:02:28 -0600 (CST)
From: Ben Lindstrom <mouring@netnet.net>
To: dbi-dev@fugue.com
Subject: dbh to sth data migration
In-Reply-To: <199511012225.WAA29379@fruitbat.mcqueen.com>
Message-ID: <Pine.SUN.3.91.951108175512.15656B-100000@netnet1.netnet.net>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

As I'm looking around I'm trying to figure out how exactly perl/DBI
knows what in the imp_dbh_st should be copied into imp_sth_st
on a "D_imp_dbh_from_sth".

I tracked it down to a #define that says it's really D_imp_from_child()
But from there..I can't seem to  find any references to that function.

BTW, as I expected.  It's always good  to start simple and move to the
harder stuff as you learn.=)

---
Ben Lindstrom	mouring@netnet.net	Ben.a.Lindstrom@uwrf.edu (NeXT mail) 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12128-5@oink>;
          Fri, 10 Nov 1995 15:37:48 +0000
Received: from punt-1.mail.demon.net with mailstore id 816007200:00570:1;
          Fri, 10 Nov 95 12:40:00 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa00354;
          10 Nov 95 12:39 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id CAA09405 for dbi-users-real; Fri, 10 Nov 1995 02:22:59 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id CAA09400 
          for <dbi-users@fugue.com>; Fri, 10 Nov 1995 02:22:45 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.aa04301;
          10 Nov 95 10:24 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa19797;
          10 Nov 95 10:23 GMT
Received: from toad by oink with SMTP (PP) id <10755-0@oink>;
          Fri, 10 Nov 1995 10:23:38 +0000
Received: by toad (5.0/SMI-SVR4) id AA14103; Fri, 10 Nov 1995 10:23:15 +0000
Date: Fri, 10 Nov 1995 10:23:15 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511101023.AA14103@toad>
To: james.taylor@srs.gov
Subject: Re: DBD::Oracle
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 241
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: james.taylor@srs.gov
> 
> Tim,
> 
> I no longer need to make any changes to get DBD::Oracle to compile with Solaris 
> 2.4 SPARCompiler C.  You might want to remove the note from the README file.

Done. Thanks for the update.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12128-11@oink>;
          Fri, 10 Nov 1995 15:38:13 +0000
Received: from punt-1.mail.demon.net with mailstore id 816009374:17654:0;
          Fri, 10 Nov 95 13:16:14 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa17625;
          10 Nov 95 13:16 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP) 
          id <11476-0@frigate.doc.ic.ac.uk>; Wed, 8 Nov 1995 00:27:54 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA00586 for dbi-users-real; Tue, 7 Nov 1995 13:13:52 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA00582 
          for <dbi-users@fugue.com>; Tue, 7 Nov 1995 13:13:42 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.aa10198;
          7 Nov 95 21:08 GMT
Received: from relay-4.mail.demon.net by relay-3.mail.demon.net id sg.ab26996;
          7 Nov 95 21:07 GMT
Received: from toad by oink with SMTP (PP) id <16788-0@oink>;
          Tue, 7 Nov 1995 20:47:45 +0000
Received: by toad (5.0/SMI-SVR4) id AA09042; Tue, 7 Nov 1995 20:47:23 +0000
Date: Tue, 7 Nov 1995 20:47:23 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511072047.AA09042@toad>
To: dbi-users@fugue.com, Scott=Alexander%se%FNS@fnsvines1.fns.com
Subject: Re: How to trap database error messages?
X-Sun-Charset: US-ASCII
content-length: 517
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Scott=Alexander%se%FNS@fnsvines1.fns.com
> 
> Can someone provide me with example code on how to trap database error 
> messages. I'm trying to trap a unique constraint message when inserting 
> records into an Oracle db. It seems by default to output the message to the 
> display.
> 
> Thanks,
> Scott Alexander
> sga@fns.com

Error handling needs more work. This will be addressed soon (this week maybe).

Meanwhile I'd suggest just commenting out the Carp::carp line in
default_handler in DBI.pm!

Tim.

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12128-15@oink>;
          Fri, 10 Nov 1995 15:38:30 +0000
Received: from punt-1.mail.demon.net with mailstore id 816011646:07104:1;
          Fri, 10 Nov 95 13:54:06 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa06300;
          10 Nov 95 13:53 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA09509 for dbi-dev-real; Fri, 10 Nov 1995 03:28:38 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id DAA09505 
          for <dbi-dev@fugue.com>; Fri, 10 Nov 1995 03:28:35 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ac16980;
          10 Nov 95 11:19 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa29594;
          10 Nov 95 11:19 GMT
Received: from toad by oink with SMTP (PP) id <10951-0@oink>;
          Fri, 10 Nov 1995 11:01:18 +0000
Received: by toad (5.0/SMI-SVR4) id AA14172; Fri, 10 Nov 1995 11:00:46 +0000
Date: Fri, 10 Nov 1995 11:00:46 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511101100.AA14172@toad>
To: dbi-dev@fugue.com, phj@pilot.njin.net
Subject: Re: sqlNet login
X-Sun-Charset: US-ASCII
content-length: 567
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: "Patricia H. Ju" <phj@pilot.njin.net>
> 
> Hi all,
> 
> Sorry if this is inappropriate (I can't remember what is and what isn't)

It's not really, it's an Oracle support issue. But anyway...

> or can be found elsewhere (tell me where!) but I have no idea how to
> loginto another host's oracle server via Oracle DBI.  The
> connect string should probably be:
> 	sqlplus mylogin/mypassword@T:the.server.com:database

That looks okay to me (assuming you have Sql*Net installed).

Get it working from the command line first. Talk to Oracle if
you can't.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12128-17@oink>;
          Fri, 10 Nov 1995 15:38:42 +0000
Received: from punt-1.mail.demon.net with mailstore id 816011821:08561:1;
          Fri, 10 Nov 95 13:57:01 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa08185;
          10 Nov 95 13:56 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA09524 for dbi-dev-real; Fri, 10 Nov 1995 03:33:22 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id DAA09520 
          for <dbi-dev@fugue.com>; Fri, 10 Nov 1995 03:33:17 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id LAA25630 for dbi-dev@fugue.com; Fri, 10 Nov 1995 11:31:06 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511101131.LAA25630@fruitbat.mcqueen.com>
Subject: Driver loading
To: dbi-dev@fugue.com
Date: Fri, 10 Nov 1995 11:31:05 +0000 (GMT)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 814


All. A quick note about driver loading. Discussions welcome!

A recently posted note of mine had the line:

        $drh = DBI->install_driver( 'mSQL' );

in it. Tim suggested:

        $dbh = connect( 'dbhost', 'dbname', 'mSQL' );

to load the drivers. Unfortunately, in DBD::mSQL there's a private
method $drh->func( '_ListDBs' ) which operates against the driver
and not any actual databases.

How can this be done via the connect method instead of the explicit
driver load?

Also, how can we check the driver's actually been loaded? $dbh may be undef
after a failed connect ( the *connect* may have failed ), but how can we
tell the driver load didn't fail? ( Missing symbols or whatever? )

Regards.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12128-21@oink>;
          Fri, 10 Nov 1995 15:39:01 +0000
Received: from punt-1.mail.demon.net with mailstore id 816012302:12309:1;
          Fri, 10 Nov 95 14:05:02 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa12243;
          10 Nov 95 14:04 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA09492 for dbi-users-real; Fri, 10 Nov 1995 03:20:01 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id DAA09485 
          for <dbi-users@fugue.com>; Fri, 10 Nov 1995 03:19:58 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ab16980;
          10 Nov 95 11:19 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ac29594;
          10 Nov 95 11:19 GMT
Received: from toad by oink with SMTP (PP) id <10930-0@oink>;
          Fri, 10 Nov 1995 10:58:14 +0000
Received: by toad (5.0/SMI-SVR4) id AA14168; Fri, 10 Nov 1995 10:57:52 +0000
Date: Fri, 10 Nov 1995 10:57:52 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511101057.AA14168@toad>
To: dbi-users@fugue.com, tmh@whitetiger.engr.sgi.com
Subject: Re: Oracle Login Problems
X-Sun-Charset: US-ASCII
content-length: 859
Organisation: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Todd Hoff <tmh@whitetiger.engr.sgi.com>
> To: perldb-interest@vix.com

Please switch to using dbi-users@fugue.com
 
> ERROR EVENT: DBI::db=HASH(0x100a75dc)->DBI::default_handler:
>         1034 ORA-01034: ORACLE not available (DBD: login failed)
>  at /usr/local/lib/perl5/DBD/Oracle.pm line 99

> ora_login("i18n", "sgi", "cool");

> The same call in per4 oraperl works. I've tried lots of combinations
> and asked some people.
> 
> Do you have any idea why it might not be working?

Maybe, but not why perl4 oraperl would work. I'll need to check the code.

Is i18n an Sql*NET alias?

Try:
	ora_login("", "sgi@i18n", "cool");

and also try

	ora_login("", "sgi", "cool");

with ORACLE_SID or TWO_TASK set as needed.

Please let me know how both these work out since I need to get to the
bottom of this.

Has anyone else had similar problems?

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12128-23@oink>;
          Fri, 10 Nov 1995 15:39:08 +0000
Received: from punt-1.mail.demon.net with mailstore id 816012488:13812:1;
          Fri, 10 Nov 95 14:08:08 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa13641;
          10 Nov 95 14:07 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA09558 for dbi-dev-real; Fri, 10 Nov 1995 03:41:41 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id DAA09554 
          for <dbi-dev@fugue.com>; Fri, 10 Nov 1995 03:41:39 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id LAA25755; Fri, 10 Nov 1995 11:39:16 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511101139.LAA25755@fruitbat.mcqueen.com>
Subject: Re: Oracle Login Problems
To: Tim.Bunce@ig.co.uk (Tim Bunce)
Date: Fri, 10 Nov 1995 11:39:15 +0000 (GMT)
Cc: dbi-dev@fugue.com
In-Reply-To: <9511101057.AA14168@toad> from "Tim Bunce" at Nov 10, 95 10:57:52 am
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 1007


> Maybe, but not why perl4 oraperl would work. I'll need to check the code.
> 
> Is i18n an Sql*NET alias?
> 
> Try:
> 	ora_login("", "sgi@i18n", "cool");
> 
> and also try
> 
> 	ora_login("", "sgi", "cool");
> 
> with ORACLE_SID or TWO_TASK set as needed.
> 
> Please let me know how both these work out since I need to get to the
> bottom of this.
> 
> Has anyone else had similar problems?

Not in the Oraperl emulation, just straight DBI.

SQL*Net V2 lookups don't appear to work. If you define the connection descriptor
to be a SQL*Net V2 connection descriptor in TNSNAMES.ORA, it doesn't appear
to use it and attempts connection to a local database of the name of whatever
you specified as the c.desc.

I thought maybe fiddling the args ( as you did above ) or adding judicious
'@'s in may have helped, but it doesn't.

I haven't had a lot of time to play with it, right enough......

> Tim.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15841-10@oink>;
          Fri, 10 Nov 1995 23:24:58 +0000
Received: from punt-1.mail.demon.net with mailstore id 816035995:02022:0;
          Fri, 10 Nov 95 20:39:55 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa02017;
          10 Nov 95 20:39 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id g.aa10820;
          10 Nov 95 20:39 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA00145 for dbi-users-real; Fri, 10 Nov 1995 10:15:19 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from sc.ZIB-Berlin.DE (sc.ZIB-Berlin.DE [130.73.108.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id KAA00141 
          for <dbi-users@fugue.com>; Fri, 10 Nov 1995 10:15:13 -0800
Received: from franz.ww.TU-Berlin.DE 
          by sc.ZIB-Berlin.DE (4.1/SMI-5.3-sc/22.08.93) id AA13452;
          Fri, 10 Nov 95 18:59:12 +0100
Received: by franz.ww.TU-Berlin.DE (NX5.67d/NeXT-1.0) id AA10583;
          Fri, 10 Nov 95 19:13:06 +0100
Date: Fri, 10 Nov 95 19:13:06 +0100
Message-Id: <9511101813.AA10583@franz.ww.TU-Berlin.DE>
Subject: Welcome new user The DBI Mailing Lists
To: dbi-users@fugue.com, koenig@franz.ww.tu-berlin.de, Tim.Bunce@ig.co.uk
From: The Perl Module Server <upload@franz.ww.tu-berlin.de>


Welcome The DBI Mailing Lists,

__PAUSE__, the perl authors upload server, has a userid for you: DBIML.
The following credentials are in the database:

  Name:         [The DBI Mailing Lists]
  email:        [dbi-users@fugue.com]
  homepage:     [http://www.fugue.com/dbi]

You are welcome to change these credentials yourself and upload your work
to ftp://franz.ww.tu-berlin.de/incoming/ whenever you feel the desire.
See http://franz.ww.tu-berlin.de/modulelist/ for details.

[entered by Tim Bunce]
+ DBIML  The DBI Mailing Lists &lt;dbi-users@fugue.com&gt;

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <19045-9@oink>;
          Sat, 11 Nov 1995 03:21:37 +0000
Received: from punt-1.mail.demon.net with mailstore id 816058186:21059:1;
          Sat, 11 Nov 95 02:49:46 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa20974;
          11 Nov 95 2:49 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA01258 for dbi-dev-real; Fri, 10 Nov 1995 16:25:01 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id QAA01254 
          for <dbi-dev@fugue.com>; Fri, 10 Nov 1995 16:24:59 -0800
Received: by gw.home.vix.com id AA14018; Fri, 10 Nov 95 16:27:12 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.aa01562;
          11 Nov 95 0:12 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa24182;
          11 Nov 95 0:12 GMT
Received: from toad by oink with SMTP (PP) id <17913-0@oink>;
          Sat, 11 Nov 1995 00:12:19 +0000
Received: by toad (5.0/SMI-SVR4) id AA15607; Sat, 11 Nov 1995 00:11:56 +0000
Date: Sat, 11 Nov 1995 00:11:56 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511110011.AA15607@toad>
To: perl5-porters@africa.nicoh.com, ak@ananke.s.bawue.de
Subject: Re: ODBC extensions for Perl
Cc: dbi-dev@fugue.com, mhm@austin.ibm.com
X-Sun-Charset: US-ASCII
Content-Length: 1253
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: ak@ananke.s.bawue.de (Andreas Kaiser)
> 
> On Fri, 10 Nov 95 01:23:14 UT, you wrote:
> 
> >One of my only reasons for using NT is "easy" access to the SQLServer 
> >database.  If Win32 Perl had an ODBC or DBLIB extension similar to sybperl 
> >that would be fantastic!  Is anyone working on this?
> 
> I have implemented an extension for DB2/2 CLI which is pretty close to
> ODBC.

Sigh. A full DBI compatible DB2 driver has been developed already:

DBI            amcO  Generic Database Interface (see DBD modules) DBIML
DBD::
::Oracle       amcO  Oracle Driver for DBI                        TIMB
::Ingres       cmcO  Ingres Driver for DBI                        TIMB
::Informix     adcO  Informix Driver for DBI                      ADESC
::mSQL         amcO  Msql Driver for DBI                          ADESC
::DB2          adcO  DB2 Driver for DBI                           MHM
::Sybase       idcO  Sybase Driver for DBI                        MEWP
::QBase        amcO  QBase Driver for DBI                         BENLI

  MHM    Mike Moran <mhm@austin.ibm.com>

Take a look at http://www.hermetica.com/technologia/DBI

Please subscribe to the dbi-dev mailing list via http://www.fugue.com/dbi
I've CC'd this to the list and Mike.

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <29508-3@oink>;
          Mon, 13 Nov 1995 07:08:17 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816131306:12756:1; Sat, 11 Nov 95 23:08:26 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa12638;
          11 Nov 95 23:08 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA04463 for dbi-users-real; Sat, 11 Nov 1995 13:47:15 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from sgi.sgi.com (SGI.COM [192.48.153.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id NAA04459 
          for <dbi-users@fugue.com>; Sat, 11 Nov 1995 13:47:13 -0800
Received: from whitetiger.engr.sgi.com by sgi.sgi.com 
          via ESMTP (950405.SGI.8.6.12/910110.SGI) id NAA12754;
          Sat, 11 Nov 1995 13:49:37 -0800
Received: by whitetiger.engr.sgi.com (940816.SGI.8.6.9/940406.SGI.AUTO) 
          id NAA22618; Sat, 11 Nov 1995 13:49:29 -0800
From: Todd Hoff <tmh@whitetiger.engr.sgi.com>
Message-Id: <9511111349.ZM22616@whitetiger.engr.sgi.com>
Date: Sat, 11 Nov 1995 13:49:27 -0800
In-Reply-To: Tim Bunce <Tim.Bunce@ig.co.uk> "Re: Oracle Login Problems" (Nov 10, 10:57am)
References: <9511101057.AA14168@toad>
X-Mailer: Z-Mail (3.2.0 26oct94 MediaMail)
To: Tim Bunce <Tim.Bunce@ig.co.uk>, dbi-users@fugue.com
Subject: Re: Oracle Login Problems
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii

On Nov 10, 10:57am, Tim Bunce wrote:

> Is i18n an Sql*NET alias?

No answer to this yet.


> Try:
> 	ora_login("", "sgi@i18n", "cool");
>
> and also try
>
> 	ora_login("", "sgi", "cool");
>
> with ORACLE_SID or TWO_TASK set as needed.
>
> Please let me know how both these work out since I need to get to the
> bottom of this.
>

Both worked like a charm! Thanx!

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <29509-26@oink>;
          Mon, 13 Nov 1995 07:14:39 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816148970:07312:1; Sun, 12 Nov 95 04:02:50 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa07272;
          12 Nov 95 4:02 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA04825 for dbi-users-real; Sat, 11 Nov 1995 18:48:23 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from medg.lcs.mit.edu (medg.lcs.mit.edu [18.30.0.179]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id SAA04821 
          for <dbi-users@fugue.com>; Sat, 11 Nov 1995 18:48:21 -0800
Received: from martin.lcs.mit.edu (martin.lcs.mit.edu [18.30.0.175]) 
          by medg.lcs.mit.edu (8.6.9/8.6.9) with ESMTP id VAA00569 
          for <dbi-users@fugue.com>; Sat, 11 Nov 1995 21:44:20 -0500
From: Eric Michael Jordan <emjordan@medg.lcs.mit.edu>
Received: (emjordan@localhost) by martin.lcs.mit.edu (8.6.9/8.6.9) id VAA12493;
          Sat, 11 Nov 1995 21:49:20 -0500
Date: Sat, 11 Nov 1995 21:49:20 -0500
Message-Id: <199511120249.VAA12493@martin.lcs.mit.edu>
To: dbi-users@fugue.com
Subject: error message when I use ora_logoff

The following script gives me the following error message:

Bad free() ignored at junk.pl line 10.


#!/u/emjordan/bin/perl5 -w
# -*- Perl -*-

use DBI;
use Oraperl;

$lda = &ora_login("", "scott/tiger\@P:PROD", "")
	|| die &badpw;

&ora_logoff($lda);


I realize that there are other ways to use ora_login, but I have to do
it this way because:
1.  This is going to be executed by a cgi script, so I will not be
able to set up the environment ahead of time and ensure that
$ENV{'oracle_sid'} has been set to PROD.
2.  There is a bug in Oracle v. 7.1.4 on SunOS that sometimes causes
ora_login to freeze if any application that uses OCI tries to change
any environment variable before calling orlon.  This manifests itself
if the first argument to ora_login is non-empty.

Eric
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <00657-4@oink>;
          Mon, 13 Nov 1995 15:48:43 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816271151:17633:1; Mon, 13 Nov 95 13:59:11 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa17500;
          13 Nov 95 13:59 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA09331 for dbi-users-real; Mon, 13 Nov 1995 03:26:49 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id DAA09327 
          for <dbi-users@fugue.com>; Mon, 13 Nov 1995 03:26:44 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ah17778;
          13 Nov 95 11:27 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id msg.aa16252;
          13 Nov 95 11:27 GMT
Received: from toad by oink with SMTP (PP) id <02386-0@oink>;
          Mon, 13 Nov 1995 10:31:51 +0000
Received: by toad (5.0/SMI-SVR4) id AA20021; Mon, 13 Nov 1995 10:31:26 +0000
Date: Mon, 13 Nov 1995 10:31:26 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511131031.AA20021@toad>
To: turbo@flern.onramp.net
Subject: Re: DBD Oracle and DBI mailing lists
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 883
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> Date: Mon, 13 Nov 1995 01:06:38 -0600 (CST)
> From: turbo@onramp.net
> 
> I am sorry to bother you with this but I can't seem to find the new
> mailing lists for DBD Oracle and DBI interest.

Subscrive via http://www.fugue.com/dbi

> I am working on a large
> web interface to an oracle accounting system and have some questions and
> comments.  Currently about the apparent lack of support for sql select
> for update queries (by apparent I mean I can't get them to work:).

It's not been specified/implemented yet.

Tim.


p.s. Your message had broken headers. The blank line is the problem:

From turbo@flern.onramp.net Mon Nov 13 07:40 GMT 1995
Date: Mon, 13 Nov 1995 01:06:38 -0600 (CST)
To: Tim.Bunce@ig.co.uk
X-Url: 
Content-Type: text

X-Personal_Name: Chris Turbeville turbo@onramp.net
From: turbo@onramp.net
Subject: DBD Oracle and DBI mailing lists
content-length: 365
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <02419-0@oink>;
          Mon, 13 Nov 1995 17:26:27 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816283554:07030:1; Mon, 13 Nov 95 17:25:54 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa06966;
          13 Nov 95 17:25 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA09630 for dbi-users-real; Mon, 13 Nov 1995 07:16:05 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mail.crl.com (mail.crl.com [165.113.1.22]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA09626 
          for <dbi-users@fugue.com>; Mon, 13 Nov 1995 07:16:03 -0800
Received: from [205.149.164.116] (bta.vip.best.com) by mail.crl.com with SMTP 
          id AA18169 (5.65c/IDA-1.5 for <dbi-users@fugue.com>);
          Mon, 13 Nov 1995 07:16:26 -0800
Date: Mon, 13 Nov 1995 07:16:26 -0800
X-Sender: mrlizard@mail.crl.com
Message-Id: <accca42c03021004b2fc@[205.149.164.116]>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
To: dbi-users@fugue.com
From: mrlizard@crl.com (Brian Valente)
Subject: DBD::mSQL test build problems

So many mailing lists... I hope this is the right one.

I have problems getting "make test" to compile correctly on my Sparc
20/Solaris 2.4.

I have mSQL 1.0.9 installed successfully

I have perl 5.001m installed successfully

I have DBD 0.64 installed successfully

when I run "make test" according to the instructions, I get:

/usr/local/bin/perl -I./blib -I/usr/local/lib/perl5/sun4-solaris
-I/usr/local/bin/perl5 test.pl
Testing: DBI->install_driver( 'mSQL' ): ok
not ok:
Testing: $drh->func( '', '_ListDBs' ): ***Error code 255
make: Fatal error: command failed for target 'test_dynamic'



Originally, I got a MSQL_HOME not defined error, so I set it to
/usr/local/Minerva - Hope that's right.

Any help is deeply appreciated.

Sincerely,


Brian Valente

======================================================================
Brian Valente                   ||      brian_valente@rmdudley.com
R.M. Dudley Corporation         ||      mrlizard@crl.com
1799 Old Bayshore Suite 200     ||      applelink:RMDUDLEY
Burlingame, CA 94010            ||      http://www.rmdudley.com/rmdudley/
(415) 697-1650   voice          ||
(415) 697-1816   fax            ||


---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <03885-2@oink>;
          Mon, 13 Nov 1995 20:30:08 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816285998:28003:1; Mon, 13 Nov 95 18:06:38 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa27887;
          13 Nov 95 18:06 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA09690 for dbi-users-real; Mon, 13 Nov 1995 07:48:44 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id HAA09686 
          for <dbi-users@fugue.com>; Mon, 13 Nov 1995 07:48:41 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id PAA15991; Mon, 13 Nov 1995 15:46:21 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511131546.PAA15991@fruitbat.mcqueen.com>
Subject: Re: DBD::mSQL test build problems
To: mrlizard@crl.com (Brian Valente)
Date: Mon, 13 Nov 1995 15:46:20 +0000 (GMT)
Cc: dbi-users@fugue.com
In-Reply-To: <accca42c03021004b2fc@[205.149.164.116]> from "Brian Valente" at Nov 13, 95 07:16:26 am
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 998


> I have problems getting "make test" to compile correctly on my Sparc
> 20/Solaris 2.4.
> 
> I have mSQL 1.0.9 installed successfully
> 
> I have perl 5.001m installed successfully
> 
> I have DBD 0.64 installed successfully
> 
> when I run "make test" according to the instructions, I get:
> 
> /usr/local/bin/perl -I./blib -I/usr/local/lib/perl5/sun4-solaris
> -I/usr/local/bin/perl5 test.pl
> Testing: DBI->install_driver( 'mSQL' ): ok
> not ok:
> Testing: $drh->func( '', '_ListDBs' ): ***Error code 255
> make: Fatal error: command failed for target 'test_dynamic'
> 
> Originally, I got a MSQL_HOME not defined error, so I set it to
> /usr/local/Minerva - Hope that's right.

Right, that's either, the driver failed to load, or the DB listing failed.
I suspect the second. So, obvious question, do you have 'msqld' running?
If you don't, that'll cause the problem.

> Brian Valente

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <03885-28@oink>;
          Mon, 13 Nov 1995 20:32:14 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816290933:14449:0; Mon, 13 Nov 95 19:28:53 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa14426;
          13 Nov 95 19:28 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa26425;
          13 Nov 95 19:28 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA10241 for dbi-dev-real; Mon, 13 Nov 1995 09:43:28 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netnet1.netnet.net (netnet1.netnet.net [198.70.64.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA10237 
          for <dbi-dev@fugue.com>; Mon, 13 Nov 1995 09:43:27 -0800
Received: (from mouring@localhost) by netnet1.netnet.net (8.6.9/8.6.9) 
          id LAA10673; Mon, 13 Nov 1995 11:45:50 -0600
Date: Mon, 13 Nov 1995 11:45:50 -0600 (CST)
From: Ben Lindstrom <mouring@netnet.net>
To: dbi-dev@fugue.com
Subject: Passing information from dbh to sth.
Message-ID: <Pine.SUN.3.91.951113114302.10150B-100000@netnet1.netnet.net>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I must be really losing it. =)  I could have swore I send off a question
about how to migrate data from dbh to sth (mainly the database connection).

Anyways.

I found:  imp_dbh_from_sth (I think that's what it's call I don't have my 
code infront of me.)  But when I track it down I get to *child() function
that I can't find.  

Could so one point me in the direction of how the migration for the database
information gets from dbh to sth?

Thanks.

---
Ben Lindstrom	mouring@netnet.net	Ben.a.Lindstrom@uwrf.edu (NeXT mail) 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05266-3@oink>;
          Mon, 13 Nov 1995 22:55:16 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816296272:04799:0; Mon, 13 Nov 95 20:57:52 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa04788;
          13 Nov 95 20:57 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa01546;
          13 Nov 95 20:56 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA10532 for dbi-users-real; Mon, 13 Nov 1995 10:27:40 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from altrade.nijmegen.inter.nl.net (altrade.nijmegen.inter.nl.net [193.67.237.6]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA10528 
          for <dbi-users@fugue.com>; Mon, 13 Nov 1995 10:27:33 -0800
Received: from rijken.inter.NL.net by altrade.nijmegen.inter.nl.net 
          via ah99-9.Arnhem.NL.net [193.79.228.234] with ESMTP 
          id TAA23869 (8.6.10/1.8); Mon, 13 Nov 1995 19:29:26 +0100
Received: (from mrijken@localhost) by rijken.inter.NL.net (8.6.11/8.6.11) 
          id TAA00184; Mon, 13 Nov 1995 19:27:15 +0100
Date: Mon, 13 Nov 1995 19:27:14 +0100 (MET)
From: Marti Rijken <mrijken@solair1.inter.nl.net>
To: Brian Valente <mrlizard@crl.com>
cc: dbi-users@fugue.com
Subject: Re: DBD::mSQL test build problems
In-Reply-To: <accca42c03021004b2fc@[205.149.164.116]>
Message-ID: <Pine.LNX.3.91.951113191715.148A-100000@rijken.inter.NL.net>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Mon, 13 Nov 1995, Brian Valente wrote:

> So many mailing lists... I hope this is the right one.

Yes, it is...

> [...]
> Testing: DBI->install_driver( 'mSQL' ): ok
> not ok:
> Testing: $drh->func( '', '_ListDBs' ): ***Error code 255
> make: Fatal error: command failed for target 'test_dynamic'

I could simulate the error by creating an emty database directory
$MSQL_HOME/msqldb, be it with: "*** [test_dynamic] Error 2".

So perhaps you have no database defined yet?  If so create a
dummy database with msql, and see it it solves the problem.

> Originally, I got a MSQL_HOME not defined error, so I set it to
> /usr/local/Minerva - Hope that's right.

That's the default.  Setting MSQL_HOME to the default will get rid
of the annoying but harmless warning.

Hope this helps,

___ Marti Rijken ____ mrijken@inter.nl.net ____ Arnhem, Netherlands ___
_______  Province of Gelderland, nature conservation department  ______



---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <06849-0@oink>;
          Tue, 14 Nov 1995 00:54:33 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816310262:28727:1; Tue, 14 Nov 95 00:51:02 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa28518;
          14 Nov 95 0:50 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA11386 for dbi-users-real; Mon, 13 Nov 1995 15:28:14 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from pilot.njin.net (pilot.njin.net [128.6.7.38]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA11382 
          for <dbi-users@fugue.com>; Mon, 13 Nov 1995 15:28:12 -0800
Received: from localhost (phj@localhost) 
          by pilot.njin.net (8.6.12+bestmx+oldruq+newsunq+grosshack/8.6.12) 
          with ESMTP id SAA00390 for <dbi-users@fugue.com>;
          Mon, 13 Nov 1995 18:30:38 -0500
Message-Id: <199511132330.SAA00390@pilot.njin.net>
To: dbi-users@fugue.com
Subject: Deletion weirdnesses
Date: Mon, 13 Nov 1995 18:30:37 -0500
From: "Patricia H. Ju" <phj@pilot.njin.net>

Hi all,

I'm having strangenesses deleting from an Oracle database.

	deleteRec: DELETE FROM Article WHERE MSGID = 1010 at Table.pm line 530.
	ERROR EVENT: DBI::st=HASH(0x207450)->DBI::default_handler:
        	60 ORA-00060: deadlock detected while waiting for resource (DBD:
	oexec error)
 	at /usr/local/lib/perl5/Oraperl.pm line 93

History:
	1. I was writing a CGI script to automate deletion of msgs and the areas
		to which they belonged; it was really slow (like, never finished)
	2. After a few different ways of deleting things (deleting msgs one
		by one has worked for me before), I finally tried a straight delete
		in sqlplus.  "DELETE FROM Article where MSGID = 1010" stopped
		working and "DELETE FROM Article where AREAID=10" just sat there
		looking at me.

If there is a deadlock here, I have no idea where it would be.  The first
"DELETE FROM Article where AREAID=10" (which should retrieve a few rows
and delete) generated an ora_fetch out of sequence message.


Help ?


Patricia
	
.............
Who needs patience when you've got force ?
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <07656-0@oink>;
          Tue, 14 Nov 1995 02:44:30 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816316669:24696:1; Tue, 14 Nov 95 02:37:49 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa24609;
          14 Nov 95 2:37 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA11790 for dbi-dev-real; Mon, 13 Nov 1995 17:32:47 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id RAA11786 
          for <dbi-dev@fugue.com>; Mon, 13 Nov 1995 17:32:44 -0800
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.86.169]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id TAA40789 
          for <dbi-dev@fugue.com>; Mon, 13 Nov 1995 19:35:10 -0600
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for dbi-dev@fugue.com at austin.ibm.com; id AA22766;
          Mon, 13 Nov 1995 19:35:09 -0600
Message-Id: <9511140135.AA22766@dax.austin.ibm.com>
To: dbi-dev@fugue.com
Subject: Blobs are now working on DB2perl
Date: Mon, 13 Nov 95 19:35:09 -0600


A few tweaks in DBD::DB2 and big correction in my perl script and
everyting works fine.

A while back, I asked about other databases abilities to read a blob to
a "file" and Tim suggested something like  

$sth->copy_blob_to_file(1, $open_file_handle);

I thought about it for awhile and would like to suggest the following:

$sth->readblob_to_file(field, file_or_device_name);

First, the above is (atleast for DB2) more semantically correct, in that
the DB2 engine will be doing al the I/O not perl.  And secondly, it
would allow the databases that support direct engine I/O to work without
wasting cycles and file handles.

Any serious downside that I'm missing?

Mike
------------------------------------------------------------------------------
Michael H. Moran                  | Standard Disclaimer:  The content of  
mhm@austin.ibm.com                | this posting is independent of 
Commercial Performance            | official IBM position.
IBM Corporation, Austin, Texas    |
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13542-9@oink>;
          Tue, 14 Nov 1995 18:02:27 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816371290:12210:0; Tue, 14 Nov 95 17:48:10 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa12160;
          14 Nov 95 17:48 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Tue, 14 Nov 1995 17:26:03 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id FAA14369 for dbi-users-real; Tue, 14 Nov 1995 05:43:30 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id FAA14365 
          for <dbi-users@fugue.com>; Tue, 14 Nov 1995 05:43:27 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.aa05115;
          14 Nov 95 13:45 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.am20059;
          14 Nov 95 13:43 GMT
Received: from toad by oink with SMTP (PP) id <10703-0@oink>;
          Tue, 14 Nov 1995 13:40:50 +0000
Received: by toad (5.0/SMI-SVR4) id AA04112; Tue, 14 Nov 1995 13:40:27 +0000
Date: Tue, 14 Nov 1995 13:40:27 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511141340.AA04112@toad>
To: turbo@flern.onramp.net
Subject: Re: DBD Oracle and DBI mailing lists
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 965
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Chris Turbeville <turbo@flern.onramp.net>
> 
> > > Date: Mon, 13 Nov 1995 01:06:38 -0600 (CST)
> > > From: turbo@onramp.net
> > > 
> > > I am sorry to bother you with this but I can't seem to find the new
> > > mailing lists for DBD Oracle and DBI interest.
> > 
> > Subscrive via http://www.fugue.com/dbi
> Have done thanks.
> 
> > > I am working on a large
> > > web interface to an oracle accounting system and have some questions and
> > > comments.  Currently about the apparent lack of support for sql select
> > > for update queries (by apparent I mean I can't get them to work:).
> > 
> > It's not been specified/implemented yet.
> Hmm.  Is there any way then in oraperl to do mutually exclusive
> updates? (ie increment a counter and be gauranteed your the only one
> with that count)
> Thanks
> -Chris

Just $dbh->do() an update and that should create an exclusive lock
(also take a look at "alter transaction ..." and "alter session ...")

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15375-0@oink>;
          Wed, 15 Nov 1995 07:05:49 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816372564:23168:0; Tue, 14 Nov 95 18:09:24 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa23164;
          14 Nov 95 18:09 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id msg.aa28273;
          14 Nov 95 18:08 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA14506 for dbi-users-real; Tue, 14 Nov 1995 06:55:40 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mail.crl.com (mail.crl.com [165.113.1.22]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id GAA14502 
          for <dbi-users@fugue.com>; Tue, 14 Nov 1995 06:55:39 -0800
Received: from [205.149.164.116] (bta.vip.best.com) by mail.crl.com with SMTP 
          id AA22008 (5.65c/IDA-1.5 for <dbi-users@fugue.com>);
          Tue, 14 Nov 1995 06:56:18 -0800
Date: Tue, 14 Nov 1995 06:56:18 -0800
X-Sender: mrlizard@mail.crl.com
Message-Id: <accdf1d802021004a2b3@[205.149.164.116]>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
To: dbi-users@fugue.com
From: Brian Valente <mrlizard@crl.com>
Subject: DBD-mSQL Examples?

Hi Folks,

Well, seems that I have most of the big chunks up and running (thanks for
all your help), so rather than grind on with detailed bits and pieces
questions, does anyone have good example perl scripts?

I've read the spec, but examples are always a better way for me to
understand how it's _really_ done.

Regards,

Brian Valente

======================================================================
Brian Valente                   ||      brian_valente@rmdudley.com
R.M. Dudley Corporation         ||      mrlizard@crl.com
1799 Old Bayshore Suite 200     ||      applelink:RMDUDLEY
Burlingame, CA 94010            ||      http://www.rmdudley.com/rmdudley/
(415) 697-1650   voice          ||
(415) 697-1816   fax            ||


---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15375-11@oink>;
          Wed, 15 Nov 1995 07:06:53 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816375530:18714:1; Tue, 14 Nov 95 18:58:50 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa18655;
          14 Nov 95 18:58 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA14783 for dbi-users-real; Tue, 14 Nov 1995 08:53:25 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id IAA14779 
          for <dbi-users@fugue.com>; Tue, 14 Nov 1995 08:53:19 -0800
Received: by relay-4.mail.demon.net id msg.aa20781; 14 Nov 95 16:53 GMT
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ab24012;
          14 Nov 95 16:18 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ad20901;
          14 Nov 95 16:16 GMT
Received: from toad by oink with SMTP (PP) id <11676-0@oink>;
          Tue, 14 Nov 1995 14:55:00 +0000
Received: by toad (5.0/SMI-SVR4) id AA05215; Tue, 14 Nov 1995 14:54:37 +0000
Date: Tue, 14 Nov 1995 14:54:37 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511141454.AA05215@toad>
To: alan@lims.gel.com
Subject: I know I'm cheating ...
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 807
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424

Forwarded to the list:

----- Begin Included Message -----

Date: Mon, 13 Nov 1995 11:48:48 -0800
From: alan.johnson@gel.com (Alan Johnson)

but I'm coming to the horse himself :-) You can swat me (like a horse does
:-)) or ...

Does ora_do (oraperl 4) return the return status of the PL/SQL procedure
called? I.e., if I write:

$sql_proc = "begin if blah then return(-100) else return (0) end if; end;";

$dummy = &ora_do($lda,$sql_proc);

does $dummy have the returned value of the procedure called (i.e. -100 or 0)

It doesn't appear to, but I'm just checking.

TIA

Alan

--------------------------------

Alan Johnson
MIS Director
General Engineering Laboratories
2040 Savage Road
Charleston, SC 29414
alan.johnson@gel.com
(803) 556-8171 (voice)
(803) 766-1178 (fax)

----- End Included Message -----

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15375-30@oink>;
          Wed, 15 Nov 1995 07:10:05 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816382414:17687:1; Tue, 14 Nov 95 20:53:34 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa17603;
          14 Nov 95 20:53 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA15497 for dbi-users-real; Tue, 14 Nov 1995 11:17:39 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from ns.ge.com (ns.ge.com [192.35.39.24]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id LAA15493 
          for <dbi-users@fugue.com>; Tue, 14 Nov 1995 11:17:36 -0800
Received: from mobster.cit.ge.com ([3.47.4.100]) by ns.ge.com (8.6.12/8.6.11) 
          with ESMTP id OAA25215 for <dbi-users@fugue.com>;
          Tue, 14 Nov 1995 14:19:51 -0500
Received: from mobster (localhost.cit.ge.com [127.0.0.1]) 
          by mobster.cit.ge.com (8.6.12/8.6.12) with ESMTP id OAA20349 
          for <dbi-users@fugue.com>; Tue, 14 Nov 1995 14:21:37 -0500
Message-Id: <199511141921.OAA20349@mobster.cit.ge.com>
X-Mailer: exmh version 1.6.2 7/18/95
To: dbi-users@fugue.com
Subject: Oracle DBD installation
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Tue, 14 Nov 1995 14:21:35 -0500
From: Bob Snyder <rsnyder@mobster.cit.ge.com>

This may sound stupid, but is it possible to configure/compile the Oracle DBD 
without having the Oracle software installed?  I'm trying to set up CGI 
scripts to access a remote Oracle server on a different platform, so I don't 
have Oracle installed on the machine I'm using for web development (solaris 
2.4).

If Oracle is required, I'd appreciate someone telling me exactly what I need, 
or if they have any better ideas.  I have a good bit of web and CGI knowledge, 
a fair bit of perl knowledge, and very little Oracle knowledge.

Bob

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15375-42@oink>;
          Wed, 15 Nov 1995 07:12:01 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816385796:18118:1; Tue, 14 Nov 95 21:49:56 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa17873;
          14 Nov 95 21:49 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA15686 for dbi-users-real; Tue, 14 Nov 1995 12:22:38 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from pilot.njin.net (pilot.njin.net [128.6.7.38]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA15680 
          for <dbi-users@fugue.com>; Tue, 14 Nov 1995 12:22:32 -0800
Received: from localhost (phj@localhost) 
          by pilot.njin.net (8.6.12+bestmx+oldruq+newsunq+grosshack/8.6.12) 
          with ESMTP id PAA23166 for <dbi-users@fugue.com>;
          Tue, 14 Nov 1995 15:24:56 -0500
Message-Id: <199511142024.PAA23166@pilot.njin.net>
To: dbi-users@fugue.com
Subject: ofetch out of sequence (was deletion weirdnesses)
Date: Tue, 14 Nov 1995 15:24:53 -0500
From: "Patricia H. Ju" <phj@pilot.njin.net>

Rokey.

This is what's happening:

query: DELETE ARTICLE WHERE AREAID = 10 at Table.pm line 360.
ERROR EVENT: DBI::st=HASH(0x1a8af0)->DBI::default_handler:
        1002 ORA-01002: fetch out of sequence (DBD: ofetch error)
 at Table.pm line 362

Mind you, the articles I'm deleting have no dependenceies other than
referrring to the areaID of table Area.  So I figured if I delete all
the articles that are of area 10, *then* delete area 10, I should
be ok, right ?  Apparently not.

Anyone know what's going on ?



Patricia
.............
Who needs patience when you've got force ?
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <00523-26@oink>;
          Wed, 15 Nov 1995 11:51:13 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816434532:03311:1; Wed, 15 Nov 95 11:22:12 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa03087;
          15 Nov 95 11:21 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id BAA17081 for dbi-users-real; Wed, 15 Nov 1995 01:10:54 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from nova.auspex.fr ([194.2.216.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id BAA17077 
          for <dbi-users@fugue.com>; Wed, 15 Nov 1995 01:10:48 -0800
Received: (from kstock@localhost) by nova.auspex.fr (8.6.9/8.6.9) id KAA00476;
          Robinson France, Wed, 15 Nov 1995 10:13:35 +0100
Date: Wed, 15 Nov 1995 10:13:35 +0100
Message-Id: <199511150913.KAA00476@nova.auspex.fr>
To: alan@lims.gel.com
Subject: Re: I know I'm cheating ...
Cc: dbi-users@fugue.com
From: KStock@auspex.com (Kevin Stock)
Organisation: Auspex Systems European Technical Support Centre
Phone: +33 1 41 07 95 05
Reply-To: KStock@auspex.com

> Date: Mon, 13 Nov 1995 11:48:48 -0800
> From: alan.johnson@gel.com (Alan Johnson)
> 
> but I'm coming to the horse himself :-) You can swat me (like a horse does
> :-)) or ...

Tim's been called a lot of things, most of them by me :-) but that's a
new one...

> Does ora_do (oraperl 4) return the return status of the PL/SQL procedure
> called? I.e., if I write:
> 
> $sql_proc = "begin if blah then return(-100) else return (0) end if; end;";
> 
> $dummy = &ora_do($lda,$sql_proc);
> 
> does $dummy have the returned value of the procedure called (i.e. -100 or 0)
> 
> It doesn't appear to, but I'm just checking.

Oraperl 4 doesn't know anything about PL/SQL. All right, _I_ didn't
know anything about PL/SQL when I wrote Oraperl :-). &ora_do returns
the number of rows affected, unless it's 0, in which case it returns
OK (which tests as true but hase a numerical value of 0).

I think you'd need to store the return value in the database and then
select it. Or, perhaps there's some way of making the procedure appear
to fail with some particular error status which would be made available
in $ora_errno...

	Kevin
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <02226-0@oink>;
          Wed, 15 Nov 1995 18:19:58 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816457627:14797:0; Wed, 15 Nov 95 17:47:07 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa14787;
          15 Nov 95 17:47 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa11033;
          15 Nov 95 17:46 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA18917 for dbi-users-real; Wed, 15 Nov 1995 07:06:57 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mail.crl.com (mail.crl.com [165.113.1.22]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA18913 
          for <dbi-users@fugue.com>; Wed, 15 Nov 1995 07:06:55 -0800
Received: from [205.149.164.116] (bta.vip.best.com) by mail.crl.com with SMTP 
          id AA01244 (5.65c/IDA-1.5 for <dbi-users@fugue.com>);
          Wed, 15 Nov 1995 07:07:34 -0800
Date: Wed, 15 Nov 1995 07:07:34 -0800
X-Sender: mrlizard@mail.crl.com
Message-Id: <accf459f030210046473@[205.149.164.116]>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
To: dbi-users@fugue.com
From: Brian Valente <mrlizard@crl.com>
Subject: Error codes and such

For all the help I've received on this list, I'd like to provide some
scripts and html pages to introduce people to using DBD/mSQL for
back-ending a web site.  As soon as I can get these working fairly
bug-free, I'll do that.  If you're interested, please e-mail me.

In the meantime, I keep running into problems with getting a null value
returned from a $dbh->prepare($querystring) statement.  Is there a way to
find out what went wrong?  Right now, All I know is that the prepare
statement didn't return a valid statement handle.  Speaking of which, is
there any documentation for error codes and handling _in general_?  It'd
sure help...

Thanks again,


Brian

======================================================================
Brian Valente                   ||      brian_valente@rmdudley.com
R.M. Dudley Corporation         ||      mrlizard@crl.com
1799 Old Bayshore Suite 200     ||      applelink:RMDUDLEY
Burlingame, CA 94010            ||      http://www.rmdudley.com/rmdudley/
(415) 697-1650   voice          ||
(415) 697-1816   fax            ||


---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <02808-3@oink>;
          Wed, 15 Nov 1995 20:07:42 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816460947:13918:0; Wed, 15 Nov 95 18:42:27 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa13906;
          15 Nov 95 18:42 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Wed, 15 Nov 1995 18:30:02 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA19020 for dbi-users-real; Wed, 15 Nov 1995 08:18:00 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA19014 
          for <dbi-users@fugue.com>; Wed, 15 Nov 1995 08:17:57 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id QAA11204; Wed, 15 Nov 1995 16:15:42 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511151615.QAA11204@fruitbat.mcqueen.com>
Subject: Re: Error codes and such
To: mrlizard@crl.com (Brian Valente)
Date: Wed, 15 Nov 1995 16:15:41 +0000 (GMT)
Cc: dbi-users@fugue.com
In-Reply-To: <accf459f030210046473@[205.149.164.116]> from "Brian Valente" at Nov 15, 95 07:07:34 am
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 1303


> For all the help I've received on this list, I'd like to provide some
> scripts and html pages to introduce people to using DBD/mSQL for
> back-ending a web site.  As soon as I can get these working fairly
> bug-free, I'll do that.  If you're interested, please e-mail me.

What a guy! If you want to send me the pages and scripts, I'll put them on
the Hermetica pages for all to see.

> In the meantime, I keep running into problems with getting a null value
> returned from a $dbh->prepare($querystring) statement.  Is there a way to
> find out what went wrong?  Right now, All I know is that the prepare
> statement didn't return a valid statement handle.  Speaking of which, is
> there any documentation for error codes and handling _in general_?  It'd
> sure help...

Use $DBI::errstr. The error from mSQL populates that variable. Simiarly,
the error number goes into $DBI::errnum ( or $DBI::errno, I can never 
remeber ) but in DBD::mSQL that's always -1, so it's not much use.

Do something like:

	$cursor = $dbh->prepare( "SELECT blah FROM blah" );
        die "$DBI::errstr\n" unless $cursor;

to check the prepare, then display the error if it blew out.

Hope that helps.

> Brian

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <04501-0@oink>;
          Wed, 15 Nov 1995 23:12:37 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816476201:01088:1; Wed, 15 Nov 95 22:56:41 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa00774;
          15 Nov 95 22:56 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA19852 for dbi-users-real; Wed, 15 Nov 1995 13:23:26 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA19848 
          for <dbi-users@fugue.com>; Wed, 15 Nov 1995 13:23:22 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ac12019;
          15 Nov 95 21:21 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa09240;
          15 Nov 95 21:20 GMT
Received: from toad by oink with SMTP (PP) id <03903-0@oink>;
          Wed, 15 Nov 1995 21:20:14 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA08777;
          Wed, 15 Nov 1995 21:19:51 +0000
Date: Wed, 15 Nov 1995 21:19:51 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511152119.AA08777@toad.ig.co.uk>
To: dbi-users@fugue.com, rsnyder@mobster.cit.ge.com
Subject: Re: Oracle DBD installation
X-Sun-Charset: US-ASCII
content-length: 570
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Bob Snyder <rsnyder@mobster.cit.ge.com>
> 
> This may sound stupid, but is it possible to configure/compile the Oracle DBD 
> without having the Oracle software installed?

Nope.

At least not without more effort than you'd probably want to contemplate.

> If Oracle is required, I'd appreciate someone telling me exactly what I need, 
> or if they have any better ideas.  I have a good bit of web and CGI knowledge, 
> a fair bit of perl knowledge, and very little Oracle knowledge.

Follow what the Makefile.PL does. Basically lots of headers and libs.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04617-2@oink>;
          Wed, 15 Nov 1995 23:18:00 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816473502:09399:0; Wed, 15 Nov 95 22:11:42 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa09394;
          15 Nov 95 22:11 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa02746;
          15 Nov 95 22:10 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA19621 for dbi-dev-real; Wed, 15 Nov 1995 12:49:09 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id MAA19617 
          for <dbi-dev@fugue.com>; Wed, 15 Nov 1995 12:49:02 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.aj08539;
          15 Nov 95 20:43 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ab01049;
          15 Nov 95 20:43 GMT
Received: from toad by oink with SMTP (PP) id <03373-0@oink>;
          Wed, 15 Nov 1995 20:37:24 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA08722;
          Wed, 15 Nov 1995 20:37:01 +0000
Date: Wed, 15 Nov 1995 20:37:01 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511152037.AA08722@toad.ig.co.uk>
To: dbi-dev@fugue.com, mouring@netnet.net
Subject: Re: Passing information from dbh to sth.
X-Sun-Charset: US-ASCII
content-length: 1070
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Ben Lindstrom <mouring@netnet.net>
> 
> I must be really losing it. =)  I could have swore I send off a question
> about how to migrate data from dbh to sth (mainly the database connection).
> 
> I found:  imp_dbh_from_sth (I think that's what it's call I don't have my 
> code infront of me.)  But when I track it down I get to *child() function
> that I can't find.  
> 
> Could so one point me in the direction of how the migration for the database
> information gets from dbh to sth?

Er, you don't. The sth contains a pointer to the dbh. Anyway, that's all
hidden by macros. The D_imp_dbh_from_sth macro is the one you want (I think,
your message isn't really very clear).

If you really want to know how it _currently_ works then study DBIXS.h:

#define D_imp_dbh_from_sth D_imp_from_child(imp_dbh, imp_dbh_t, imp_sth)

#define D_imp_from_child(name,type,child)   \
                type *name = (type*)(DBIc_PARENT_COM(child))

#define DBIc_PARENT_COM(imp)    _imp2com(imp, std.parent_com)

#define _imp2com(p,f)       ((p)->com.f)

Macros'R'us :-)

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04617-4@oink>;
          Wed, 15 Nov 1995 23:18:09 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816473535:09699:0; Wed, 15 Nov 95 22:12:15 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa09695;
          15 Nov 95 22:12 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa02839;
          15 Nov 95 22:12 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA19534 for dbi-users-real; Wed, 15 Nov 1995 12:22:15 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id MAA19530 
          for <dbi-users@fugue.com>; Wed, 15 Nov 1995 12:22:05 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id msg.ab06056;
          15 Nov 95 20:07 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ac21671;
          15 Nov 95 20:06 GMT
Received: from toad by oink with SMTP (PP) id <02779-0@oink>;
          Wed, 15 Nov 1995 20:05:56 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA08597;
          Wed, 15 Nov 1995 20:05:32 +0000
Date: Wed, 15 Nov 1995 20:05:32 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511152005.AA08597@toad.ig.co.uk>
To: dbi-users@fugue.com, mrlizard@crl.com
Subject: Re: Error codes and such
X-Sun-Charset: US-ASCII
content-length: 589
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Brian Valente <mrlizard@crl.com>
> 
> In the meantime, I keep running into problems with getting a null value
> returned from a $dbh->prepare($querystring) statement.  Is there a way to
> find out what went wrong?

Your driver should put useful info in $DBI::err and $DBI::errstr

> Speaking of which, is there any documentation for error codes and
> handling _in general_?  It'd sure help...

Currently values in $DBI::err are driver specific.

It's probable that a $DBI::state variable based on the SQL 'SQLSTATE'
variable with defined values will be added sometime soon.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04617-11@oink>;
          Wed, 15 Nov 1995 23:18:36 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816474846:21691:0; Wed, 15 Nov 95 22:34:06 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa21687;
          15 Nov 95 22:34 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa04228;
          15 Nov 95 22:33 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA19806 for dbi-users-real; Wed, 15 Nov 1995 13:17:39 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA19802 
          for <dbi-users@fugue.com>; Wed, 15 Nov 1995 13:17:30 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id msg.ae09167;
          15 Nov 95 21:18 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ad08099;
          15 Nov 95 21:16 GMT
Received: from toad by oink with SMTP (PP) id <03668-0@oink>;
          Wed, 15 Nov 1995 21:12:11 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA08760;
          Wed, 15 Nov 1995 21:11:48 +0000
Date: Wed, 15 Nov 1995 21:11:48 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511152111.AA08760@toad.ig.co.uk>
To: alan@lims.gel.com, KStock@auspex.com
Subject: Re: I know I'm cheating ...
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 1338
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: KStock@auspex.com (Kevin Stock)
> 
> > From: alan.johnson@gel.com (Alan Johnson)
> > 
> > but I'm coming to the horse himself :-) You can swat me (like a horse does
> > :-)) or ...
> 
> Tim's been called a lot of things, most of them by me :-) but that's a
> new one...

:-)

> > Does ora_do (oraperl 4) return the return status of the PL/SQL procedure
> > called? I.e., if I write:
> > 
> > $sql_proc = "begin if blah then return(-100) else return (0) end if; end;";
> > 
> > $dummy = &ora_do($lda,$sql_proc);
> > 
> > does $dummy have the returned value of the procedure called (i.e. -100 or 0)
> > 
> > It doesn't appear to, but I'm just checking.
> 
> Oraperl 4 doesn't know anything about PL/SQL. All right, _I_ didn't
> know anything about PL/SQL when I wrote Oraperl :-). &ora_do returns
> the number of rows affected, unless it's 0, in which case it returns
> OK (which tests as true but hase a numerical value of 0).
> 
> I think you'd need to store the return value in the database and then
> select it. Or, perhaps there's some way of making the procedure appear
> to fail with some particular error status which would be made available
> in $ora_errno...

Maybe raise_error (or raise_exception?) would work for that.

I'd be happy to tweak DBD::Oracle if needed but I don't have time to
look into it right now.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04617-14@oink>;
          Wed, 15 Nov 1995 23:18:45 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816476285:04196:1; Wed, 15 Nov 95 22:58:05 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa02911;
          15 Nov 95 22:58 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA19888 for dbi-users-real; Wed, 15 Nov 1995 13:30:16 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA19884 
          for <dbi-users@fugue.com>; Wed, 15 Nov 1995 13:30:11 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ab08649;
          15 Nov 95 21:17 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa08099;
          15 Nov 95 21:16 GMT
Received: from toad by oink with SMTP (PP) id <03620-0@oink>;
          Wed, 15 Nov 1995 20:59:35 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA08751;
          Wed, 15 Nov 1995 20:59:11 +0000
Date: Wed, 15 Nov 1995 20:59:11 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511152059.AA08751@toad.ig.co.uk>
To: dbi-users@fugue.com, phj@pilot.njin.net
Subject: Re: ofetch out of sequence (was deletion weirdnesses)
X-Sun-Charset: US-ASCII
content-length: 792
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: "Patricia H. Ju" <phj@pilot.njin.net>
> 
> Rokey.
> 
> This is what's happening:
> 
> query: DELETE ARTICLE WHERE AREAID = 10 at Table.pm line 360.
> ERROR EVENT: DBI::st=HASH(0x1a8af0)->DBI::default_handler:
>         1002 ORA-01002: fetch out of sequence (DBD: ofetch error)
>  at Table.pm line 362
> 
> Mind you, the articles I'm deleting have no dependenceies other than
> referrring to the areaID of table Area.  So I figured if I delete all
> the articles that are of area 10, *then* delete area 10, I should
> be ok, right ?  Apparently not.

The fetch out of sequence is more of an internal issue than anything else.

Did you use $dbh->do("...") to execute this? If not then you should.

If you did then please post a real code fragment and $dbh->debug(2);
trace log.

Tim.

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <05455-0@oink>;
          Thu, 16 Nov 1995 01:47:13 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816481905:08712:1; Thu, 16 Nov 95 00:31:45 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa08490;
          16 Nov 95 0:31 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA20438 for perldb-interest-real; Wed, 15 Nov 1995 15:12:26 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA20434 
          for <dbi-users@fugue.com>; Wed, 15 Nov 1995 15:12:24 -0800
Received: by gw.home.vix.com id AA29297; Wed, 15 Nov 95 15:14:48 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from dn800e0.fingerhut.com (daemon@localhost) 
          by dn800e0.fingerhut.com (8.6.12/8.6.12) with ESMTP id RAA14415;
          Wed, 15 Nov 1995 17:00:14 -0600
Received: from seag.fingerhut.com (GF007E0.SEAG.FINGERHUT.COM [151.210.140.7]) 
          by dn800e0.fingerhut.com (8.6.12/8.6.12) with SMTP id RAA14411;
          Wed, 15 Nov 1995 17:00:14 -0600
Received: from g0084.fingerhut.com. by seag.fingerhut.com (5.0/SMI-SVR4) 
          id AA01065; Wed, 15 Nov 1995 17:14:05 -0600
Received: by g0084.fingerhut.com. (5.x/SMI-SVR4) id AA07203;
          Wed, 15 Nov 1995 17:14:01 -0600
Date: Wed, 15 Nov 1995 17:14:01 -0600
From: Bruce.Albrecht@seag.fingerhut.com (Bruce Albrecht)
Message-Id: <9511152314.AA07203@g0084.fingerhut.com.>
To: dbi-users@vix.com
Cc: Tim.Bunce@ig.co.uk
Subject: Scripts dump core whenever I get an oracle error
Content-Length: 2278

I'm running Perl-5.001m, DBD-Oracle0.25, DBI-0.62 (or DBI-0.64), and
my script uses Oraperl.pm.  It seems like I always get a core dump
whenever there's an error in my ora_open statement.  I got different
results from DBI-0.62 and DBI-0.64:  DBI-0.62 displayed the error text
before dumping core, and DBI-0.64 just dumped core.  The following
stack frames were from the same script, and the perl binary was
identical, just the location of the Perl libraries and the DBI
interface was changed.  Is this a known problem (perhaps even fixed),
a new problem, or did I install this incorrectly?

DBI-0.62:

(dbx) where
=>[1] XS_DBD__Oracle__st__prepare(0x2700eaa8, 0x46, 0x1efc88, 0x142f98, 0x4, 0x0), at 0xef42e8f8
  [2] pp_entersub(0xab410, 0x1, 0x13eaa8, 0xa50b4, 0x0, 0x0), at 0x4e83c
  [3] run(0xf5548, 0xfffff7ff, 0x14aa88, 0x0, 0xffffffff, 0xf5548), at 0x49204
  [4] perl_call_sv(0xf5548, 0x0, 0x40, 0x40, 0x42, 0x0), at 0x1da38
  [5] XS_DBI_dispatch(0x0, 0x143a98, 0xef5e6d9c, 0xef5e6d84, 0xb7408, 0x14b1ac), at 0xef5e46c8
  [6] pp_entersub(0xab410, 0x1, 0x144eb4, 0xa50b4, 0x0, 0x0), at 0x4e83c
  [7] run(0x0, 0x1d188, 0x153fa8, 0x153fa8, 0xa8800, 0x0), at 0x49204
  [8] perl_run(0x0, 0x0, 0x0, 0xa2000, 0x0, 0xa2000), at 0x1d28c
  [9] main(0x4, 0xeffff24c, 0xeffff260, 0xa7c00, 0x0, 0x0), at 0x1bd5c

DBI-0.64:

(dbx) where
=>[1] sv_setiv(0x1bf0, 0x388, 0x6d650a00, 0x7efefeff, 0x81010100, 0xff00), at 0x502c0
  [2] ora_error(0x142fa4, 0x145a48, 0x388, 0xefffec44, 0x145908, 0xd5050), at 0xef42fb94
  [3] dbd_st_prepare(0x142fa4, 0x1, 0x0, 0x0, 0x145a08, 0x40000), at 0xef4305fc
  [4] XS_DBD__Oracle__st__prepare(0x2700eab4, 0x46, 0x1ef588, 0x142fa4, 0x4, 0x0), at 0xef42e8e8
  [5] pp_entersub(0xab410, 0x1, 0x13eab4, 0xa50b4, 0x0, 0x0), at 0x4e83c
  [6] run(0xf5748, 0xfffff7ff, 0x14be88, 0x0, 0xffffffff, 0xf5748), at 0x49204
  [7] perl_call_sv(0xf5748, 0x0, 0x40, 0x40, 0x42, 0x0), at 0x1da38
  [8] XS_DBI_dispatch(0x0, 0x143a78, 0xef5e704c, 0xef5e7034, 0xb7408, 0x14b1b8), at 0xef5e4860
  [9] pp_entersub(0xab410, 0x1, 0x144ec0, 0xa50b4, 0x0, 0x0), at 0x4e83c
  [10] run(0x0, 0x1d188, 0x154728, 0x154728, 0xa8800, 0x0), at 0x49204
  [11] perl_run(0x0, 0x0, 0x0, 0xa2000, 0x0, 0xa2000), at 0x1d28c
  [12] main(0x4, 0xeffff204, 0xeffff218, 0xa7c00, 0x0, 0x0), at 0x1bd5c
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05456-9@oink>;
          Thu, 16 Nov 1995 01:47:55 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816483365:04080:1; Thu, 16 Nov 95 00:56:05 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa03855;
          16 Nov 95 0:56 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA20568 for dbi-users-real; Wed, 15 Nov 1995 15:53:59 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA20564 
          for <dbi-users@fugue.com>; Wed, 15 Nov 1995 15:53:55 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ac13441;
          15 Nov 95 23:50 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id msg.aa09828;
          15 Nov 95 23:49 GMT
Received: from toad by oink with SMTP (PP) id <05092-0@oink>;
          Wed, 15 Nov 1995 23:49:01 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA09763;
          Wed, 15 Nov 1995 23:48:28 +0000
Date: Wed, 15 Nov 1995 23:48:28 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511152348.AA09763@toad.ig.co.uk>
To: dbi-users@fugue.com
Subject: Vacation!
Cc: perl5-porters@nicoh.com
X-Sun-Charset: US-ASCII
content-length: 700
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


I'm going to be away for the next two weeks (18th Nov thru 3rd Dec).

I'm going to sit on a beach in southern Portugal and read and relax
(and have nothing to do with computers or perl*)

I hope to make a new DBI & DBD release before I go (since ftp.demon is
still down I'll probably send it directly into the CPAN archives).

The Oraperl.pm included will be the last version before it goes beta.

Tim.

* Actually I will spend some time on ODBC / SQL CLI issues. We need
to establish a strategy soon. A DBD::ODBC looks very probable. The
DBI/DBD interface will almost certainly change. It's a thorny area.
I need time to think.

CC'd to perl5-porters to save me writing the same thing again there.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05456-11@oink>;
          Thu, 16 Nov 1995 01:48:01 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816483461:04569:1; Thu, 16 Nov 95 00:57:41 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa04248;
          16 Nov 95 0:56 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA20530 for dbi-users-real; Wed, 15 Nov 1995 15:47:43 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA20526 
          for <dbi-users@fugue.com>; Wed, 15 Nov 1995 15:47:33 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.aa12571;
          15 Nov 95 23:49 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id msg.aa09614;
          15 Nov 95 23:48 GMT
Received: from toad by oink with SMTP (PP) id <05041-0@oink>;
          Wed, 15 Nov 1995 23:38:53 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA09760;
          Wed, 15 Nov 1995 23:38:30 +0000
Date: Wed, 15 Nov 1995 23:38:30 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511152338.AA09760@toad.ig.co.uk>
To: dbi-users@fugue.com, Bruce.Albrecht@seag.fingerhut.com
Subject: Re: Scripts dump core whenever I get an oracle error
X-Sun-Charset: US-ASCII
content-length: 2791
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Bruce.Albrecht@seag.fingerhut.com (Bruce Albrecht)
> To: perldb-interest@vix.com

Please start using the new dbi-users@fugue.com address.

> I'm running Perl-5.001m, DBD-Oracle0.25, DBI-0.62 (or DBI-0.64), and
> my script uses Oraperl.pm.  It seems like I always get a core dump
> whenever there's an error in my ora_open statement.  I got different
> results from DBI-0.62 and DBI-0.64:  DBI-0.62 displayed the error text
> before dumping core, and DBI-0.64 just dumped core.

Be aware that it's generally a very bad idea to mix-and-match
pre-compiled versions of DBI's and DBD's. To be safe a DBD should
only be used with the DBI that was installed when it was compiled.

> The following
> stack frames were from the same script, and the perl binary was
> identical, just the location of the Perl libraries and the DBI
> interface was changed.  Is this a known problem (perhaps even fixed),
> a new problem, or did I install this incorrectly?
 
> DBI-0.64:
> 
> (dbx) where
> =>[1] sv_setiv(0x1bf0, 0x388, 0x6d650a00, 0x7efefeff, 0x81010100, 0xff00), at 0x502c0
>   [2] ora_error(0x142fa4, 0x145a48, 0x388, 0xefffec44, 0x145908, 0xd5050), at 0xef42fb94
>   [3] dbd_st_prepare(0x142fa4, 0x1, 0x0, 0x0, 0x145a08, 0x40000), at 0xef4305fc

This is much more helpful than most people who report a core dump
without a stack trace. Thanks. (Recompiling the DBD::Oracle module
with -g and without -O would show the line numbers but in this case
it doesn't matter since there's only one sv_setiv in ora_error)

Please rebuild DBI-0.64 (with -g) and install it. Then rebuild DBD::Oracle
(with -g) using the newly installed DBI.

The problem maybe that the string is too long. I've recently changed the
code so it can deal with strings of any length. Try this:

void
ora_error(h, lda, rc, what)
    SV *h;
    Lda_Def *lda;
    int rc;
    char *what;
{
    D_imp_xxh(h);
    sb2 rc_sb2 = rc;    /* stop GCC complaining about arg2 of oerhms() */
    SV *errstr = DBIc_ERRSTR(imp_xxh);
    if (lda) {  /* is oracle error (allow for non-oracle errors) */
        int len;
        char msg[1024];
        /* Oracle oerhms can do duplicate free if connect fails */
        oerhms(lda, rc_sb2, (text*)msg, sizeof(msg));
        len = strlen(msg);
        if (len && msg[len-1] == '\n')
            msg[len-1] = '\0'; /* trim off \n from end of message */
        sv_setpv(errstr, (char*)msg);
    }
    else sv_setpv(errstr, what);
    sv_setiv(DBIc_ERR(imp_xxh), (IV)rc);
    if (what && lda) {
        sv_catpv(errstr, " (DBD: ");
        sv_catpv(errstr, what);
        sv_catpv(errstr, ")");
    }
    DBIh_EVENT2(h, ERROR_event, DBIc_ERR(imp_xxh), errstr);
    if (dbis->debug >= 2)
        fprintf(DBILOGFP, "%s error %d recorded: %s\n",
                what, rc, SvPV(errstr,na));
}

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <06320-4@oink>;
          Thu, 16 Nov 1995 03:14:55 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816490094:16585:1; Thu, 16 Nov 95 02:48:14 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa16514;
          16 Nov 95 2:48 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA21152 for dbi-dev-real; Wed, 15 Nov 1995 17:46:00 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id RAA21148 
          for <dbi-dev@fugue.com>; Wed, 15 Nov 1995 17:45:54 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ab08721;
          16 Nov 95 1:47 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa25406;
          16 Nov 95 1:47 GMT
Received: from toad by oink with SMTP (PP) id <05315-0@oink>;
          Thu, 16 Nov 1995 00:41:16 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA09893;
          Thu, 16 Nov 1995 00:40:53 +0000
Date: Thu, 16 Nov 1995 00:40:53 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511160040.AA09893@toad.ig.co.uk>
To: dbi-dev@fugue.com, mhm@austin.ibm.com
Subject: Re: Blobs are now working on DB2perl
X-Sun-Charset: US-ASCII
content-length: 1687
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: mhm@austin.ibm.com
> 
> A few tweaks in DBD::DB2 and big correction in my perl script and
> everyting works fine.
> 
> A while back, I asked about other databases abilities to read a blob to
> a "file" and Tim suggested something like  
> 
> $sth->copy_blob_to_file(1, $open_file_handle);
> 
> I thought about it for awhile and would like to suggest the following:
> 
> $sth->readblob_to_file(field, file_or_device_name);
> 
> First, the above is (atleast for DB2) more semantically correct, in that
> the DB2 engine will be doing al the I/O not perl.  And secondly, it
> would allow the databases that support direct engine I/O to work without
> wasting cycles and file handles.
> 
> Any serious downside that I'm missing?

Nope.

I've renamed readblob to blob_read in anticipation of other blob_* methods
and implemented a default blob_copy_to_file using blob_read.

(A readblob stub is provided for old code as a migration aid. It will
complain once but still call blob_read for you.)

blob_copy_to_file will copy to either a filename or a filehandle
passed as a globref:

    sub blob_copy_to_file {     # returns length or undef on error
        my($self, $field, $filename_or_handleref, $blocksize) = @_;
        my $fh = $filename_or_handleref;
        my($len, $buf) = (0, "");
        $blocksize ||= 512;     # not too ambitious
        local(*FH);
        unless(ref $fh) {
            open(FH, ">$fh") || return undef;
            $fh = \*FH;
        }
        while(defined($self->blob_read($field, $len, $blocksize, \$buf)) {
            print $fh $buf;
            $len += length $buf;
        }
        close(FH);
        $len;
    }

Okay? (speak soon :-)

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <07018-1@oink>;
          Thu, 16 Nov 1995 07:06:00 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816492876:29697:1; Thu, 16 Nov 95 03:34:36 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa29652;
          16 Nov 95 3:34 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA21360 for dbi-dev-real; Wed, 15 Nov 1995 18:39:32 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id SAA21356 
          for <dbi-dev@fugue.com>; Wed, 15 Nov 1995 18:39:28 -0800
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.86.169]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id UAA43026 
          for <dbi-dev@fugue.com>; Wed, 15 Nov 1995 20:41:57 -0600
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for dbi-dev@fugue.com at austin.ibm.com; id AA04158;
          Wed, 15 Nov 1995 20:41:54 -0600
Message-Id: <9511160241.AA04158@dax.austin.ibm.com>
To: dbi-dev@fugue.com
Subject: Re: Blobs are now working on DB2perl
In-Reply-To: Your message of Thu, 16 Nov 95 00:40:53 +0000. <9511160040.AA09893@toad.ig.co.uk>
Date: Wed, 15 Nov 95 20:41:54 -0600


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|> > From: mhm@austin.ibm.com
|> > it would allow the databases that support direct engine I/O to work 
|> > without wasting cycles and file handles.
|> > 
|> 
|> Nope.
|> 
|> I've renamed readblob to blob_read in anticipation of other blob_* methods
|> and implemented a default blob_copy_to_file using blob_read.
|> 
|> (A readblob stub is provided for old code as a migration aid. It will
|> complain once but still call blob_read for you.)
|> 
|> blob_copy_to_file will copy to either a filename or a filehandle
|> passed as a globref:
|> 
|>     sub blob_copy_to_file {     # returns length or undef on error
|>         my($self, $field, $filename_or_handleref, $blocksize) = @_;
|>         my $fh = $filename_or_handleref;
|>         my($len, $buf) = (0, "");
|>         $blocksize ||= 512;     # not too ambitious
|>         local(*FH);
|>         unless(ref $fh) {
|>             open(FH, ">$fh") || return undef;
|>             $fh = \*FH;
|>         }
|>         while(defined($self->blob_read($field, $len, $blocksize, \$buf)) {
|>             print $fh $buf;
|>             $len += length $buf;
|>         }
|>         close(FH);
|>         $len;
|>     }
|> 
|> Okay? (speak soon :-)

Well.....I think we are having paradigm difficulties.  From my point of
view, blob_copy_to_file is closer to blob_fetch_by_user_defined_block
and what I want is blob_straight_to_file_bypassing_perl.

Or more compactly, DB2 provides a method of reading in user defined
chunks of a blob and a method of slurping the whole blob in one read. So
for me with DB2, I hate to be provided arguments for which I have no
need or use (block size).  

Let me sleep on it, as I am somewhat scatter brained between the hour,
the cold and the medication.

Mike 
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <10226-0@oink>;
          Thu, 16 Nov 1995 16:42:29 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816533176:09168:1; Thu, 16 Nov 95 14:46:16 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa08921;
          16 Nov 95 14:46 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id EAA23426 for dbi-dev-real; Thu, 16 Nov 1995 04:43:38 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id EAA23422 
          for <dbi-dev@fugue.com>; Thu, 16 Nov 1995 04:43:36 -0800
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.86.169]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id GAA45496 
          for <dbi-dev@fugue.com>; Thu, 16 Nov 1995 06:46:05 -0600
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for dbi-dev@fugue.com at austin.ibm.com; id AA21326;
          Thu, 16 Nov 1995 06:46:04 -0600
Message-Id: <9511161246.AA21326@dax.austin.ibm.com>
To: dbi-dev@fugue.com
Subject: Re: Error codes and such
In-Reply-To: Your message of Wed, 15 Nov 95 20:05:32 +0000. <9511152005.AA08597@toad.ig.co.uk>
Date: Thu, 16 Nov 95 06:46:04 -0600


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|>
|>It's probable that a $DBI::state variable based on the SQL 'SQLSTATE'
|>variable with defined values will be added sometime soon.
|>

Thanks, that will make life with DB2 much easier.

Mike
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <10226-3@oink>;
          Thu, 16 Nov 1995 16:42:47 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816534186:21290:0; Thu, 16 Nov 95 15:03:06 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id aa21225;
          16 Nov 95 15:03 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Thu, 16 Nov 1995 14:58:22 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id FAA23457 for dbi-dev-real; Thu, 16 Nov 1995 05:07:15 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id FAA23453 
          for <dbi-dev@fugue.com>; Thu, 16 Nov 1995 05:07:13 -0800
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.86.169]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id HAA29338 
          for <dbi-dev@fugue.com>; Thu, 16 Nov 1995 07:09:42 -0600
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for dbi-dev@fugue.com at austin.ibm.com; id AA22646;
          Thu, 16 Nov 1995 07:09:42 -0600
Message-Id: <9511161309.AA22646@dax.austin.ibm.com>
To: dbi-dev@fugue.com
Subject: 2nd attempt at commenting on blob_copy_to_file
In-Reply-To: Your message of Thu, 16 Nov 95 00:40:53 +0000. <9511160040.AA09893@toad.ig.co.uk>
Date: Thu, 16 Nov 95 07:09:41 -0600


After reading what I posted last night, I apologize for being way
too scatter brained.......So lets try again.

Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|>
|>I've renamed readblob to blob_read in anticipation of other blob_*
|>methods and implemented a default blob_copy_to_file using blob_read.
|>
|>(A readblob stub is provided for old code as a migration aid. It will
|>complain once but still call blob_read for you.)
|>
|>blob_copy_to_file will copy to either a filename or a filehandle
|>passed as a globref:
|>
|>    sub blob_copy_to_file {     # returns length or undef on error
|>        my($self, $field, $filename_or_handleref, $blocksize) = @_;
|>        my $fh = $filename_or_handleref;
|>        my($len, $buf) = (0, "");
|>        $blocksize ||= 512;     # not too ambitious
|>        local(*FH);
|>        unless(ref $fh) {
|>            open(FH, ">$fh") || return undef;
|>            $fh = \*FH;
|>        }
|>        while(defined($self->blob_read($field, $len, $blocksize, \$buf)){
|>            print $fh $buf;
|>            $len += length $buf;
|>        }
|>        close(FH);
|>        $len;
|>    }

Ok, the problem I have with this implementation is the possibility of
getting a reference to an open file handle.  With DB2, I have the
ability to bind the incoming blob column directly to a "file", thus
by passing any I/O by perl and requiring only one fetch from the
database.

I guess the next questions are:

When perl opens a file is it opened in O_EXCL mode?  

If not, can I retrieve the original file name if I have the reference?

Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12918-4@oink>;
          Thu, 16 Nov 1995 20:51:05 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816554884:04735:0; Thu, 16 Nov 95 20:48:04 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa04640;
          16 Nov 95 20:48 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA24157 for dbi-dev-real; Thu, 16 Nov 1995 11:04:57 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id LAA24153 
          for <dbi-dev@fugue.com>; Thu, 16 Nov 1995 11:04:55 -0800
Received: by gw.home.vix.com id AA21566; Thu, 16 Nov 95 11:07:19 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ae29802;
          16 Nov 95 19:01 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id msg.aa05855;
          16 Nov 95 19:00 GMT
Received: from toad by oink with SMTP (PP) id <11200-0@oink>;
          Thu, 16 Nov 1995 17:30:18 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA12274;
          Thu, 16 Nov 1995 17:29:54 +0000
Date: Thu, 16 Nov 1995 17:29:54 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511161729.AA12274@toad.ig.co.uk>
To: dbi-dev@fugue.com, mhm@austin.ibm.com
Subject: Re: 2nd attempt at commenting on blob_copy_to_file
X-Sun-Charset: US-ASCII
Content-Length: 1102
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: mhm@austin.ibm.com
> 
> |>    sub blob_copy_to_file {     # returns length or undef on error
> |>        my($self, $field, $filename_or_handleref, $blocksize) = @_;
> 
> Ok, the problem I have with this implementation is the possibility of
> getting a reference to an open file handle.  With DB2, I have the
> ability to bind the incoming blob column directly to a "file", thus
> by passing any I/O by perl and requiring only one fetch from the
> database.

Ah, so what you want is something like an extended bind_column() that
establishes the fetch-into-file mechanism. Umm.

Is that part of ODBC?

Note that the blob_copy_to_file is a default 'fallback' method.
I'd expect you'd probably implement a better one in DBD::DB2 (but
keeping the same interface).

> I guess the next questions are:
> 
> When perl opens a file is it opened in O_EXCL mode?  

Nope (currently you need to do fancy stuff with POSIX for that)

> If not, can I retrieve the original file name if I have the reference?

Yes, if you saved the name as part of the glob being referenced.

> Mike
> mhm@austin.ibm.com

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13726-2@oink>;
          Thu, 16 Nov 1995 22:27:25 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816560089:22683:0; Thu, 16 Nov 95 22:14:49 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa22678;
          16 Nov 95 22:14 GMT
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id sg.aa14816;
          16 Nov 95 22:14 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Thu, 16 Nov 1995 22:09:32 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA24311 for dbi-dev-real; Thu, 16 Nov 1995 12:08:11 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA24307 
          for <dbi-dev@fugue.com>; Thu, 16 Nov 1995 12:08:07 -0800
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.86.169]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id OAA12747;
          Thu, 16 Nov 1995 14:10:27 -0600
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for dbi-dev@fugue.com at austin.ibm.com; id AA18202;
          Thu, 16 Nov 1995 14:10:24 -0600
Message-Id: <9511162010.AA18202@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: dbi-dev@fugue.com, mhm@austin.ibm.com
Subject: Re: 2nd attempt at commenting on blob_copy_to_file
In-Reply-To: Your message of Thu, 16 Nov 95 17:29:54 +0000. <9511161729.AA12274@toad.ig.co.uk>
Date: Thu, 16 Nov 95 14:10:23 -0600


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|>> From: mhm@austin.ibm.com
|>> 
|>> |>    sub blob_copy_to_file {     # returns length or undef on error
|>> |>        my($self, $field, $filename_or_handleref, $blocksize) = @_;
|>> 
|>> Ok, the problem I have with this implementation is the possibility of
|>> getting a reference to an open file handle.  With DB2, I have the
|>> ability to bind the incoming blob column directly to a "file", thus
|>> by passing any I/O by perl and requiring only one fetch from the
|>> database.
|>
|>Ah, so what you want is something like an extended bind_column() that
|>establishes the fetch-into-file mechanism. Umm.

What I want is to be able to use the DB2 CLI mechanisms to do it for me.
In essence, I would like to be able to do the following

sub blob_copy_to_file {
    my($self, $field, $filename, $blocksize) = @_;
    my ($len);
    
    $len = $self->read_blob_to_device($field, $filename, $blocksize);
}

dbd_blob2dev(IV field, SV *name, IV blksz)
{
    int rt_len;

    SQLBindFileToCol(imp_sth->phstmt,field,SvPVx(name->sv),
         arg4,SQL_FILE_OVERWRITE,MAX_NAME_LENGTH,&rt_len,&blob_locator);

    SQLFetch(imp_sth->phstmt);

    return (rt_len);
}

Granted the above doesn't contain everything (no error checking and I
sure I don't have the all the correct magic) but merely the gist of
what I would like to be able to do.

|>Is that part of ODBC?

Not yet.....

|>Note that the blob_copy_to_file is a default 'fallback' method.
|>I'd expect you'd probably implement a better one in DBD::DB2 (but
|>keeping the same interface).
|>
|>> I guess the next questions are:
|>> 
|>> When perl opens a file is it opened in O_EXCL mode?  

Ok, that implies that if I was handed a ref to an open FH I could
have the database engine reopen it and dump the blob in question.

|>Nope (currently you need to do fancy stuff with POSIX for that)
|>
|>> If not, can I retrieve the original file name if I have the reference?
|>
|>Yes, if you saved the name as part of the glob being referenced.

Good, now all I have to do is figure out how to save the name as part
of the glob....unfortunately, following all the discussions on globs has
been very low on the ToDo list.

So is it safe to assume the new version will be out sometime on the
17th?

Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <14010-0@oink>;
          Thu, 16 Nov 1995 22:57:37 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816561544:05762:0; Thu, 16 Nov 95 22:39:04 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa05746;
          16 Nov 95 22:39 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Thu, 16 Nov 1995 22:35:46 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA24493 for dbi-dev-real; Thu, 16 Nov 1995 12:44:06 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id MAA24489 
          for <dbi-dev@fugue.com>; Thu, 16 Nov 1995 12:44:00 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id msg.ai09414;
          16 Nov 95 20:38 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa01945;
          16 Nov 95 20:38 GMT
Received: from toad by oink with SMTP (PP) id <12663-0@oink>;
          Thu, 16 Nov 1995 20:23:31 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA13110;
          Thu, 16 Nov 1995 20:23:03 +0000
Date: Thu, 16 Nov 1995 20:23:03 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511162023.AA13110@toad.ig.co.uk>
To: mhm@austin.ibm.com
Subject: Re: 2nd attempt at commenting on blob_copy_to_file
Cc: dbi-dev@fugue.com
X-Sun-Charset: US-ASCII
content-length: 788
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: mhm@austin.ibm.com
> 
>     SQLBindFileToCol(imp_sth->phstmt,field,SvPVx(name->sv),
>          arg4,SQL_FILE_OVERWRITE,MAX_NAME_LENGTH,&rt_len,&blob_locator);

Thanks.

> |>> If not, can I retrieve the original file name if I have the reference?
> |>
> |>Yes, if you saved the name as part of the glob being referenced.
> 
> Good, now all I have to do is figure out how to save the name as part
> of the glob....unfortunately, following all the discussions on globs has
> been very low on the ToDo list.

	$FH = "/etc/motd";
	@FH = (...);
	%FH = (...);
	open(FH, $FH);
	$fhref = \*FH;
	...
	print $$fhref;
	
> So is it safe to assume the new version will be out sometime on the
> 17th?

If it's not then it won't appear for a couple of weeks!
(Thanks for the reminder! :-)

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <15351-7@oink>;
          Fri, 17 Nov 1995 07:06:34 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816573133:28424:0; Fri, 17 Nov 95 01:52:13 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa28298;
          17 Nov 95 1:52 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA25059 for dbi-announce-real; Thu, 16 Nov 1995 16:05:32 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id QAA25050;
          Thu, 16 Nov 1995 16:05:19 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id msg.af01057;
          17 Nov 95 0:04 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa17722;
          17 Nov 95 0:03 GMT
Received: from toad by oink with SMTP (PP) id <14505-0@oink>;
          Fri, 17 Nov 1995 00:03:07 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA14346;
          Fri, 17 Nov 1995 00:02:38 +0000
Date: Fri, 17 Nov 1995 00:02:38 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511170002.AA14346@toad.ig.co.uk>
To: dbi-announce@fugue.com
Subject: DBI-0.65.tar.Z and DBD-Oracle-0.27.tar.Z
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 4509
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424

New DBI and DBD::Oracle releases:

---

Changes in DBI 0.65,    16 Nov 1995

    Added $DBI::state to hold SQL CLI / ODBC SQLSTATE value.
    SQLSTATE "00000" (success) is returned as "" (false), all else is true.
    If a driver does not explicitly initialise it (via $h->{State} or
    DBIc_STATE(imp_xxh) then $DBI::state will automatically return "" if
    $DBI::err is false otherwise "S1000" (general error).
    As always, this is a new feature and liable to change.

    The is *no longer* a default error handler!
    You can add your own using push(@{$h->{Handlers}}, sub { ... })
    but be aware that this interface may change (or go away).

    The DBI now automatically clears $DBI::err, errstr and state before
    calling most DBI methods. Previously error conditions would persist.
    Added DBIh_CLEAR_ERROR(imp_xxh) macro.

    DBI now EXPORT_OK's some utility functions, neat($value),
    neat_list(@values) and dump_results($sth).

    Slightly enhanced t/min.t minimal test script in an effort to help
    narrow down the few stray core dumps that some porters still report.

    Renamed readblob to blob_read (old name still works but warns).
    Added default blob_copy_to_file method.

    Added $sth = $dbh->tables method. This returns an $sth for a query
    which has these columns: TABLE_CATALOGUE, TABLE_OWNER, TABLE_NAME,
    TABLE_TYPE, REMARKS in that order. The TABLE_CATALOGUE column
    should be ignored for now.
 
 
Changes in DBI 0.64,    23 Oct 1995
 
    Fixed 'disconnect invalidates 1 associated cursor(s)' problem.
    Drivers using DBIc_ACTIVE_on/off() macros should not need any changes
    other than to test for DBIc_ACTIVE_KIDS() instead of DBIc_KIDS().
    Fixed possible core dump in dbih_clearcom during global destruction.

---

Changes in DBD::Oracle 0.27, 16 Nov 1995:

    Improved oraperl compatibility in assorted ways.
    Added the original oraperl manual to Oraperl.pm as pod.
    (perldoc Oraperl will display the manual).
    The manual highlights remaining differences in the emulation.
    Added original oraperl examples into oraperl.ex directory.

    Improved error reporting in test.pl.
    Removed some internal limits.
    Renamed readblob to blob_read and fixed return value.
    Implemented $sth = $dbh->tables method (see DBI changes file).
    Uses $Config{archlibexp} not $Config{archlib} in makefile.PL
    Requires DBI-0.65.

    I've still not got around to implementing a row cache (array
    fetch) but it's next on my list.

    This should be the last alpha release of the oraperl emulation.
    (The DBD::Oracle module itself will remain alpha for awhile yet.)


Changes in DBD::Oracle 0.26, 23 Oct 1995:

    Removed error message (sql) size limits in parse and ora_error.
    Fixed FETCH NUM_OF_PARAMS so it doesn't trigger a describe.
    The ora_lengths and ora_types attributes work in non-oraperl mode.

---

These files are *NOT* available from ftp.demon.co.uk because the system
is still down (long story, don't ask).

The files have been uploaded to the Perl Module Server site from
where they will be replicated into the CPAN archives:

    CPAN master site
        ftp://ftp.funet.fi/pub/languages/perl/CPAN/
    Africa
        ftp://ftp.is.co.za/programming/perl/CPAN/
    Asia
        ftp://dongpo.math.ncu.edu.tw/perl/CPAN
        ftp://ftp.lab.kdd.co.jp/lang/perl/CPAN/
    Australasia
        ftp://coombs.anu.edu.au/pub/perl/
        ftp://ftp.mame.mu.oz.au/pub/perl/CPAN/
    Europe
        ftp://ftp.ci.uminho.pt/pub/lang/perl/
        ftp://ftp.cs.ruu.nl/pub/PERL/CPAN/
        ftp://ftp.demon.co.uk/pub/mirrors/perl/CPAN/
        ftp://ftp.pasteur.fr/pub/computing/unix/perl/CPAN/
        ftp://ftp.rz.ruhr-uni-bochum.de/pub/programming/languages/perl/CPAN/
        ftp://ftp.sunet.se/pub/lang/perl/CPAN/
        ftp://ftp.switch.ch/mirror/CPAN/
        ftp://orpheu.ci.uminho.pt/pub/lang/perl/
    North America
        ftp://ftp.cis.ufl.edu/pub/perl/CPAN/
        ftp://ftp.delphi.com/pub/mirrors/packages/perl/CPAN/
        ftp://ftp.sedl.org/pub/mirrors/CPAN/
        ftp://ftp.sterling.com/programming/languages/perl/
        ftp://ftp.uoknor.edu/mirrors/CPAN/
        ftp://uiarchive.cso.uiuc.edu/pub/lang/perl/CPAN/

but it may take a day or so.

Since I'm going to be away for two weeks, if this release has problems
(or you have problems with it) then you'll just have to help each other.

Enjoy.

Tim.

p.s. The DBI Changes file in the release has an incorrect 'Changes in...'
line. Ignore it.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15352-21@oink>;
          Fri, 17 Nov 1995 07:08:56 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816573025:06572:0; Fri, 17 Nov 95 01:50:25 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa06565;
          17 Nov 95 1:50 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Fri, 17 Nov 1995 01:50:15 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA25065 for dbi-users-real; Thu, 16 Nov 1995 16:08:44 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id QAA25050;
          Thu, 16 Nov 1995 16:05:19 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id msg.af01057;
          17 Nov 95 0:04 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa17722;
          17 Nov 95 0:03 GMT
Received: from toad by oink with SMTP (PP) id <14505-0@oink>;
          Fri, 17 Nov 1995 00:03:07 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA14346;
          Fri, 17 Nov 1995 00:02:38 +0000
Date: Fri, 17 Nov 1995 00:02:38 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9511170002.AA14346@toad.ig.co.uk>
To: dbi-announce@fugue.com
Subject: DBI-0.65.tar.Z and DBD-Oracle-0.27.tar.Z
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 4509
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424

New DBI and DBD::Oracle releases:

---

Changes in DBI 0.65,    16 Nov 1995

    Added $DBI::state to hold SQL CLI / ODBC SQLSTATE value.
    SQLSTATE "00000" (success) is returned as "" (false), all else is true.
    If a driver does not explicitly initialise it (via $h->{State} or
    DBIc_STATE(imp_xxh) then $DBI::state will automatically return "" if
    $DBI::err is false otherwise "S1000" (general error).
    As always, this is a new feature and liable to change.

    The is *no longer* a default error handler!
    You can add your own using push(@{$h->{Handlers}}, sub { ... })
    but be aware that this interface may change (or go away).

    The DBI now automatically clears $DBI::err, errstr and state before
    calling most DBI methods. Previously error conditions would persist.
    Added DBIh_CLEAR_ERROR(imp_xxh) macro.

    DBI now EXPORT_OK's some utility functions, neat($value),
    neat_list(@values) and dump_results($sth).

    Slightly enhanced t/min.t minimal test script in an effort to help
    narrow down the few stray core dumps that some porters still report.

    Renamed readblob to blob_read (old name still works but warns).
    Added default blob_copy_to_file method.

    Added $sth = $dbh->tables method. This returns an $sth for a query
    which has these columns: TABLE_CATALOGUE, TABLE_OWNER, TABLE_NAME,
    TABLE_TYPE, REMARKS in that order. The TABLE_CATALOGUE column
    should be ignored for now.
 
 
Changes in DBI 0.64,    23 Oct 1995
 
    Fixed 'disconnect invalidates 1 associated cursor(s)' problem.
    Drivers using DBIc_ACTIVE_on/off() macros should not need any changes
    other than to test for DBIc_ACTIVE_KIDS() instead of DBIc_KIDS().
    Fixed possible core dump in dbih_clearcom during global destruction.

---

Changes in DBD::Oracle 0.27, 16 Nov 1995:

    Improved oraperl compatibility in assorted ways.
    Added the original oraperl manual to Oraperl.pm as pod.
    (perldoc Oraperl will display the manual).
    The manual highlights remaining differences in the emulation.
    Added original oraperl examples into oraperl.ex directory.

    Improved error reporting in test.pl.
    Removed some internal limits.
    Renamed readblob to blob_read and fixed return value.
    Implemented $sth = $dbh->tables method (see DBI changes file).
    Uses $Config{archlibexp} not $Config{archlib} in makefile.PL
    Requires DBI-0.65.

    I've still not got around to implementing a row cache (array
    fetch) but it's next on my list.

    This should be the last alpha release of the oraperl emulation.
    (The DBD::Oracle module itself will remain alpha for awhile yet.)


Changes in DBD::Oracle 0.26, 23 Oct 1995:

    Removed error message (sql) size limits in parse and ora_error.
    Fixed FETCH NUM_OF_PARAMS so it doesn't trigger a describe.
    The ora_lengths and ora_types attributes work in non-oraperl mode.

---

These files are *NOT* available from ftp.demon.co.uk because the system
is still down (long story, don't ask).

The files have been uploaded to the Perl Module Server site from
where they will be replicated into the CPAN archives:

    CPAN master site
        ftp://ftp.funet.fi/pub/languages/perl/CPAN/
    Africa
        ftp://ftp.is.co.za/programming/perl/CPAN/
    Asia
        ftp://dongpo.math.ncu.edu.tw/perl/CPAN
        ftp://ftp.lab.kdd.co.jp/lang/perl/CPAN/
    Australasia
        ftp://coombs.anu.edu.au/pub/perl/
        ftp://ftp.mame.mu.oz.au/pub/perl/CPAN/
    Europe
        ftp://ftp.ci.uminho.pt/pub/lang/perl/
        ftp://ftp.cs.ruu.nl/pub/PERL/CPAN/
        ftp://ftp.demon.co.uk/pub/mirrors/perl/CPAN/
        ftp://ftp.pasteur.fr/pub/computing/unix/perl/CPAN/
        ftp://ftp.rz.ruhr-uni-bochum.de/pub/programming/languages/perl/CPAN/
        ftp://ftp.sunet.se/pub/lang/perl/CPAN/
        ftp://ftp.switch.ch/mirror/CPAN/
        ftp://orpheu.ci.uminho.pt/pub/lang/perl/
    North America
        ftp://ftp.cis.ufl.edu/pub/perl/CPAN/
        ftp://ftp.delphi.com/pub/mirrors/packages/perl/CPAN/
        ftp://ftp.sedl.org/pub/mirrors/CPAN/
        ftp://ftp.sterling.com/programming/languages/perl/
        ftp://ftp.uoknor.edu/mirrors/CPAN/
        ftp://uiarchive.cso.uiuc.edu/pub/lang/perl/CPAN/

but it may take a day or so.

Since I'm going to be away for two weeks, if this release has problems
(or you have problems with it) then you'll just have to help each other.

Enjoy.

Tim.

p.s. The DBI Changes file in the release has an incorrect 'Changes in...'
line. Ignore it.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <28352-4@oink>;
          Mon, 20 Nov 1995 07:17:17 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816718061:06683:0; Sat, 18 Nov 95 18:07:41 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa06534;
          18 Nov 95 18:07 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA03400 for dbi-dev-real; Sat, 18 Nov 1995 08:43:27 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from aladdin.rotterdam.luna.net (schuller@aladdin.rotterdam.luna.net [194.151.24.4]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA03396 
          for <dbi-dev@toccata.fugue.com>; Sat, 18 Nov 1995 08:43:24 -0800
Received: (from schuller@localhost) 
          by aladdin.rotterdam.luna.net (8.6.12/8.6.12) id RAA16365 
          for dbi-dev@toccata.fugue.com; Sat, 18 Nov 1995 17:46:05 -0100
Message-Id: <199511181846.RAA16365@aladdin.rotterdam.luna.net>
Subject: Postgres95?
To: dbi-dev@toccata.fugue.com
Date: Sat, 18 Nov 1995 17:46:03 -0100 (GMT)
From: Schuller@Luna.nl (Bart Schuller)
X-Mailer: ELM [version 2.4 PL24 ME8b]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 127

Hello,

Has anyone thought about writing DBD:Pg95 ? If not, would it be possible
to use part of another adapter (mSQL)?

Bart.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <07789-80@oink>;
          Tue, 21 Nov 1995 12:04:56 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816943111:25691:0; Tue, 21 Nov 95 08:38:31 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa25659;
          21 Nov 95 8:38 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id XAA01185 for dbi-dev-real; Mon, 20 Nov 1995 23:16:23 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id XAA01181;
          Mon, 20 Nov 1995 23:16:11 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id NAA06855; Sun, 19 Nov 1995 13:00:23 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511191300.NAA06855@fruitbat.mcqueen.com>
Subject: New DBI release
To: dbi-users@fugue.com, dbi-dev@fugue.com
Date: Sun, 19 Nov 1995 13:00:22 +0000 (GMT)
Cc: Tim.Bunce@ig.co.uk
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 365


I've tested the new release of the DBI Switch ( 0.65 ) against the
following drivers:

	DBD-Oracle-0.27		compiles fine on Solaris2.3
	DBD-mSQL-0.60pl7	compiles fine on Solaris2.3 and Linux 1.2.13
	DBD-Informix-0.20pl0	compiles fine on Solaris2.3

Regards.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <07789-82@oink>;
          Tue, 21 Nov 1995 12:05:06 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816943493:28648:0; Tue, 21 Nov 95 08:44:53 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa28611;
          21 Nov 95 8:44 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id XAA01222 for dbi-users-real; Mon, 20 Nov 1995 23:21:21 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id XAA01181;
          Mon, 20 Nov 1995 23:16:11 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id NAA06855; Sun, 19 Nov 1995 13:00:23 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511191300.NAA06855@fruitbat.mcqueen.com>
Subject: New DBI release
To: dbi-users@fugue.com, dbi-dev@fugue.com
Date: Sun, 19 Nov 1995 13:00:22 +0000 (GMT)
Cc: Tim.Bunce@ig.co.uk
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 365


I've tested the new release of the DBI Switch ( 0.65 ) against the
following drivers:

	DBD-Oracle-0.27		compiles fine on Solaris2.3
	DBD-mSQL-0.60pl7	compiles fine on Solaris2.3 and Linux 1.2.13
	DBD-Informix-0.20pl0	compiles fine on Solaris2.3

Regards.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <01579-0@oink>;
          Tue, 21 Nov 1995 17:21:36 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816968648:15450:0; Tue, 21 Nov 95 15:44:08 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa15348;
          21 Nov 95 15:44 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id FAA03426 for dbi-users-real; Tue, 21 Nov 1995 05:32:29 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id FAA03417;
          Tue, 21 Nov 1995 05:31:11 -0800
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.86.169]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id HAA36396;
          Tue, 21 Nov 1995 07:33:30 -0600
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for dbi-users@fugue.com at austin.ibm.com; id AA21432;
          Tue, 21 Nov 1995 07:33:21 -0600
Message-Id: <9511211333.AA21432@dax.austin.ibm.com>
To: Alligator Descartes <descarte@hermetica.com>
Cc: dbi-users@fugue.com, dbi-dev@fugue.com, Tim.Bunce@ig.co.uk
Subject: Re: New DBI release
In-Reply-To: Your message of Sun, 19 Nov 95 13:00:22 +0000. <199511191300.NAA06855@fruitbat.mcqueen.com>
Date: Tue, 21 Nov 95 07:33:20 -0600


Alligator Descartes <descarte@hermetica.com>  writes:
|>
|>I've tested the new release of the DBI Switch ( 0.65 ) against the
|>following drivers:
|>
|>	DBD-Oracle-0.27		compiles fine on Solaris2.3
|>	DBD-mSQL-0.60pl7	compiles fine on Solaris2.3 
|>                                           and Linux 1.2.13
|>	DBD-Informix-0.20pl0	compiles fine on Solaris2.3
|>

You can AIX 4.1.4 and DB::DB2

Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01581-2@oink>;
          Tue, 21 Nov 1995 17:21:59 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816967880:27248:0; Tue, 21 Nov 95 15:31:20 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa27125;
          21 Nov 95 15:31 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id FAA03421 for dbi-dev-real; Tue, 21 Nov 1995 05:31:17 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netmail1.austin.ibm.com (netmail1.austin.ibm.com [129.35.208.96]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id FAA03417;
          Tue, 21 Nov 1995 05:31:11 -0800
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.86.169]) 
          by netmail1.austin.ibm.com (8.6.12/8.6.11) with SMTP id HAA36396;
          Tue, 21 Nov 1995 07:33:30 -0600
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for dbi-users@fugue.com at austin.ibm.com; id AA21432;
          Tue, 21 Nov 1995 07:33:21 -0600
Message-Id: <9511211333.AA21432@dax.austin.ibm.com>
To: Alligator Descartes <descarte@hermetica.com>
Cc: dbi-users@fugue.com, dbi-dev@fugue.com, Tim.Bunce@ig.co.uk
Subject: Re: New DBI release
In-Reply-To: Your message of Sun, 19 Nov 95 13:00:22 +0000. <199511191300.NAA06855@fruitbat.mcqueen.com>
Date: Tue, 21 Nov 95 07:33:20 -0600


Alligator Descartes <descarte@hermetica.com>  writes:
|>
|>I've tested the new release of the DBI Switch ( 0.65 ) against the
|>following drivers:
|>
|>	DBD-Oracle-0.27		compiles fine on Solaris2.3
|>	DBD-mSQL-0.60pl7	compiles fine on Solaris2.3 
|>                                           and Linux 1.2.13
|>	DBD-Informix-0.20pl0	compiles fine on Solaris2.3
|>

You can AIX 4.1.4 and DB::DB2

Mike
mhm@austin.ibm.com
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <03925-3@oink>;
          Wed, 22 Nov 1995 07:11:52 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816998563:14413:0; Wed, 22 Nov 95 00:02:43 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa14100;
          22 Nov 95 0:02 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA04368 for dbi-users-real; Tue, 21 Nov 1995 14:03:14 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA04359;
          Tue, 21 Nov 1995 14:00:53 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id VAA28990; Tue, 21 Nov 1995 21:58:29 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511212158.VAA28990@fruitbat.mcqueen.com>
Subject: Can't see the woods.....$DBI::errstr woes....
To: dbi-users@fugue.com, dbi-dev@fugue.com
Date: Tue, 21 Nov 1995 21:58:28 +0000 (GMT)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 724


DBI-0.65
DBD::Oracle-0.27

Simple script.

-------
use DBI;

$drh = DBI->install_driver( 'Oracle' );
$dbh = $drh->connect( 'database', 'user', 'pass' );
die "Cannot connect: $DBI::errstr\n" unless $dbh;

print "Got here!\n";
-------

where database, user and pass are complete rubbish. I would expect the
script to barf with the 'Cannot connect' message plus the appropriate Oracle
error code string? ( Expecting an ORA-1034 usually.... )

However! I get:

Got here!

instead..................

Am I missing something big here? Or have I been developing drivers so long
now that I can't program in them?!

Regards.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <03924-9@oink>;
          Wed, 22 Nov 1995 07:13:05 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 816997651:07456:0; Tue, 21 Nov 95 23:47:31 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa07452;
          21 Nov 95 23:47 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa27094;
          21 Nov 95 23:47 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA04363 for dbi-dev-real; Tue, 21 Nov 1995 14:00:57 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA04359;
          Tue, 21 Nov 1995 14:00:53 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id VAA28990; Tue, 21 Nov 1995 21:58:29 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511212158.VAA28990@fruitbat.mcqueen.com>
Subject: Can't see the woods.....$DBI::errstr woes....
To: dbi-users@fugue.com, dbi-dev@fugue.com
Date: Tue, 21 Nov 1995 21:58:28 +0000 (GMT)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 724


DBI-0.65
DBD::Oracle-0.27

Simple script.

-------
use DBI;

$drh = DBI->install_driver( 'Oracle' );
$dbh = $drh->connect( 'database', 'user', 'pass' );
die "Cannot connect: $DBI::errstr\n" unless $dbh;

print "Got here!\n";
-------

where database, user and pass are complete rubbish. I would expect the
script to barf with the 'Cannot connect' message plus the appropriate Oracle
error code string? ( Expecting an ORA-1034 usually.... )

However! I get:

Got here!

instead..................

Am I missing something big here? Or have I been developing drivers so long
now that I can't program in them?!

Regards.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <09771-43@oink>;
          Wed, 22 Nov 1995 17:06:32 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817054857:27362:0; Wed, 22 Nov 95 15:40:57 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa27352;
          22 Nov 95 15:40 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa21787;
          22 Nov 95 15:40 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA07051 for dbi-dev-real; Wed, 22 Nov 1995 03:45:36 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from voro.lbl.gov (voro.lbl.gov [131.243.64.29]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id DAA07047;
          Wed, 22 Nov 1995 03:45:34 -0800
Received: from voro (localhost [127.0.0.1]) by voro.lbl.gov (8.6.12/G) 
          with ESMTP id DAA22599; Wed, 22 Nov 1995 03:47:07 -0800
Message-Id: <199511221147.DAA22599@voro.lbl.gov>
X-Mailer: exmh version 1.5.3 12/28/94
To: Alligator Descartes <descarte@hermetica.com>
cc: dbi-users@fugue.com, dbi-dev@fugue.com
Subject: Re: Can't see the woods.....$DBI::errstr woes....
In-reply-to: Your message of "Tue, 21 Nov 1995 21:58:28 GMT." <199511212158.VAA28990@fruitbat.mcqueen.com>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Wed, 22 Nov 1995 03:47:07 -0800
From: Mark Dedlow <dedlow@voro.lbl.gov>
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 22 Nov 95 15:40:11 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Wed, 22 Nov 95 15:40:56 GMT]

Same DBI/DBD::Oracle versions (Solaris 2.4), I get:

Database handle DBI::db=HASH(0x196e00) DESTROY ignored - never set up at 
./testDBI.pl line 7.
Abort (core dumped)

if the user/pass is garbage.  It works if user/pass OK...

Mark


> 
> DBI-0.65
> DBD::Oracle-0.27
> 
> Simple script.
> 
> -------
> use DBI;
> 
> $drh = DBI->install_driver( 'Oracle' );
> $dbh = $drh->connect( 'database', 'user', 'pass' );
> die "Cannot connect: $DBI::errstr\n" unless $dbh;
> 
> print "Got here!\n";
> -------
> 
> where database, user and pass are complete rubbish. I would expect the
> script to barf with the 'Cannot connect' message plus the appropriate Oracle
> error code string? ( Expecting an ORA-1034 usually.... )
> 
> However! I get:
> 
> Got here!
> 
> instead..................
> 
> Am I missing something big here? Or have I been developing drivers so long
> now that I can't program in them?!
> 
> Regards.
> 
> -- 
> Alligator Descartes	| PGP key available on request!
> descarte@hermetica.com	| http://www.hermetica.com 

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <09771-54@oink>;
          Wed, 22 Nov 1995 17:08:25 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817058403:27872:0; Wed, 22 Nov 95 16:40:03 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa27862;
          22 Nov 95 16:40 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa26709;
          22 Nov 95 16:39 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA07059 for dbi-users-real; Wed, 22 Nov 1995 03:52:14 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from voro.lbl.gov (voro.lbl.gov [131.243.64.29]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id DAA07047;
          Wed, 22 Nov 1995 03:45:34 -0800
Received: from voro (localhost [127.0.0.1]) by voro.lbl.gov (8.6.12/G) 
          with ESMTP id DAA22599; Wed, 22 Nov 1995 03:47:07 -0800
Message-Id: <199511221147.DAA22599@voro.lbl.gov>
X-Mailer: exmh version 1.5.3 12/28/94
To: Alligator Descartes <descarte@hermetica.com>
cc: dbi-users@fugue.com, dbi-dev@fugue.com
Subject: Re: Can't see the woods.....$DBI::errstr woes....
In-reply-to: Your message of "Tue, 21 Nov 1995 21:58:28 GMT." <199511212158.VAA28990@fruitbat.mcqueen.com>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Wed, 22 Nov 1995 03:47:07 -0800
From: Mark Dedlow <dedlow@voro.lbl.gov>
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 22 Nov 95 16:39:43 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Wed, 22 Nov 95 16:40:03 GMT]

Same DBI/DBD::Oracle versions (Solaris 2.4), I get:

Database handle DBI::db=HASH(0x196e00) DESTROY ignored - never set up at 
./testDBI.pl line 7.
Abort (core dumped)

if the user/pass is garbage.  It works if user/pass OK...

Mark


> 
> DBI-0.65
> DBD::Oracle-0.27
> 
> Simple script.
> 
> -------
> use DBI;
> 
> $drh = DBI->install_driver( 'Oracle' );
> $dbh = $drh->connect( 'database', 'user', 'pass' );
> die "Cannot connect: $DBI::errstr\n" unless $dbh;
> 
> print "Got here!\n";
> -------
> 
> where database, user and pass are complete rubbish. I would expect the
> script to barf with the 'Cannot connect' message plus the appropriate Oracle
> error code string? ( Expecting an ORA-1034 usually.... )
> 
> However! I get:
> 
> Got here!
> 
> instead..................
> 
> Am I missing something big here? Or have I been developing drivers so long
> now that I can't program in them?!
> 
> Regards.
> 
> -- 
> Alligator Descartes	| PGP key available on request!
> descarte@hermetica.com	| http://www.hermetica.com 

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <13388-3@oink>;
          Thu, 23 Nov 1995 07:11:59 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817084963:21905:0; Thu, 23 Nov 95 00:02:43 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa21247;
          23 Nov 95 0:01 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA11024 for dbi-users-real; Wed, 22 Nov 1995 14:02:21 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from jumbo.Read.TASC.COM (jumbo.read.tasc.com [147.81.240.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id OAA11020 
          for <dbi-users@fugue.com>; Wed, 22 Nov 1995 14:02:14 -0800
Received: from viper.is.rest.tasc.com 
          by jumbo.Read.TASC.COM (4.1/TASC-CLIENT-1.5) id AA19241;
          Wed, 22 Nov 95 17:05:13 EST
Received: from irnet.rest.tasc.com (stowe.irnet.rest.tasc.com) 
          by viper.is.rest.tasc.com (4.1/TASCnet-4.1R0.0) id AA24099;
          Wed, 22 Nov 95 17:03:06 EST
Received: from cannon.rest.tasc.com (cannon.irnet.rest.tasc.com) 
          by irnet.rest.tasc.com (4.1/SMI-4.1) id AA18298;
          Wed, 22 Nov 95 17:04:09 EST
From: mthurn@stowe.irnet.rest.tasc.com (Martin Thurn)
Message-Id: <9511222204.AA18298@irnet.rest.tasc.com>
Subject: cannot build DBI 0.65 on SunOS
To: dbi-users@fugue.com
Date: Wed, 22 Nov 1995 17:04:07 -0500 (EST)
Cc: mthurn@stowe.irnet.rest.tasc.com (Martin Thurn), Tim.Bunce@ig.co.uk, 
    thurn@cis.ohio-state.edu (Martin Thurn)
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 8056
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 23 Nov 95 0:01:54 GMT]

Thanks to those who pointed me to the latest version 0.65 of DBI.
However, I get exactly the same error when I try to make it:
==========

Script started on Wed Nov 22 16:57:38 1995
cannon:/fs81/TIR/lib/perl5/DBI-0.65[1]: make realclean
rm -rf *~ t/*~ *.o *.a mon.out core so_locations DBI.bs DBI.bso DBI.exp DBI.c ./blib
mv Makefile Makefile.old 2>/dev/null
rm -rf /fs81/TIR/lib/perl5/DBI-0.65/blib/auto/DBI /fs81/TIR/lib/perl5/DBI-0.65/blib/auto/DBI
rm -f /fs81/TIR/lib/perl5/DBI-0.65/blib/auto/DBI/DBI.so /fs81/TIR/lib/perl5/DBI-0.65/blib/auto/DBI/DBI.bs
rm -f /fs81/TIR/lib/perl5/DBI-0.65/blib/auto/DBI/DBI.a /fs81/TIR/lib/perl5/DBI-0.65/blib/DBI/DBIXS.h /fs81/TIR/lib/perl5/DBI-0.65/blib/DBD/ExampleP.pm /fs81/TIR/lib/perl5/DBI-0.65/blib/DBD/NullP.pm /fs81/TIR/lib/perl5/DBI-0.65/blib/DBD/Sponge.pm /fs81/TIR/lib/perl5/DBI-0.65/blib/DBI.pm
rm -rf Makefile Makefile.old
rm -f ./perlmain.o ./perlmain.c Makefile
cannon:/fs81/TIR/lib/perl5/DBI-0.65[2]: perl Makefile.PL

    Build, TEST and INSTALL Perl 5 first. Use version 5.001m or later.

    DO NOT build the DBI under the Perl source tree.

    Use 'make test' to execute self tests.

MakeMaker
        DEFINE => '-g -Wall -pedantic -Wno-comment -Wpointer-arith -Wcast-align -Wconversion'
        NAME => 'DBI'
        VERSION => '0.65'
Using header files found in /usr/local/lib/perl5/sun4-sunos/CORE
Looking for perl 5 by these names: 
miniperl perl, 
in these dirs:
. /home2/accts/mthurn/bin /usr/local/bin /usr/local/etc /usr/bin/X11 /usr/openwin/bin /usr/ucb /usr/bin /bin /usr/etc /usr/local/ioffice/bin /fs41/inquery/bin /fs81/TIR/bin /usr/local/bin
Executing /usr/local/bin/perl
Writing Makefile for DBI
cannon:/fs81/TIR/lib/perl5/DBI-0.65[3]: make
mkdir /fs81/TIR/lib/perl5/DBI-0.65/blib
mkdir /fs81/TIR/lib/perl5/DBI-0.65/blib/auto
mkdir /fs81/TIR/lib/perl5/DBI-0.65/blib/auto/DBI
/usr/local/bin/perl /usr/local/lib/perl5/ExtUtils/xsubpp -typemap /usr/local/lib/perl5/ExtUtils/typemap DBI.xs >DBI.tc && mv DBI.tc DBI.c
gcc -c  -O    -fpic -I/usr/local/lib/perl5/sun4-sunos/CORE -g -Wall -pedantic -Wno-comment -Wpointer-arith -Wcast-align -Wconversion  DBI.c
DBI.c: In function `dbih_getcom':
DBI.c:232: warning: cast increases required alignment of target type
DBI.c:240: warning: cast increases required alignment of target type
DBI.c: In function `dbih_setup_handle':
DBI.c:290: warning: implicit declaration of function `fprintf'
DBI.c:318: warning: cast increases required alignment of target type
DBI.c:330: warning: value computed is not used
DBI.c:343: warning: value computed is not used
DBI.c:349: warning: value computed is not used
DBI.c:350: warning: value computed is not used
DBI.c:351: warning: value computed is not used
DBI.c:352: warning: value computed is not used
DBI.c: In function `dbih_sth_bind_col':
DBI.c:538: warning: value computed is not used
DBI.c: In function `dbih_set_attr':
DBI.c:589: warning: value computed is not used
DBI.c: In function `dbih_get_attr':
DBI.c:624: warning: value computed is not used
DBI.c: In function `XS_DBI_dispatch':
DBI.c:844: warning: value computed is not used
DBI.c:844: warning: value computed is not used
DBI.c: In function `XS_DBI__debug_dispatch':
DBI.c:1152: warning: implicit declaration of function `fclose'
DBI.c: In function `XS_DBD_____st_fetchrow':
DBI.c:1423: warning: cast increases required alignment of target type
DBI.c:1423: warning: cast increases required alignment of target type
DBI.c:1427: warning: cast increases required alignment of target type
DBI.c: In function `XS_DBD_____st_fetch':
DBI.c:1460: warning: cast increases required alignment of target type
DBI.c: In function `XS_DBD___mem__common_DESTROY':
DBI.c:1552: warning: cast increases required alignment of target type
Running mkbootstrap for DBI ()
ld -o /fs81/TIR/lib/perl5/DBI-0.65/blib/auto/DBI/DBI.so -assert nodefinitions DBI.o   
cp DBI.bs /fs81/TIR/lib/perl5/DBI-0.65/blib/auto/DBI/DBI.bs
mkdir /fs81/TIR/lib/perl5/DBI-0.65/blib/DBI
cp DBIXS.h /fs81/TIR/lib/perl5/DBI-0.65/blib/DBI/DBIXS.h
mkdir /fs81/TIR/lib/perl5/DBI-0.65/blib/DBD
cp lib/DBD/ExampleP.pm /fs81/TIR/lib/perl5/DBI-0.65/blib/DBD/ExampleP.pm
cp lib/DBD/NullP.pm /fs81/TIR/lib/perl5/DBI-0.65/blib/DBD/NullP.pm
cp lib/DBD/Sponge.pm /fs81/TIR/lib/perl5/DBI-0.65/blib/DBD/Sponge.pm
cp DBI.pm /fs81/TIR/lib/perl5/DBI-0.65/blib/DBI.pm
cannon:/fs81/TIR/lib/perl5/DBI-0.65[4]: make test
/usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/min...............FAILED on test 5
Failed 1 test, 0.00% okay.
Files=1,  Tests=11,  1 secs ( 0.42 cusr  0.15 csys =  0.57 cpu)
/usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 test.pl
test.pl 
DBI test application $Revision: 1.12 $
make: *** [test] Segmentation fault (core dumped)
cannon:/fs81/TIR/lib/perl5/DBI-0.65[5]: make test TEST_VERBOSE=1
/usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose=1; runtests @ARGV;' t/*.t
t/min...............1..11
ok 1
ok 2
ok 3
ok 4
FAILED on test 5
Failed 1 test, 0.00% okay.
Files=1,  Tests=11,  1 secs ( 0.35 cusr  0.18 csys =  0.53 cpu)
/usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 test.pl
test.pl 
DBI test application $Revision: 1.12 $
make: *** [test] Segmentation fault (core dumped)
cannon:/fs81/TIR/lib/perl5/DBI-0.65[6]: exit
cannon:/fs81/TIR/lib/perl5/DBI-0.65[7]: 
script done on Wed Nov 22 16:58:43 1995

==========

Script started on Wed Nov 22 16:59:00 1995
cannon:/fs81/TIR/lib/perl5/DBI-0.65[1]: perl -e 'use Config; print Config::myconfig()'
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=sunos, osver=4.1.3, archname=sun4-sunos
    uname='sunos stowe 4.1.3 1 sun4m '
    hint=recommended
  Compiler:
    cc='gcc', optimize='-O'
    cppflags=''
    ccflags =''
    ldflags =''
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=0, d_casti32=define, d_castneg=define
    intsize=4, alignbytes=8, usemymalloc=y, randbits=31
  Libraries:
    so=so
    libpth=/lib /usr/lib /usr/ucblib /usr/local/lib
    libs=-lnsl -ldbm -ldl -lm -lc -lposix
    libc=/usr/lib/libc.so.1.8
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
    cccdlflags='-fpic', ccdlflags='', lddlflags='-assert nodefinitions'

cannon:/fs81/TIR/lib/perl5/DBI-0.65[2]: exit
cannon:/fs81/TIR/lib/perl5/DBI-0.65[3]: 
script done on Wed Nov 22 16:59:06 1995

==========

Script started on Wed Nov 22 16:59:25 1995
cannon:/fs81/TIR/lib/perl5/DBI-0.65[1]: make test PERL_DL_DEBUG=2
/usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/min...............DynaLoader.pm loaded (/lib /usr/lib /usr/ucblib /usr/local/lib /usr/lib/X11/lib /usr/openwin/lib)
DynaLoader::bootstrap(DBI)
FAILED on test 5
Failed 1 test, 0.00% okay.
Files=1,  Tests=11,  2 secs ( 0.48 cusr  0.22 csys =  0.70 cpu)
/usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 test.pl
test.pl 
DBI test application $Revision: 1.12 $
DynaLoader.pm loaded (/lib /usr/lib /usr/ucblib /usr/local/lib /usr/lib/X11/lib /usr/openwin/lib)
DynaLoader::bootstrap(DBI)
make: *** [test] Segmentation fault (core dumped)
cannon:/fs81/TIR/lib/perl5/DBI-0.65[2]: exit
cannon:/fs81/TIR/lib/perl5/DBI-0.65[3]: 
script done on Wed Nov 22 16:59:42 1995
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <13388-4@oink>;
          Thu, 23 Nov 1995 07:12:21 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817085483:26493:0; Thu, 23 Nov 95 00:11:23 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa26376;
          23 Nov 95 0:11 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA11143 for dbi-users-real; Wed, 22 Nov 1995 14:25:08 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA11137 
          for <dbi-users@fugue.com>; Wed, 22 Nov 1995 14:24:51 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id WAA21711; Wed, 22 Nov 1995 22:21:53 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511222221.WAA21711@fruitbat.mcqueen.com>
Subject: Re: cannot build DBI 0.65 on SunOS
To: mthurn@stowe.irnet.rest.tasc.com (Martin Thurn)
Date: Wed, 22 Nov 1995 22:21:52 +0000 (GMT)
Cc: dbi-users@fugue.com
In-Reply-To: <9511222204.AA18298@irnet.rest.tasc.com> from "Martin Thurn" at Nov 22, 95 05:04:07 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 243
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 23 Nov 95 0:11:16 GMT]


> Thanks to those who pointed me to the latest version 0.65 of DBI.
> However, I get exactly the same error when I try to make it:

Can you send me a stack trace from the core dump?

Thanks.

A.

--
Alligator Descartes
descarte@hermetica.com
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13275-53@oink>;
          Thu, 23 Nov 1995 07:15:11 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817081314:02960:0; Wed, 22 Nov 95 23:01:54 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa02789;
          22 Nov 95 23:01 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Wed, 22 Nov 1995 22:58:34 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA10721 for dbi-users-real; Wed, 22 Nov 1995 12:57:21 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from emerald.empress.com (emerald.empress.com [192.43.219.6]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA10717 
          for <dbi-users@fugue.com>; Wed, 22 Nov 1995 12:57:14 -0800
Received: (from fjones@localhost) by emerald.empress.com (8.6.11/8.6.9) 
          id QAA01098 for dbi-users@fugue.com; Wed, 22 Nov 1995 16:02:03 -0500
From: Francis Jones <fjones@empress.com>
Message-Id: <199511222102.QAA01098@emerald.empress.com>
Subject: perl5 DBI manual pages
To: dbi-users@fugue.com
Date: Wed, 22 Nov 1995 16:02:02 -0500 (EST)
X-Mailer: ELM [version 2.4 PL24]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 774
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Wed, 22 Nov 95 23:01:53 GMT]

hi,

I've just acquired and installed the Perl5 DBI.  I've had
a minor problem: after you create the Makefile via

	% perl Makefile.PL

you get a Makefile which wants to install the manual pages
in $(ROOTDIR)/lib/perl5/man, rather than in $(ROOTDIR)/man
which seems to me a more standard spot.  If every package
(e.g., bash, perl, perl DBI,...) installs in its own 'man'
subdirectory, then fine... but most install in a common
spot (such as /usr/local/man), so it seems that barring
any extraordinary circumstances, that the perl DBI should
install there too.  IMHO, it makes more sense to install
in a common place since you don't have to keep altering
your MANPATH to find the stuff.

In any case, is there a reason for this choice that I should be aware of?

thanks,

fj
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13486-0@oink>;
          Thu, 23 Nov 1995 07:16:12 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817082018:09645:0; Wed, 22 Nov 95 23:13:38 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa09635;
          22 Nov 95 23:13 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Wed, 22 Nov 1995 23:12:38 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA10864 for dbi-users-real; Wed, 22 Nov 1995 13:28:51 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id NAA10860 
          for <dbi-users@fugue.com>; Wed, 22 Nov 1995 13:28:45 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id VAA21006; Wed, 22 Nov 1995 21:26:24 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511222126.VAA21006@fruitbat.mcqueen.com>
Subject: Re: DBI make failed
To: mthurn@irnet.rest.tasc.com (Martin Thurn)
Date: Wed, 22 Nov 1995 21:26:24 +0000 (GMT)
Cc: dbi-users@fugue.com
In-Reply-To: <9511222054.AA18163@irnet.rest.tasc.com> from "Martin Thurn" at Nov 22, 95 03:54:34 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 453
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Wed, 22 Nov 95 23:13:38 GMT]


> Making DBI failed on my machine.  Can you help me fix it?  Thank you.
> Attached below is the info requested in the README file (that which I
> could get, at least).

I recommend upgrading to DBI-0.65 and try again with that. The version you
have is fairly out of date.

>  - - Martin Thurn
>      mthurn@tasc.com or thurn@cis.ohio-state.edu

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <13274-27@oink>;
          Thu, 23 Nov 1995 07:10:35 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817073386:06022:0; Wed, 22 Nov 95 20:49:46 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id ab05940;
          22 Nov 95 20:49 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Wed, 22 Nov 1995 20:48:57 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA07767 for dbi-dev-real; Wed, 22 Nov 1995 10:24:15 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA07763 
          for <dbi-dev@fugue.com>; Wed, 22 Nov 1995 10:24:05 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id SAA17901; Wed, 22 Nov 1995 18:21:18 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511221821.SAA17901@fruitbat.mcqueen.com>
Subject: Re: perl DBI
To: fjones@empress.com (Francis Jones)
Date: Wed, 22 Nov 1995 18:21:16 +0000 (GMT)
Cc: dbi-dev@fugue.com, Tim.Bunce@ig.co.uk
In-Reply-To: <199511221802.NAA00883@emerald.empress.com> from "Francis Jones" at Nov 22, 95 01:02:58 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 5808
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Wed, 22 Nov 95 20:49:45 GMT]


> Naturally, everything is now fine...

I'll be honest. I just heard of a routing failure this afternoon in MCI,
so that would probably have cut transatlantic service for a while......

> > Can I put you down as the forthcoming author of the Empress driver then?
> 
> Hmm.  Well, I'm starting work on it, but you can never tell when
> things get snagged as a result of more pressing (ie. commercial)
> issues, since we're a money-making company.  So, I think it's
> fair to say that:
> 	... _someone_ will be working on it, 
> 	... for the moment it's me,
> 	... I don't see anything on the horizon at this point
> 	to pull me away from it.

That'll do! 8-) Just remember to keep checking your entry in the DBD index
to make sure nothing's wrong, or if something changes, to let me know.

> I hope you don't mind if I ask a couple more questions...
> 
> 1. Is there a mailing list/newsgroup for the DBI?  I tried
> perdb-interest-REQUEST@vix.com, but got a reply back saying
> that it was defunct.  I'm looking for a site/list/etc. which
> I can monitor to stay up to date.

Yup, there are three now. There's:

	dbi-dev-request@fugue.com	# DBI/DBD development issues
	dbi-users-request@fugue.com	# DBI/DBD user issues
	dbi-announce-request@fugue.com	# DBI/DBD announcements &c

There's a form at:

	http://www.fugue.com/dbi	

which allows you to subscribe. That, or mail the above addresses. The list
is hand-maintained, so allow a few days to get subscribed, although traffic
is low just now.

> 2. I have a copy of the "Perl 5 Database Interface (DBI) API specification"
> (Version 0.6).  From the diagram in that document,  the usage of databases
> within perl seems to be something like this:
> 
> 	Perl Script --> API  -->  Switch --> Driver --> DB Engine
> 
> and this document covers the 'API' and 'Switch' portions of this.
> So, it seemed to me that I needed to try to implement Empress versions
> of the 'lower-level' functions which I expected to see in the Switch
> portion (Ch. 5) of the document.  But, it seems that this was wrong, and that
> instead I should be attempting to implement Empress versions of the
> functions defined in the API portion (Ch. 3) of the document.
> I have downloaded the oracle, mSQL & informix packages from your
> site, so I guess I will see what they have done, but could you clear
> up my confusion?  I think I don't understand what the purpose of the
> switch module is.  Do you know if there's a document on 'how to write a driver
> for the DB Perl API' that is more detailed for neophytes to Perl 5
> (like me) than the document on hermetica?  (e.g., where does the C code go?)

Right, the Empress functions comes into play at the 'Driver' level. 

	o The 'Perl Script' is obvious. 
	o The 'API' is the DBI API, eg, 'connect', 'fetchrow' and so on. 
	o The 'Switch' basically holds data on what drivers are
          loaded ( since you can load multiple drivers simultaneously ), what 
          handles are assigned to which drivers, what statements are assigned
          to which handles and the like.
	o The 'Driver' is the bit we're interested in..........See below.
	o The 'DB Engine' is whichever database engine you're connecting to.

The DBD::Empress module would follow the form of the DBD::Oracle, DBD::mSQL
and DBD::Informix modules, in that, the Empress.xs file ( see the .xs files
from the above distributions ) would define the entry points from the
DBI API to the low-level database vendor-specific code, eg, take a look
at Oracle.xs. There's a function in there called 'connect'. This in turn calls
'dbd_db_login'. 

Taking a look at dbdimp.c, this is where all the seriously nasty vendor 
code goes. So, following on from our example above, looking at dbd_db_login()
we see that it calls the database-vendor API function to connect to a 
database. In Oracle this is ologon, in mSQL msqlConnect, in Informix 
$database. So, in that function call the Empress API function to connect to
a database. The translation from DBI API call to that function happens through
the .xs file.

Thus, the flow goes:

	$dbh = $drh->connect( .... );	# $dbh = database handle
					# $drh = driver handle
	
	Empress.xs:connect()		--->
	dbdimp.c: dbd_db_login()	--->
	EmpressAPI: empressConnect()	# or whatever it's called

So, the actual data returned goes from the Empress API call back up through
the .xs file into the perl script ( to simplify horrendously ). Because the
.xs file is identical ( nearly! ) between all the drivers, it provides
a standard hook-point for your vendor-specific code.

> 3. What are the names of the API functions?   I'm a bit confused by
> the quote (e.g., "db'....") naming convention.  In ch.10.1 there is 
> a summary of the functions, but there seems to be an inconsistency:
> 
> 	e.g., db'setvalue()  vs.  db_setvalue()

Take a look at 'test.pl' from the DBD::mSQL distribution. It provides
a fairly complete exercise of the DBI API. Plus some special mSQL specific
implemented functions....

> As you can guess I'm a newcomer to the perl DB (and to perl 5, as well)
> so I can imagine that some of the answers to these questions are obvious.
> But, I'm not sure where to look, and any help in the way of either
> direct response, or reference to a document, would be a huge help.

Well, it's a nebulous area just now since Tim's occasionally reconstructing
bits of the DBI interface itself, plus I can't get documentation online
fast enough at Hermetica, but I hope the above helps a bit.

I'll forward a document on explaining something about the various handles and
such to you too, so that can give you a better grip from the perl side of
using it rather than the driver coding side!

> Francis Jones

Regards.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13385-28@oink>;
          Thu, 23 Nov 1995 07:16:38 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817083104:19705:0; Wed, 22 Nov 95 23:31:44 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa19701;
          22 Nov 95 23:31 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa06716;
          22 Nov 95 23:28 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA10790 for dbi-users-real; Wed, 22 Nov 1995 13:16:57 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from jumbo.Read.TASC.COM (jumbo.read.tasc.com [147.81.240.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA10786 
          for <dbi-users@fugue.com>; Wed, 22 Nov 1995 13:16:53 -0800
Received: from viper.is.rest.tasc.com 
          by jumbo.Read.TASC.COM (4.1/TASC-CLIENT-1.5) id AA18348;
          Wed, 22 Nov 95 16:19:52 EST
Received: from irnet.rest.tasc.com (stowe.irnet.rest.tasc.com) 
          by viper.is.rest.tasc.com (4.1/TASCnet-4.1R0.0) id AA23369;
          Wed, 22 Nov 95 16:17:48 EST
Received: from cannon.rest.tasc.com (cannon.irnet.rest.tasc.com) 
          by irnet.rest.tasc.com (4.1/SMI-4.1) id AA18219;
          Wed, 22 Nov 95 16:18:53 EST
Received: from fandago.Read.TASC.COM by irnet.rest.tasc.com (4.1/SMI-4.1) 
          id AA18172; Wed, 22 Nov 95 15:57:40 EST
Received: from jumbo.Read.TASC.COM by fandago.Read.TASC.COM (4.1/TASC-1.9) 
          id AA26599; Wed, 22 Nov 95 15:53:55 EST
Received: from viper.is.rest.tasc.com 
          by jumbo.Read.TASC.COM (4.1/TASC-CLIENT-1.5) id AA17848;
          Wed, 22 Nov 95 15:55:37 EST
Received: from irnet.rest.tasc.com (stowe.irnet.rest.tasc.com) 
          by viper.is.rest.tasc.com (4.1/TASCnet-4.1R0.0) id AA23083;
          Wed, 22 Nov 95 15:53:32 EST
Received: from cannon.rest.tasc.com (cannon.irnet.rest.tasc.com) 
          by irnet.rest.tasc.com (4.1/SMI-4.1) id AA18163;
          Wed, 22 Nov 95 15:54:36 EST
From: Martin Thurn <mthurn@irnet.rest.tasc.com>
Message-Id: <9511222054.AA18163@irnet.rest.tasc.com>
Subject: DBI make failed
To: dbi-users@vix.com, Tim.Bunce@ig.co.uk, 
    Martin Thurn <mthurn@irnet.rest.tasc.com>
Date: Wed, 22 Nov 1995 15:54:34 -0500 (EST)
Cc: Martin Thurn <thurn@cis.ohio-state.edu>
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 7788
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 22 Nov 95 23:29:00 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Wed, 22 Nov 95 23:31:44 GMT]

Making DBI failed on my machine.  Can you help me fix it?  Thank you.
Attached below is the info requested in the README file (that which I
could get, at least).
 - - Martin Thurn
     mthurn@tasc.com or thurn@cis.ohio-state.edu
=====
Script started on Wed Nov 22 15:36:09 1995
cannon:/fs81/TIR/lib/perl5/DBI[1]: make realclean
rm -rf *~ t/*~ *.o *.a mon.out core so_locations DBI.bs DBI.bso DBI.exp DBI.c ./blib
mv Makefile Makefile.old 2>/dev/null
rm -rf /fs81/TIR/lib/perl5/DBI/blib/auto/DBI /fs81/TIR/lib/perl5/DBI/blib/auto/DBI
rm -f /fs81/TIR/lib/perl5/DBI/blib/auto/DBI/DBI.so /fs81/TIR/lib/perl5/DBI/blib/auto/DBI/DBI.bs
rm -f /fs81/TIR/lib/perl5/DBI/blib/auto/DBI/DBI.a /fs81/TIR/lib/perl5/DBI/blib/DBI/DBIXS.h /fs81/TIR/lib/perl5/DBI/blib/DBD/ExampleP.pm /fs81/TIR/lib/perl5/DBI/blib/DBD/NullP.pm /fs81/TIR/lib/perl5/DBI/blib/DBI.pm
rm -rf Makefile Makefile.old
rm -f ./perlmain.o ./perlmain.c Makefile
cannon:/fs81/TIR/lib/perl5/DBI[2]: perl Makefile.PL

    Build, TEST and INSTALL Perl 5 first. Use version 5.001m or later.

    DO NOT build the DBI under the Perl source tree.

    Use 'make test' to execute self tests.

MakeMaker
        DEFINE => '-Wall -pedantic -Wno-comment -Wpointer-arith -Wcast-align -Wconversion'
        NAME => 'DBI'
        VERSION => '0.63'
Using header files found in /usr/local/lib/perl5/sun4-sunos/CORE
Looking for perl 5 by these names: 
miniperl perl, 
in these dirs:
. /home2/accts/mthurn/bin /usr/local/bin /usr/local/etc /usr/bin/X11 /usr/openwin/bin /usr/ucb /usr/bin /bin /usr/etc /usr/local/ioffice/bin /fs41/inquery/bin /fs81/TIR/bin /usr/local/bin
Executing /usr/local/bin/perl
Writing Makefile for DBI
cannon:/fs81/TIR/lib/perl5/DBI[3]: make
mkdir /fs81/TIR/lib/perl5/DBI/blib
mkdir /fs81/TIR/lib/perl5/DBI/blib/auto
mkdir /fs81/TIR/lib/perl5/DBI/blib/auto/DBI
/usr/local/bin/perl /usr/local/lib/perl5/ExtUtils/xsubpp -typemap /usr/local/lib/perl5/ExtUtils/typemap DBI.xs >DBI.tc && mv DBI.tc DBI.c
gcc -c  -O    -fpic -I/usr/local/lib/perl5/sun4-sunos/CORE -Wall -pedantic -Wno-comment -Wpointer-arith -Wcast-align -Wconversion  DBI.c
DBI.c: In function `dbih_getcom':
DBI.c:220: warning: cast increases required alignment of target type
DBI.c:228: warning: cast increases required alignment of target type
DBI.c: In function `dbih_setup_handle':
DBI.c:278: warning: implicit declaration of function `fprintf'
DBI.c:306: warning: cast increases required alignment of target type
DBI.c:318: warning: value computed is not used
DBI.c:331: warning: value computed is not used
DBI.c:337: warning: value computed is not used
DBI.c:338: warning: value computed is not used
DBI.c:339: warning: value computed is not used
DBI.c: In function `dbih_sth_bind_col':
DBI.c:518: warning: value computed is not used
DBI.c: In function `dbih_set_attr':
DBI.c:569: warning: value computed is not used
DBI.c: In function `dbih_get_attr':
DBI.c:604: warning: value computed is not used
DBI.c: In function `XS_DBI__debug_dispatch':
DBI.c:1084: warning: implicit declaration of function `fclose'
DBI.c: In function `XS_DBD_____st_fetchrow':
DBI.c:1330: warning: cast increases required alignment of target type
DBI.c:1330: warning: cast increases required alignment of target type
DBI.c:1334: warning: cast increases required alignment of target type
DBI.c: In function `XS_DBD_____st_fetch':
DBI.c:1367: warning: cast increases required alignment of target type
DBI.c: In function `XS_DBD___mem__common_DESTROY':
DBI.c:1457: warning: cast increases required alignment of target type
Running mkbootstrap for DBI ()
ld -o /fs81/TIR/lib/perl5/DBI/blib/auto/DBI/DBI.so -assert nodefinitions DBI.o   
cp DBI.bs /fs81/TIR/lib/perl5/DBI/blib/auto/DBI/DBI.bs
mkdir /fs81/TIR/lib/perl5/DBI/blib/DBI
cp DBIXS.h /fs81/TIR/lib/perl5/DBI/blib/DBI/DBIXS.h
mkdir /fs81/TIR/lib/perl5/DBI/blib/DBD
cp lib/DBD/ExampleP.pm /fs81/TIR/lib/perl5/DBI/blib/DBD/ExampleP.pm
cp lib/DBD/NullP.pm /fs81/TIR/lib/perl5/DBI/blib/DBD/NullP.pm
cp DBI.pm /fs81/TIR/lib/perl5/DBI/blib/DBI.pm
cannon:/fs81/TIR/lib/perl5/DBI[4]: make test
/usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI/blib -I/fs81/TIR/lib/perl5/DBI/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/min...............FAILED on test 5
Failed 1 test, 0.00% okay.
Files=1,  Tests=6,  1 secs ( 0.28 cusr  0.23 csys =  0.52 cpu)
/usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI/blib -I/fs81/TIR/lib/perl5/DBI/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 test.pl
test.pl 
DBI test application $Revision: 1.12 $
make: *** [test] Segmentation fault (core dumped)
cannon:/fs81/TIR/lib/perl5/DBI[5]: exit
cannon:/fs81/TIR/lib/perl5/DBI[6]: 
script done on Wed Nov 22 15:36:55 1995

==========

Script started on Wed Nov 22 15:37:46 1995
cannon:/fs81/TIR/lib/perl5/DBI[1]: perl -e 'use Config; print Config::myconfig()'
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=sunos, osver=4.1.3, archname=sun4-sunos
    uname='sunos stowe 4.1.3 1 sun4m '
    hint=recommended
  Compiler:
    cc='gcc', optimize='-O'
    cppflags=''
    ccflags =''
    ldflags =''
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=0, d_casti32=define, d_castneg=define
    intsize=4, alignbytes=8, usemymalloc=y, randbits=31
  Libraries:
    so=so
    libpth=/lib /usr/lib /usr/ucblib /usr/local/lib
    libs=-lnsl -ldbm -ldl -lm -lc -lposix
    libc=/usr/lib/libc.so.1.8
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
    cccdlflags='-fpic', ccdlflags='', lddlflags='-assert nodefinitions'

cannon:/fs81/TIR/lib/perl5/DBI[2]: exit
cannon:/fs81/TIR/lib/perl5/DBI[3]: 
script done on Wed Nov 22 15:37:54 1995

==========

Script started on Wed Nov 22 15:42:19 1995
cannon:/fs81/TIR/lib/perl5/DBI[1]: make test PERL_DL_DEBUG=2
/usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI/blib -I/fs81/TIR/lib/perl5/DBI/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/min...............DynaLoader.pm loaded (/lib /usr/lib /usr/ucblib /usr/local/lib /usr/lib/X11/lib /usr/openwin/lib)
DynaLoader::bootstrap(DBI)
FAILED on test 5
Failed 1 test, 0.00% okay.
Files=1,  Tests=6,  1 secs ( 0.33 cusr  0.17 csys =  0.50 cpu)
/usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI/blib -I/fs81/TIR/lib/perl5/DBI/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 test.pl
test.pl 
DBI test application $Revision: 1.12 $
DynaLoader.pm loaded (/lib /usr/lib /usr/ucblib /usr/local/lib /usr/lib/X11/lib /usr/openwin/lib)
DynaLoader::bootstrap(DBI)
make: *** [test] Segmentation fault (core dumped)
cannon:/fs81/TIR/lib/perl5/DBI[2]: exit
cannon:/fs81/TIR/lib/perl5/DBI[3]: 
script done on Wed Nov 22 15:42:30 1995

=========

Script started on Wed Nov 22 15:46:22 1995
cannon:/fs81/TIR/lib/perl5/DBI[1]: make test TEST_VERBOSE=1
/usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI/blib -I/fs81/TIR/lib/perl5/DBI/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose=1; runtests @ARGV;' t/*.t
t/min...............1..6
ok 1
ok 2
ok 3
ok 4
FAILED on test 5
Failed 1 test, 0.00% okay.
Files=1,  Tests=6,  1 secs ( 0.33 cusr  0.15 csys =  0.48 cpu)
/usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI/blib -I/fs81/TIR/lib/perl5/DBI/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 test.pl
test.pl 
DBI test application $Revision: 1.12 $
make: *** [test] Segmentation fault (core dumped)
cannon:/fs81/TIR/lib/perl5/DBI[2]: exit
cannon:/fs81/TIR/lib/perl5/DBI[3]: 
script done on Wed Nov 22 15:46:33 1995

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13486-6@oink>;
          Thu, 23 Nov 1995 07:17:35 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817085632:13464:0; Thu, 23 Nov 95 00:13:52 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa13459;
          23 Nov 95 0:13 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa10667;
          23 Nov 95 0:13 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA11320 for dbi-users-real; Wed, 22 Nov 1995 14:49:54 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA11314;
          Wed, 22 Nov 1995 14:49:44 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id WAA22006; Wed, 22 Nov 1995 22:47:27 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511222247.WAA22006@fruitbat.mcqueen.com>
Subject: DBI Mailing List Archives
To: dbi-announce@fugue.com, dbi-users@fugue.com
Date: Wed, 22 Nov 1995 22:47:27 +0000 (GMT)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 377
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 23 Nov 95 0:13:22 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Thu, 23 Nov 95 0:13:51 GMT]


All three DBI mailing lists:

	DBI Announcements
	DBI Development
	DBI Users

are being archived as hypermail archives at:

	http://www.hermetica.com

as of now! The archives go about 3-4 weeks back on all three lists.

There's also more documentation online now too.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13504-0@oink>;
          Thu, 23 Nov 1995 07:18:22 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817086561:21918:0; Thu, 23 Nov 95 00:29:21 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa21910;
          23 Nov 95 0:29 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa11869;
          23 Nov 95 0:28 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA11330 for dbi-announce-real; Wed, 22 Nov 1995 14:50:03 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA11314;
          Wed, 22 Nov 1995 14:49:44 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id WAA22006; Wed, 22 Nov 1995 22:47:27 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511222247.WAA22006@fruitbat.mcqueen.com>
Subject: DBI Mailing List Archives
To: dbi-announce@fugue.com, dbi-users@fugue.com
Date: Wed, 22 Nov 1995 22:47:27 +0000 (GMT)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 377
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 23 Nov 95 0:28:25 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Thu, 23 Nov 95 0:29:20 GMT]


All three DBI mailing lists:

	DBI Announcements
	DBI Development
	DBI Users

are being archived as hypermail archives at:

	http://www.hermetica.com

as of now! The archives go about 3-4 weeks back on all three lists.

There's also more documentation online now too.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13522-3@oink>;
          Thu, 23 Nov 1995 07:19:48 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817103253:07321:0; Thu, 23 Nov 95 05:07:33 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa07289;
          23 Nov 95 5:07 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id TAA13470 for dbi-users-real; Wed, 22 Nov 1995 19:39:32 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mail.crl.com (mail.crl.com [165.113.1.22]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id TAA13466 
          for <dbi-users@fugue.com>; Wed, 22 Nov 1995 19:39:30 -0800
Received: from [205.149.164.116] (bta.vip.best.com) by mail.crl.com with SMTP 
          id AA20060 (5.65c/IDA-1.5 for <dbi-users@fugue.com>);
          Wed, 22 Nov 1995 19:39:55 -0800
Date: Wed, 22 Nov 1995 19:39:55 -0800
X-Sender: mrlizard@mail.crl.com
Message-Id: <acd93062020210043950@[205.149.164.116]>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
To: msql-list@bunyip.com
From: mrlizard@crl.com (Brian Valente)
Subject: mSQL API available through DBI?
Cc: dbi-users@fugue.com
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 23 Nov 95 5:07:31 GMT]

I've read through Alligators ramblings (which are rather informative, BTW),
but I still haven't been able to figure out if you can access the mSQL API
(as defined in the documentation) through DBI.

For example, I want to find out how many rows were returned by my last query:

Perhaps it is:

 $result = $dbh->func( '_NumRows' )??

I saw the $dbh->func() but I'm not sure what that does for me.

Thanks,

Brian

======================================================================
Brian Valente                   ||      brian_valente@rmdudley.com
R.M. Dudley Corporation         ||      mrlizard@crl.com
1799 Old Bayshore Suite 200     ||      applelink:RMDUDLEY
Burlingame, CA 94010            ||      http://www.rmdudley.com/rmdudley/
(415) 697-1650   voice          ||
(415) 697-1816   fax            ||


---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <19022-6@oink>;
          Thu, 23 Nov 1995 16:11:26 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817136392:20714:0; Thu, 23 Nov 95 14:19:52 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa20652;
          23 Nov 95 14:19 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA21021 for dbi-users-real; Thu, 23 Nov 1995 03:47:15 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id DAA21017 
          for <dbi-users@fugue.com>; Thu, 23 Nov 1995 03:47:06 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id LAA25567; Thu, 23 Nov 1995 11:44:33 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511231144.LAA25567@fruitbat.mcqueen.com>
Subject: Re: [mSQL] mSQL API available through DBI?
To: mrlizard@crl.com
Date: Thu, 23 Nov 1995 11:44:32 +0000 (GMT)
Cc: dbi-users@fugue.com, msql-list@bunyip.com
In-Reply-To: <acd93062020210043950@[205.149.164.116]> from "Brian Valente" at Nov 22, 95 07:39:55 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 1237
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 23 Nov 95 14:19:45 GMT]


> I've read through Alligators ramblings (which are rather informative, BTW),
> but I still haven't been able to figure out if you can access the mSQL API
> (as defined in the documentation) through DBI.

Well, you can't. That's the point of DBI. It abstracts the database junk away
from the native API! 

Of course, if we haven't fully implemented the DBI side of things, then it's
a complete pain. However, see below.

> For example, I want to find out how many rows were returned by my last query:
> 
> Perhaps it is:
> 
>  $result = $dbh->func( '_NumRows' )??
> 
> I saw the $dbh->func() but I'm not sure what that does for me.

That bit of the DBD::mSQL driver currently "under construction" for release
0.61 ( in a week or two... )

The missing functionality from the mSQL API currently is: ( off the top of
my head ):

	Create a database	<-- Fixed in my copy. Accessible through 'func'
	Drop a database		<-- Ditto
	# of row returned	<-- Under implementation, probably accessible
				    through a variable....
        List table meta-data	<-- Sort of working.	
	
These'll all be in the next major(-ish) release.

> Brian

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <19021-29@oink>;
          Thu, 23 Nov 1995 16:13:01 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817130225:24367:0; Thu, 23 Nov 95 12:37:05 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa24022;
          23 Nov 95 12:37 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id CAA20831 for dbi-dev-real; Thu, 23 Nov 1995 02:25:03 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay.inferentia.it (dns.inferentia.it [151.99.220.4]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id CAA20827 
          for <dbi-dev@fugue.com>; Thu, 23 Nov 1995 02:24:46 -0800
Received: from yquem.inferentia.it (yquem.inferentia.it [194.184.62.17]) 
          by relay.inferentia.it (8.6.12/8.6.12) with SMTP id LAA26057 
          for <dbi-dev@fugue.com>; Thu, 23 Nov 1995 11:26:56 +0100
Posted-Date: Thu, 23 Nov 1995 11:26:56 +0100
Received: by yquem.inferentia.it with Microsoft Mail 
          id <01BAB998.0E3C2460@yquem.inferentia.it>;
          Thu, 23 Nov 1995 11:37:23 +-100
Message-ID: <01BAB998.0E3C2460@yquem.inferentia.it>
From: Davide Migliavacca <Davide.Migliavacca@inferentia.it>
To: "'dbi-dev@fugue.com'" <dbi-dev@fugue.com>
Subject: Latest DBI and DBD::Oracle OK on AIX 3.2.5, OSF1 3.2
Date: Thu, 23 Nov 1995 11:37:15 +-100
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 23 Nov 95 12:37:04 GMT]

Sorry if this is already known - been away from the lists for a while.
I just grabbed DBI 0.65 and DBD::Oracle 0.27, compiled, tested, =
installed and field-tested on existing code on both AIX 3.2.5 and DEC =
OSF/1 3.2.
So this may be considered "known working platforms" as well.
Cheers
	Davide

--------------------------------------------------------
Davide Migliavacca (aka shari)
Inferentia S.r.l. - Milano ITALY +39 2 59928.1 (FAX .221)
* Standard disclaimer here *
--------------------------------------------------------
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <19021-37@oink>;
          Thu, 23 Nov 1995 16:13:42 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817133033:18817:0; Thu, 23 Nov 95 13:23:53 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa18643;
          23 Nov 95 13:23 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id CAA20859 for dbi-users-real; Thu, 23 Nov 1995 02:32:09 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay.inferentia.it (dns.inferentia.it [151.99.220.4]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id CAA20855 
          for <dbi-users@fugue.com>; Thu, 23 Nov 1995 02:32:06 -0800
Received: from yquem.inferentia.it (yquem.inferentia.it [194.184.62.17]) 
          by relay.inferentia.it (8.6.12/8.6.12) with SMTP id LAA28229 
          for <dbi-users@fugue.com>; Thu, 23 Nov 1995 11:34:37 +0100
Posted-Date: Thu, 23 Nov 1995 11:34:37 +0100
Received: by yquem.inferentia.it with Microsoft Mail 
          id <01BAB999.21665780@yquem.inferentia.it>;
          Thu, 23 Nov 1995 11:45:04 +-100
Message-ID: <01BAB999.21665780@yquem.inferentia.it>
From: Davide Migliavacca <Davide.Migliavacca@inferentia.it>
To: "'dbi-users@fugue.com'" <dbi-users@fugue.com>
Subject: WOWPERL call for user feedback
Date: Thu, 23 Nov 1995 11:45:02 +-100
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 23 Nov 95 13:23:46 GMT]

Is anybody *actually* using wowperl (ftp://ftp.inferentia.it/pub/perl/db/wowperl.tar)?
I have received almost no feedback about it.
Just wanted to know if it's worth maintaining. I was thinking about adding samples but I will do that only if someone benefits from it.
IMHO replies should be placed directly to me rather than to list.
	Davide

--------------------------------------------------------
Davide Migliavacca (aka shari)
Inferentia S.r.l. - Milano ITALY +39 2 59928.1 (FAX .221)
* Standard disclaimer here *
--------------------------------------------------------

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04603-0@oink>;
          Mon, 27 Nov 1995 07:07:14 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817242620:04468:0; Fri, 24 Nov 95 19:50:20 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa03743;
          24 Nov 95 19:50 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA02345 for dbi-users-real; Fri, 24 Nov 1995 09:33:59 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA02299;
          Fri, 24 Nov 1995 09:26:36 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id RAA11217; Fri, 24 Nov 1995 17:23:45 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511241723.RAA11217@fruitbat.mcqueen.com>
Subject: DBD::mSQL-0.60pl8 released
To: dbi-users@fugue.com, dbi-dev@fugue.com, dbi-announce@fugue.com
Date: Fri, 24 Nov 1995 17:23:43 +0000 (GMT)
Cc: msql-list@bunyip.com, k@anna.mind.de, Tim.Bunce@ig.co.uk, 
    SVEN.VERDOOLAEGE@student.kuleuven.ac.be (Sven Verdoolaege), 
    mrlizard@crl.com
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 1014
X-SMTP-Posting-Host: toccata.fugue.com [Fri, 24 Nov 95 19:50:14 GMT]


DBD::mSQL-0.60pl8 has been released. 

Here's the extract from the Changes file:

        o Added error string and number to 'func' methods

        o Completed implementation of 'ListFields' invoked through the
          'func' method

        o Added implementation of 'CreateDB' and 'DropDB' through the
          'func' method

        o Added a method 'NumRows' against $sth to show the number of
          rows returned by a statement.

The mSQL API is now fully featured within the DBD::mSQL driver, so it's
well worth upgrading.

Information on DBI in general is available from:

	http://www.hermetica.com/technologia/DBI

The code is available from the usual places:

	ftp://ftp.mcqueen.com/pub/dbperl/DBD/mSQL/DBD-mSQL-0.60pl8.tar.gz

being one of them. CPAN should have it by tomorrow ( Saturday ).

Persons using Msqlperl are now advised to think about upgrading onto 
DBI/DBD::mSQL instead. 

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <04604-1@oink>;
          Mon, 27 Nov 1995 07:07:20 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817243227:19122:0; Fri, 24 Nov 95 20:00:27 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id ab19019;
          24 Nov 95 20:00 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Fri, 24 Nov 1995 19:49:16 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA02303 for dbi-announce-real; Fri, 24 Nov 1995 09:26:47 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA02299;
          Fri, 24 Nov 1995 09:26:36 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id RAA11217; Fri, 24 Nov 1995 17:23:45 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511241723.RAA11217@fruitbat.mcqueen.com>
Subject: DBD::mSQL-0.60pl8 released
To: dbi-users@fugue.com, dbi-dev@fugue.com, dbi-announce@fugue.com
Date: Fri, 24 Nov 1995 17:23:43 +0000 (GMT)
Cc: msql-list@bunyip.com, k@anna.mind.de, Tim.Bunce@ig.co.uk, 
    SVEN.VERDOOLAEGE@student.kuleuven.ac.be (Sven Verdoolaege), 
    mrlizard@crl.com
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 1014
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Fri, 24 Nov 95 20:00:26 GMT]


DBD::mSQL-0.60pl8 has been released. 

Here's the extract from the Changes file:

        o Added error string and number to 'func' methods

        o Completed implementation of 'ListFields' invoked through the
          'func' method

        o Added implementation of 'CreateDB' and 'DropDB' through the
          'func' method

        o Added a method 'NumRows' against $sth to show the number of
          rows returned by a statement.

The mSQL API is now fully featured within the DBD::mSQL driver, so it's
well worth upgrading.

Information on DBI in general is available from:

	http://www.hermetica.com/technologia/DBI

The code is available from the usual places:

	ftp://ftp.mcqueen.com/pub/dbperl/DBD/mSQL/DBD-mSQL-0.60pl8.tar.gz

being one of them. CPAN should have it by tomorrow ( Saturday ).

Persons using Msqlperl are now advised to think about upgrading onto 
DBI/DBD::mSQL instead. 

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <04604-3@oink>;
          Mon, 27 Nov 1995 07:07:33 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817243229:19131:0; Fri, 24 Nov 95 20:00:29 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id ac19019;
          24 Nov 95 20:00 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Fri, 24 Nov 1995 19:46:45 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA02340 for dbi-dev-real; Fri, 24 Nov 1995 09:33:24 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA02299;
          Fri, 24 Nov 1995 09:26:36 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id RAA11217; Fri, 24 Nov 1995 17:23:45 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511241723.RAA11217@fruitbat.mcqueen.com>
Subject: DBD::mSQL-0.60pl8 released
To: dbi-users@fugue.com, dbi-dev@fugue.com, dbi-announce@fugue.com
Date: Fri, 24 Nov 1995 17:23:43 +0000 (GMT)
Cc: msql-list@bunyip.com, k@anna.mind.de, Tim.Bunce@ig.co.uk, 
    SVEN.VERDOOLAEGE@student.kuleuven.ac.be (Sven Verdoolaege), 
    mrlizard@crl.com
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 1014
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Fri, 24 Nov 95 20:00:28 GMT]


DBD::mSQL-0.60pl8 has been released. 

Here's the extract from the Changes file:

        o Added error string and number to 'func' methods

        o Completed implementation of 'ListFields' invoked through the
          'func' method

        o Added implementation of 'CreateDB' and 'DropDB' through the
          'func' method

        o Added a method 'NumRows' against $sth to show the number of
          rows returned by a statement.

The mSQL API is now fully featured within the DBD::mSQL driver, so it's
well worth upgrading.

Information on DBI in general is available from:

	http://www.hermetica.com/technologia/DBI

The code is available from the usual places:

	ftp://ftp.mcqueen.com/pub/dbperl/DBD/mSQL/DBD-mSQL-0.60pl8.tar.gz

being one of them. CPAN should have it by tomorrow ( Saturday ).

Persons using Msqlperl are now advised to think about upgrading onto 
DBI/DBD::mSQL instead. 

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04698-7@oink>;
          Mon, 27 Nov 1995 07:18:54 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817408321:01319:0; Sun, 26 Nov 95 17:52:01 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa01112;
          26 Nov 95 17:51 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA02310 for dbi-users-real; Sun, 26 Nov 1995 08:06:17 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA02306 
          for <dbi-users@fugue.com>; Sun, 26 Nov 1995 08:06:12 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id QAA16884; Sun, 26 Nov 1995 16:03:48 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511261603.QAA16884@fruitbat.mcqueen.com>
Subject: Ramble on DBD::mSQL: $sth->func( '_NumRows' )
To: mrlizard@crl.com (Brian Valente)
Date: Sun, 26 Nov 1995 16:03:47 +0000 (GMT)
Cc: dbi-users@fugue.com
In-Reply-To: <acddc3e5010210040361@[205.149.164.116]> from "Brian Valente" at Nov 26, 95 06:59:22 am
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 2846
X-SMTP-Posting-Host: toccata.fugue.com [Sun, 26 Nov 95 17:52:00 GMT]


> I have not been able to get the NumRows function to work.  I assume it goes
> something like this:
> 
> $dbh = $drh->connect(blah blah);
> $sh = $dbh->prepare($querystring);
> $sh->execute;
> $found = $sh->NumRows;
> 
> However, not only do I not get anything back, but it closes the cursor(?)
> so I don't receive any subsequent rows.  Let me give an example to
> illustrate the last:
> 
> I used a search from/html page to display the results.  Before it simply
> listed the records.  I wanted to insert "# records found that matched you
> criteria" at the start, but when I inserted the NumRows function, it didn't
> print anything out at all!
> 
> I hope it's only because I'm not using it right.

Surely is. It was a slightly misleading advert in the 'Changes' file. Although,
you could've checked the test.pl to see the method in there.

You should be using:

$dbh = $drh->connect( blah blah );
$sh = $dbh->prepare( $querystring );
$found = $sh->func( '_NumRows' );
print "Found: $found\n";
$sh->execute;
$sh->finish;

Hope that clears things up. I've also attached a list of functions/methods
you can invoke within DBD::mSQL. This is 'under construction', but will be
eventually released with the driver at the next patchlevels/majors.

Let me know how things go.

> Brian

------------------8<--------------------------8<-------------------------
=title DBI Driver Methods

=head DBI Specific Handles

$drh is a DRIVER HANDLE
$dbh a DATABASE HANDLE
$sth a STATEMENT HANDLE
$rv is a RETURN VALUE

=head Error Variables

$DBI::errnum
$DBI::errstr

=head perl Variable Types ( see perl??? )

@ary is a LIST
$scalar is an ordinary scalar
%hash is a hash

=head Methods

(*) means non-standard and DBD::mSQL specific
(?) means I'm not sure about

        Invoking through                Returns
        ----------------                -------

Driver Handle Methods:
----------------------
        DBI->install_driver             $drh
        $drh->func( '_ListDBs' )        @ary            *
	$drh->func( '_CreateDB' )	$rv		*
	$drh->func( '_DropDB' )		$rv
        $drh->connect                   $dbh
        $drh->disconnect_all            $rv		(?)

Database Handle Methods:
------------------------
        $dbh->func( '_ListTables' )     @ary            *
        $dbh->func( '_ListFields' )	%hash		*
        $dbh->disconnect                $rv
        $dbh->do                        $rv
        $dbh->prepare                   $sth

Statement Handle Methods:
-------------------------
        $sth->func( '_NumRows' )	$rv		*
        $sth->execute                   $rv
        $sth->fetchrow                  @ary
        $sth->finish                    $rv
----------------8<-----------------------8<------------------------

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <18457-10@oink>;
          Tue, 28 Nov 1995 13:11:07 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817562785:22165:0; Tue, 28 Nov 95 12:46:25 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa21915;
          28 Nov 95 12:46 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id CAA00692 for dbi-users-real; Tue, 28 Nov 1995 02:01:53 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id CAA00687 
          for <dbi-users@fugue.com>; Tue, 28 Nov 1995 02:01:47 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id JAA29888; Tue, 28 Nov 1995 09:59:13 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511280959.JAA29888@fruitbat.mcqueen.com>
Subject: Re: Informix Interface to PERL
To: vblack@Candle.com (Vendetta Black)
Date: Tue, 28 Nov 1995 09:59:11 +0000 (GMT)
Cc: dbi-users@fugue.com, Tim.Bunce@ig.co.uk
In-Reply-To: <9510278175.AA817531955@SMTPGWY.CANDLE.COM> from "Vendetta Black" at Nov 27, 95 08:02:22 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 1705
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 28 Nov 95 12:46:12 GMT]


>     I am having a problem with the Informix interface.  I can retrieve
>     data but am unable to retrieve BLOBS particuliarly any text BLOBS.

BLOBs aren't supported yet in DBD::Informix. The driver is at a very
experimental stage just now, and I haven't had the time to devote to
bringing it up to the state of being particularly useful yet. The usefulness
of it will increase along with the version number fairly soon, I hope.

>     I am also receiving a couple messages during the make test.  I do
>     know the what the two hidden messages are.

I'll leave this to Tim.

[ test results deleted ]

>     Also, this may be a version 7.1 to 6.0 difference but
>     there were no INFORMIX libraries in the Makefiles.

Well, I only have access to Informix 5.04 ( I think ), so the libraries
in the Makefile.PL script reflect that. With help from Dave Rattanni, support
for Informix 7 has been added, but if you could send me the necessary
library names for Informix 6, we can cover that now, as well.

>     When I attempt to a SELECT that contains a text BLOB, I do 
>     retrieve the other columns but not the column containing the BLOB.

Again, they're not supported yet...............

RSN is the best I can say, I'm afraid. Keep watching the mailing lists,
and the Hermetica web pages.

Also, you should resubscribe to the DBI Mailing Lists. THe perldb-interest
list is defunct ( or soon will be ). The new list addresses are either:

	http://www.fugue.com/dbi

via the WWW ( preferred ), or:

	dbi-users-request@fugue.com
	dbi-dev-request@fugue.com
	dbi-announce@fugue.com

Regards.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <22464-60@oink>;
          Wed, 29 Nov 1995 07:17:36 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817600641:17002:0; Tue, 28 Nov 95 23:17:21 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ab10179;
          28 Nov 95 23:17 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Tue, 28 Nov 1995 22:42:46 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA02859 for dbi-users-real; Tue, 28 Nov 1995 12:16:17 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from clothos.candle.com (clothos.Candle.Com [204.217.194.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id MAA02855 
          for <dbi-users@fugue.com>; Tue, 28 Nov 1995 12:16:13 -0800
Received: from phobos.Candle.Com by clothos.candle.com with SMTP 
          id AA14725 (5.67b/IDA-1.5 for <dbi-users@fugue.com>);
          Tue, 28 Nov 1995 12:12:29 -0800
Received: from smtpgwy.Candle.Com by phobos.Candle.Com with SMTP 
          id AA26528 (5.67b/IDA-1.5); Tue, 28 Nov 1995 12:12:22 -0800
Received: from ccMail by SMTPGWY.CANDLE.COM (SMTPLINK V2.10.05) id AA817589585;
          Tue, 28 Nov 95 12:05:25 PST
Date: Tue, 28 Nov 95 12:05:25 PST
From: Vendetta Black <vblack@Candle.com>
Message-Id: <9510288175.AA817589585@SMTPGWY.CANDLE.COM>
To: Alligator Descartes <descarte@hermetica.com>
Cc: dbi-users@fugue.com, Tim.Bunce@ig.co.uk
Subject: Re[2]: Informix Interface to PERL
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Tue, 28 Nov 95 23:17:20 GMT]

    
    From INFORMIX  
     /informix/lib/libasf.a
     /informix/lib/netlib.a
     
    Also from good ole AIX:
     lbsd
     ltli

    The libtli.a is the network piece (ISTAR) which is required under 6.0. 
    I don't think there is a lot of differences between 6.X and 7.X but I
    will know in about 2 months when I install here.

    Thanks for telling me about the new mailing lists.

    Vendetta

______________________________ Reply Separator _________________________________
Subject: Re: Informix Interface to PERL
Author:  Alligator Descartes <descarte@hermetica.com> at INTERNET
Date:    11/28/95 2:05 AM


    
>     I am having a problem with the Informix interface.  I can retrieve 
>     data but am unable to retrieve BLOBS particuliarly any text BLOBS.
    
BLOBs aren't supported yet in DBD::Informix. The driver is at a very 
experimental stage just now, and I haven't had the time to devote to bringing 
it up to the state of being particularly useful yet. The usefulness of it 
will increase along with the version number fairly soon, I hope.
    
>     I am also receiving a couple messages during the make test.  I do 
>     know the what the two hidden messages are.
    
I'll leave this to Tim.
    
[ test results deleted ]
    
>     Also, this may be a version 7.1 to 6.0 difference but 
>     there were no INFORMIX libraries in the Makefiles.
    
Well, I only have access to Informix 5.04 ( I think ), so the libraries
in the Makefile.PL script reflect that. With help from Dave Rattanni, support 
for Informix 7 has been added, but if you could send me the necessary
library names for Informix 6, we can cover that now, as well.
    
>     When I attempt to a SELECT that contains a text BLOB, I do 
>     retrieve the other columns but not the column containing the BLOB.
    
Again, they're not supported yet...............
    
RSN is the best I can say, I'm afraid. Keep watching the mailing lists, 
and the Hermetica web pages.
    
Also, you should resubscribe to the DBI Mailing Lists. THe perldb-interest 
list is defunct ( or soon will be ). The new list addresses are either:
    
 http://www.fugue.com/dbi
    
via the WWW ( preferred ), or:
    
 dbi-users-request@fugue.com
 dbi-dev-request@fugue.com
 dbi-announce@fugue.com
    
Regards.
    
-- 
Alligator Descartes | PGP key available on request! 
descarte@hermetica.com | http://www.hermetica.com 

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <22464-86@oink>;
          Wed, 29 Nov 1995 07:20:55 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817607911:21283:0; Wed, 29 Nov 95 01:18:31 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa21272;
          29 Nov 95 1:18 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa11283;
          29 Nov 95 1:18 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA03200 for dbi-users-real; Tue, 28 Nov 1995 14:21:30 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from pilot.njin.net (pilot.njin.net [128.6.7.38]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA03196 
          for <dbi-users@fugue.com>; Tue, 28 Nov 1995 14:21:28 -0800
Received: from localhost (phj@localhost) 
          by pilot.njin.net (8.6.12+bestmx+oldruq+newsunq+grosshack/8.6.12) 
          with ESMTP id RAA04473; Tue, 28 Nov 1995 17:23:52 -0500
Message-Id: <199511282223.RAA04473@pilot.njin.net>
To: dbi-users@fugue.com
cc: phj@pilot.njin.net
Subject: DBI/Oracle speed problems
Date: Tue, 28 Nov 1995 17:23:50 -0500
From: "Patricia H. Ju" <phj@pilot.njin.net>
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 29 Nov 95 1:18:15 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Wed, 29 Nov 95 1:18:30 GMT]


Hi dbi-users,

I have slowness.  I am trying to ascertain whether it is a tuning
problem (tests seem to imply it is not) or slowness in DBI.

The main slowness seems to come from the login connection.  On both
machines, after invoking 'sqlplus' there's a slight pause (longer on the
machine with less memory), then the username prompt, and the password
prompt following quickly.  Another noticeable lag (3 seconds) before
the 'SQL>' prompt shows.  From here, queries are quite speedy.

This leads me to believe something's stuck in making the connection ?
But I don't know where to look to fix something like that.

Anyone have speed problems connecting to Oracle DBI ?  Do you think
it's worth trying oraperl instead ?

If anyone recognizes the symptoms, please, please help.


Thanks much.


Patricia
.............
Who needs patience when you've got force ?

------- End of Forwarded Message

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <22464-88@oink>;
          Wed, 29 Nov 1995 07:21:11 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817607996:21893:0; Wed, 29 Nov 95 01:19:56 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa21889;
          29 Nov 95 1:19 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Wed, 29 Nov 1995 01:19:44 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA03390 for dbi-users-real; Tue, 28 Nov 1995 15:42:21 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA03382 
          for <dbi-users@fugue.com>; Tue, 28 Nov 1995 15:42:15 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id XAA14837; Tue, 28 Nov 1995 23:39:53 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511282339.XAA14837@fruitbat.mcqueen.com>
Subject: Re: DBI/Oracle speed problems
To: phj@pilot.njin.net (Patricia H. Ju)
Date: Tue, 28 Nov 1995 23:39:51 +0000 (GMT)
Cc: dbi-users@fugue.com
In-Reply-To: <199511282223.RAA04473@pilot.njin.net> from "Patricia H. Ju" at Nov 28, 95 05:23:50 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 2003
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Wed, 29 Nov 95 1:19:55 GMT]


> I have slowness.  I am trying to ascertain whether it is a tuning
> problem (tests seem to imply it is not) or slowness in DBI.

Could be................

> The main slowness seems to come from the login connection.  On both
> machines, after invoking 'sqlplus' there's a slight pause (longer on the
> machine with less memory), then the username prompt, and the password
> prompt following quickly.  Another noticeable lag (3 seconds) before
> the 'SQL>' prompt shows.  From here, queries are quite speedy.

Yes, the login stuff is a noticed problem from this person's point of view also.
I can, however, tell you that the speed problem doesn't appear to lie within
DBI, per se, but in the quantity of memory required to kick off an Oracle-based
process. The DBD::Oracle library is 2.6M ( on a Sparc Solaris2.3 box ) which
causes my machine to swap it immediately. You essentially then have to wait
until it comes back in before it'll connect. Once you're in, though, it's
fairly quick. 

After some testing, I found that all Oracle processes took the same length of
time to connect, including DBI ones. 

> This leads me to believe something's stuck in making the connection ?
> But I don't know where to look to fix something like that.

Add dispatchers to your instance. That may help you somewhat. It helped
here a little bit.

> Anyone have speed problems connecting to Oracle DBI ?  Do you think
> it's worth trying oraperl instead ?

Well, remember that oraperl for perl5 is actually another emulation layer on
top of DBI on top of the DBD::Oracle driver, so that wouldn't help you at all!

> If anyone recognizes the symptoms, please, please help.

I bought more memory. That helped considerably! 

Also, the problems are not as noticable with the Informix or mSQL drivers,
but then, their shared library, at least on my machine are approximately
1/20th the size........

> Patricia

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <22464-99@oink>;
          Wed, 29 Nov 1995 07:22:32 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817624357:25206:0; Wed, 29 Nov 95 05:52:37 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa25202;
          29 Nov 95 5:52 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Wed, 29 Nov 1995 05:51:59 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA03955 for dbi-users-real; Tue, 28 Nov 1995 20:08:40 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id UAA03951 
          for <dbi-users@fugue.com>; Tue, 28 Nov 1995 20:08:37 -0800
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.86.169]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id WAA63323;
          Tue, 28 Nov 1995 22:10:55 -0600
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for phj@pilot.njin.net at austin.ibm.com; id AA27178;
          Tue, 28 Nov 1995 22:10:45 -0600
Message-Id: <9511290410.AA27178@dax.austin.ibm.com>
To: Alligator Descartes <descarte@hermetica.com>
Cc: phj@pilot.njin.net (Patricia H. Ju), dbi-users@fugue.com
Subject: Re: DBI/Oracle speed problems
In-Reply-To: Your message of Tue, 28 Nov 95 23:39:51 +0000. <199511282339.XAA14837@fruitbat.mcqueen.com>
Date: Tue, 28 Nov 95 22:10:44 -0600
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Wed, 29 Nov 95 5:52:37 GMT]


Alligator Descartes <descarte@hermetica.com>  writes:
|> 
|> > I have slowness.  I am trying to ascertain whether it is a tuning
|> > problem (tests seem to imply it is not) or slowness in DBI.
|> 
|> Could be................
|> 
|> > The main slowness seems to come from the login connection.  On both
|> > machines, after invoking 'sqlplus' there's a slight pause (longer on the
|> > machine with less memory), then the username prompt, and the password
|> > prompt following quickly.  Another noticeable lag (3 seconds) before
|> > the 'SQL>' prompt shows.  From here, queries are quite speedy.
|> 
|> Yes, the login stuff is a noticed problem from this person's point of view also.
|> I can, however, tell you that the speed problem doesn't appear to lie within
|> DBI, per se, but in the quantity of memory required to kick off an Oracle-based
|> process. The DBD::Oracle library is 2.6M ( on a Sparc Solaris2.3 box ) which
|> causes my machine to swap it immediately. You essentially then have to wait
|> until it comes back in before it'll connect. Once you're in, though, it's
|> fairly quick. 
|> 
|> After some testing, I found that all Oracle processes took the same length of
|> time to connect, including DBI ones. 

This has been a problem in Oracle for a really long time and how bad it
is depends on who did the port of Oracle.  The problem is that Oracle
sets up context areas for each connection, which can frequently make the
machine page.  If you are running a version built by Oracle it will be
reasonably fast.  However, if you are running a vendored port it might
take forever .......

|> > This leads me to believe something's stuck in making the connection ?
|> > But I don't know where to look to fix something like that.
|> 
|> Add dispatchers to your instance. That may help you somewhat. It helped
|> here a little bit.
|> 
|> > Anyone have speed problems connecting to Oracle DBI ?  Do you think
|> > it's worth trying oraperl instead ?
|> 
|>Well, remember that oraperl for perl5 is actually another emulation layer on
|>top of DBI on top of the DBD::Oracle driver, so that wouldn't help you at all!
|> 
|> > If anyone recognizes the symptoms, please, please help.
|> 
|> I bought more memory. That helped considerably! 

That is probably the best solution ( is that a :-) or a :-( ).  Failing
that you could write a daemon which opens an holds a connection to the
database, and then have all your other work talk to the daemon.

The other thing to check is the isolation level the database is running
at.  I don't know what the default is for Oracle, but if I had to guess
I would say it is "Cursor Stability" by default.  Depending on what you
are doing this can slow you down considerably.

Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <26923-14@oink>;
          Wed, 29 Nov 1995 14:46:41 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817647344:10791:0; Wed, 29 Nov 95 12:15:44 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa10594;
          29 Nov 95 12:15 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id BAA05375 for dbi-users-real; Wed, 29 Nov 1995 01:20:19 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay.inferentia.it (dns.inferentia.it [151.99.220.4]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id BAA05371 
          for <dbi-users@fugue.com>; Wed, 29 Nov 1995 01:20:16 -0800
Received: from yquem.inferentia.it (yquem.inferentia.it [194.184.62.17]) 
          by relay.inferentia.it (8.6.12/8.6.12) with SMTP id KAA19400;
          Wed, 29 Nov 1995 10:22:55 +0100
Posted-Date: Wed, 29 Nov 1995 10:22:55 +0100
Received: by yquem.inferentia.it with Microsoft Mail 
          id <01BABE46.1E277340@yquem.inferentia.it>;
          Wed, 29 Nov 1995 10:33:26 +-100
Message-ID: <01BABE46.1E277340@yquem.inferentia.it>
From: Davide Migliavacca <Davide.Migliavacca@inferentia.it>
To: "dbi-users@fugue.com" <dbi-users@fugue.com>
Cc: "'Patricia H. Ju'" <phj@pilot.njin.net>
Subject: RE: DBI/Oracle speed problems
Date: Wed, 29 Nov 1995 10:33:25 +-100
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 29 Nov 95 12:15:43 GMT]


>The main slowness seems to come from the login connection.  On both
> machines, after invoking 'sqlplus' there's a slight pause (longer on =
the

Are you using the "user@SID" form of login?
Don't; use the ORACLE_SID environment variable. AFAIK, this changes the =
underlying SQL*Net transport. In the "user@SID" form, you'll get a =
network connection from your host to your host, while dropping the @SID =
obtains a local, and speedier, connection.
Another possible workaround, if you have enough memory, might be running =
a multithreaded server with a couple of dispatchers instead of a =
dedicated server. BTW, while you need more memory to set up, it may end =
in a lesser memory requirement since it may help optimizing session =
creation. This usually helps with lots of connections/disconnections =
which is typical of  CGI applications. Notice the number of conditionals =
in this paragraph 8-)
Definitely, however, it's unlikely to be a DBD problem. When you solve =
the problem for SQL*Plus, you'll have improved connection times for ALL =
possibile client applications.

--------------------------------------------------------
Davide Migliavacca (aka shari)
Inferentia S.r.l. - Milano ITALY +39 2 59928.1 (FAX .221)
* Standard disclaimer here *
--------------------------------------------------------
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <29884-11@oink>;
          Thu, 30 Nov 1995 07:06:55 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817672287:22055:0; Wed, 29 Nov 95 19:11:27 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa22050;
          29 Nov 95 19:11 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa17068;
          29 Nov 95 19:10 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA07604 for dbi-users-real; Wed, 29 Nov 1995 08:15:57 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from office.demon.net (office.demon.net [193.195.224.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id IAA07600 
          for <dbi-users@toccata.fugue.com>; Wed, 29 Nov 1995 08:15:30 -0800
Received: from xact.demon.co.uk by office.demon.net id aa23400;
          29 Nov 95 16:13 GMT
Date: Wed, 29 Nov 1995 16:09:54 +000 (GMT)
From: Paul Mahoney <ptm@xact.demon.co.uk>
X-Sender: ptm@xact4.xact.com
To: dbi-users@toccata.fugue.com
Subject: DBI and SCO 3.2.4.2
Message-ID: <Pine.SCO.3.90.951129160228.8943B-100000@xact4.xact.com>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 29 Nov 95 19:10:55 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Wed, 29 Nov 95 19:11:27 GMT]


I've looked at some faq's but couldn't find an answer ... yet I'm sure I'm 
not the first to want to try out perl5-DBI-DBD(Informix) on SCO UNIX 3.2.4.2

Ok,

perl5.001m compiled, tested and installed effortlessly :-)

DBI compiled and tested out ok (I think, I was difficult to tell)

DBD (Informix 0.02pl0)

ran
	./build
got
	***** Removing old dbdimp.c *****
	***** Generating new Makefile *****
	Can't load module DBI, dynamic loading not available in this perl.
	(You may need to build a new perl executable which either supports
	dynamic loading or has the DBI module statically linked into it.)
 	at /usr/local/lib/perl5/DBI.pm line 30
	BEGIN failed--compilation aborted at Makefile.PL line 11.
	***** Attaching preprocessor information to Makefile *****
	***** Generating MAXCURSOR information *****

Now, when configuring perl5 I took the default choice of NO for dynamic 
loading ... I don't thick SCO 3.2.4.2 supports it.

I haven't found any instructions on how to statically link DBI into 
perl5. Probably obvious but I thought I ask if someone passed this way 
before.

PS: Is there a Perl 5 book yet?

 ---
Paul Mahoney, X-Act Solutions Limited
smail: Owlsmead, Meads Road, Little Common, Bexhill-on-Sea, East Sussex TN39 4SY
email: ptm@xact.demon.co.uk
phone: +44 424 846368

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <29884-30@oink>;
          Thu, 30 Nov 1995 07:09:45 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817688637:26268:0; Wed, 29 Nov 95 23:43:57 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa26262;
          29 Nov 95 23:43 GMT
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id msg.ad11334;
          29 Nov 95 23:43 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Wed, 29 Nov 1995 21:44:04 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA08256 for dbi-users-real; Wed, 29 Nov 1995 11:27:18 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from pilot.njin.net (pilot.njin.net [128.6.7.38]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id LAA08252 
          for <dbi-users@fugue.com>; Wed, 29 Nov 1995 11:27:16 -0800
Received: from localhost (phj@localhost) 
          by pilot.njin.net (8.6.12+bestmx+oldruq+newsunq+grosshack/8.6.12) 
          with ESMTP id OAA06500; Wed, 29 Nov 1995 14:29:05 -0500
Message-Id: <199511291929.OAA06500@pilot.njin.net>
To: dbi-users@fugue.com
cc: phj@pilot.njin.net
Subject: re:Oracle slowness
Date: Wed, 29 Nov 1995 14:28:59 -0500
From: "Patricia H. Ju" <phj@pilot.njin.net>
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Wed, 29 Nov 95 23:43:32 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Wed, 29 Nov 95 23:43:57 GMT]

Hi all,

Thanks for responding.

I increased my mts_max_dispatchers to 10 but this hasn't seemed to help..

After altering my CGI perl scripts to make its connections once only,
at the beginning of the script, instead of on an as-needed basis farther
down, my programs began to respond quite well.  4-5 second delays only.

Unfortunately, these changes didn't seem to help on the production machine.
The two machines have the same amount of memory and are otherwise similar
except the production machine has a much, much higher load.

Out of curiosity, I ran the same cgi script on each machine, at the command
line.  Turns out perl takes about 2 seconds to load the Oracle module
on the non-production machine.. and >= 6 seconds (!) to load on the
production machine.

Is there any way (recompiling with diff options ?) to make this loading
quicker, besides buying more memory ?  Moving to Msql is my least favorite
solution.. but one I might have to take tomorrow.


Patricia

...........
"Men have forgotten this truth," said the fox.  "But you must not forget it.
You become responsible, forever, for what you have tamed . . ."
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <00541-6@oink>;
          Thu, 30 Nov 1995 07:17:08 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817674053:23927:0; Wed, 29 Nov 95 19:40:53 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id aa23778;
          29 Nov 95 19:40 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Wed, 29 Nov 1995 19:32:58 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA07650 for dbi-users-real; Wed, 29 Nov 1995 08:38:15 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id IAA07646 
          for <dbi-users@fugue.com>; Wed, 29 Nov 1995 08:38:12 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id QAA22783; Wed, 29 Nov 1995 16:35:58 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199511291635.QAA22783@fruitbat.mcqueen.com>
Subject: Re: DBI and SCO 3.2.4.2
To: ptm@xact.demon.co.uk (Paul Mahoney)
Date: Wed, 29 Nov 1995 16:35:56 +0000 (GMT)
Cc: dbi-users@fugue.com
In-Reply-To: <Pine.SCO.3.90.951129160228.8943B-100000@xact4.xact.com> from "Paul Mahoney" at Nov 29, 95 04:09:54 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 1541
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Wed, 29 Nov 95 19:40:51 GMT]


> I've looked at some faq's but couldn't find an answer ... yet I'm sure I'm 
> not the first to want to try out perl5-DBI-DBD(Informix) on SCO UNIX 3.2.4.2
> 
> perl5.001m compiled, tested and installed effortlessly :-)
> 
> DBI compiled and tested out ok (I think, I was difficult to tell)
> 
> DBD (Informix 0.02pl0)
> 
> ran
> 	./build
> got
> 	***** Removing old dbdimp.c *****
> 	***** Generating new Makefile *****
> 	Can't load module DBI, dynamic loading not available in this perl.
> 	(You may need to build a new perl executable which either supports
> 	dynamic loading or has the DBI module statically linked into it.)
>  	at /usr/local/lib/perl5/DBI.pm line 30
> 	BEGIN failed--compilation aborted at Makefile.PL line 11.
> 	***** Attaching preprocessor information to Makefile *****
> 	***** Generating MAXCURSOR information *****
> 
> Now, when configuring perl5 I took the default choice of NO for dynamic 
> loading ... I don't thick SCO 3.2.4.2 supports it.
> 
> I haven't found any instructions on how to statically link DBI into 
> perl5. Probably obvious but I thought I ask if someone passed this way 
> before.

The DBI README file tells you, I think:

	make LINKTYPE=static

ought to do it. Then:

	make perl

to build a new perl executable with the module built into it.

> PS: Is there a Perl 5 book yet?

Haven't seen one, but I could be wrong. 

Hope that helps.

> Paul Mahoney, X-Act Solutions Limited

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <18995-22@oink>;
          Mon, 4 Dec 1995 07:09:15 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 817855789:02953:0; Fri, 01 Dec 95 22:09:49 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa01169;
          1 Dec 95 22:08 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA02883 for dbi-users-real; Fri, 1 Dec 1995 09:16:47 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from eol1 (eol1.eo.lu [193.93.48.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id JAA02879 
          for <dbi-users@fugue.com>; Fri, 1 Dec 1995 09:16:01 -0800
Received: from [193.93.48.253] by eol1 with smtp (Smail3.1.28.1 #4) 
          id m0tLYNZ-000bKNC; Fri, 1 Dec 95 17:32 MET
Message-Id: <m0tLYNZ-000bKNC@eol1>
To: "dbi-users@fugue.com" <dbi-users@fugue.com>
Subject: Coredump on empty handler
Date: Fri, 01 Dec 95 17:30:03 --0100
From: Massimo Balestra <mbalestra@flower.it>
X-Mailer: E-Mail Connection v2.5.03
X-SMTP-Posting-Host: toccata.fugue.com [Fri, 1 Dec 95 22:09:01 GMT]

-- [ From: Massimo Balestra * EMC.Ver #2.5.02 ] --

Hi everybody,

Some weeks ago I wrote a mail like this:
> I use DBI 0.63 with the DBD::Oracle 0.25 with the Oraperl emulation.
> The platform is an IBM AIX (R6000) RISC machine.
> ...................
> My problem is: when I am developing the functions to 
> access the oracle Database and, in the firs testing there is a 
> syntax error in my SQL statement, I get a Coredump
> ...................

I tested it with DBI 0.65 and DBD::Oracle 0.27 and seems that
this problem is solved 
:-)))))))
I am very happy.

But.....

I still get a coredump in this case:
Look at this example

#!/usr/local/bin/perl 
use Oraperl;
$ORA_LDA = &ORA_LOGON;
if ($ORA_LDA == -4) {
   print "Error in the database during the connection\n";
   exit 0;
}

  $SELECT = "SELECT field FROM table ";
  $SH = &ora_open($ORA_LDA, $SELECT);
  if ($ora_errno > 0) {
      print "Error\n";
      exit -4; 
  } 
  @NR = &ora_fetch($SN);

  # I wrong the variable name. I passed an empty handler.
  # In this situation I get the coredump.

  &ora_close($SH); 
  print "$NR[0]\n";

&ORA_LOGOFF;

You know, it is not a real DBD/DBD bug but..... get back an error 
is better than a coredump.

Let look at all informations:

Result of perl  perl -e 'use Config; print Config::myconfig()' 

Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=aix, osver=3.2.5, archname=aix
    uname='aix bgspectrum2 2 3 002016317100 '
    hint=previous
  Compiler:
    cc='cc', optimize='-O -g'
    cppflags='-D_ALL_SOURCE'
    ccflags ='-D_ALL_SOURCE'
    ldflags =''
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=1, d_casti32=define, d_castneg=
    intsize=4, alignbytes=8, usemymalloc=y, randbits=15
  Libraries:
    so=so
    libpth=/lib /usr/lib /usr/ccs/lib /usr/local/lib
    libs=-ldbm -lld -lm -lc -lbsd -lPW
    libc=/usr/lib/libc.a
  Dynamic Linking:
    dlsrc=dl_aix.xs, dlext=so, d_dlsymun=
    cccdlflags=' ', ccdlflags='-bE:perl.exp', lddlflags='-H512 -T512 -bhalt:
4 -bM:SRE -bI:$(PERL_INC)/perl.exp -bE:$(BASEEXT).exp -e _nostart -lc'
-----------------------------------------------------------------
-----------------------------------------------------------------
-----------------------------------------------------------------
Installation of DBI-0.65 

Result of perl Makefile.PL 

    Build, TEST and INSTALL Perl 5 first. Use version 5.001m or later.

    DO NOT build the DBI under the Perl source tree.

    Use 'make test' to execute self tests.

MakeMaker (v4.16)
Checking if your kit is complete...
Looks good
	NAME => 'DBI'
	VERSION => '0.65'
Using PERL=/usr/bin/perl
Writing Makefile for DBI
-----------------------------------------------------------------
Result of make 
mkdir ./blib
mkdir ./blib/auto
mkdir ./blib/auto/DBI
	/usr/bin/perl "-I/usr/local/lib/perl5/aix" "-I/usr/local/lib/perl5" -e 'use
ExtUtils::MakeMaker qw(&mksymlists); \
		&mksymlists(DL_FUNCS => "", DL_VARS => "", NAME => "DBI")'
Useless use of reference constructor in void context at -e line 2.
	/usr/bin/perl -I/usr/local/lib/perl5/aix -I/usr/local/lib/perl5
/usr/local/lib/perl5/ExtUtils/xsubpp -typemap
/usr/local/lib/perl5/ExtUtils/typemap DBI.xs >DBI.tc && mv DBI.tc DBI.c
	cc -c -D_ALL_SOURCE -O -g  -I/usr/local/lib/perl5/aix/CORE   DBI.c
Running Mkbootstrap for DBI ()
	chmod 644 DBI.bs
	LD_RUN_PATH="" ld -o ./blib/auto/DBI/DBI.so -H512 -T512 -bhalt:4 -bM:SRE -
bI:/usr/local/lib/perl5/aix/CORE/perl.exp -bE:DBI.exp -e _nostart -lc DBI.o 
 
	chmod 755 ./blib/auto/DBI/DBI.so
	cp DBI.bs ./blib/auto/DBI/DBI.bs
	chmod 644 ./blib/auto/DBI/DBI.bs
mkdir ./blib/DBI
	cp DBIXS.h ./blib/DBI/DBIXS.h
	chmod 644 ./blib/DBI/DBIXS.h
mkdir ./blib/DBD
	cp lib/DBD/ExampleP.pm ./blib/DBD/ExampleP.pm
	chmod 644 ./blib/DBD/ExampleP.pm
	cp lib/DBD/NullP.pm ./blib/DBD/NullP.pm
	chmod 644 ./blib/DBD/NullP.pm
	cp lib/DBD/Sponge.pm ./blib/DBD/Sponge.pm
	chmod 644 ./blib/DBD/Sponge.pm
	cp DBI.pm ./blib/DBI.pm
	chmod 644 ./blib/DBI.pm
-----------------------------------------------------------------
Result of make test TEST_VERBOSE=1 
	/usr/bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/aix -
I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose
=1; runtests @ARGV;' t/*.t
t/min...............1..11
DBD::ExampleP in /usr/local/lib/perl5 is hidden by DBD::ExampleP in ./blib
 at t/min.t line 16
DBD::NullP in /usr/local/lib/perl5 is hidden by DBD::NullP in ./blib
 at t/min.t line 16
DBD::Sponge in /usr/local/lib/perl5 is hok 1
ok 2
ok 3
idden by DBD::Sponge in ./blib
 at t/min.t line 16
ok 4
ok 4
ok 5
ok 6
ok 7
ok 8
ok 9
ok 10
ok 11
ok
All tests successful.
Files=1,  Tests=11,  0 secs ( 0.26 cusr  0.05 csys =  0.31 cpu)
	/usr/bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/aix -
I/usr/local/lib/perl5 test.pl
test.pl 
DBI test application $Revision: 1.12 $
Switch: DBI Switch by Tim Bunce, 1.48 
DebugDispatch: 0
DBD::ExampleP in /usr/local/lib/perl5 is hidden by DBD::ExampleP in ./blib
 at test.pl line 49
DBD::NullP in /usr/local/lib/perl5 is hidden by DBD::NullP in ./blib
 at test.pl line 49
DBD::Sponge in /usr/local/lib/perl5 is hidden by DBD::Sponge in ./blib
 at test.pl line 49
Available Drivers: ExampleP, NullP, Sponge, Oracle
Read DBI special variables (expect 0, 99, 99):
err:    
err:    99
errstr: 99
Attempt to modify DBI special variables.
Expect a 'Can't modify' error message:
Can't modify $DBI::&rows special variable at test.pl line 59

Driver installed as DBI::dr=HASH(0x2010797c)
Connected as DBI::db=HASH(0x2012b510)

Test error handling: prepare invalid query.
Expect an ERROR EVENT message:
prepare returned UNDEF. $DBI::err=

Cursor prepare'd as DBI::st=HASH(0x2012b678)
Prepared as DBI::st=HASH(0x2012b750)
Number of fields: 3
Data type of first field: 1
Driver name: ExampleP

Fetching data from both cursors.
Expect several rows of data:
82431 2 ., 8 512 .
82431 2 .., 8 512 ..
82413 2048 lpp, 8 512 cron
82431 65868 bin, 8 512 lpd
82413 51808 ccs, 8 512 mail
82413 68112 include, 8 512 mqueue
82413 70203 lbin, 8 512 qdaemon
82431 111154 lib, 8 512 secretmail
82368 127990 lost+found, 8 512 writesrv
82413 127991 mbin, 8 512 uucp
82413 127999 sbin, 8 512 uucppublic
82413 129062 share, 8 512 rwho

Automatic method parameter usage check.
Expect a 'DBI ... invalid' error and a 'Usage: ...' message:
DBI commit: invalid number of parameters: handle + 1
Usage: $h->commit() at test.pl line 130.

Preparing new $cursor_a to replace current $cursor_a.
We enable debugging on current to watch it's destruction.
Expect several lines of DBI trace information:
    DBI::st=HASH(0x2012b774) debug level set to 2
    -> DESTROY for DBD::ExampleP::st (DBI::st=HASH(0x2012b774))
    <- DESTROY= undef

Executing via func redirect: $h->func(..., 'execute')

Binding columns of $cursor_a to variables.

Fetching one row from new $cursor_a with a bound column.
Expect a large number follwed by a dot:
817052704 .
bind_col worked

Cursor tests done (scoped objects will be destroyed now)
test.pl done (global destruction will follow)
-----------------------------------------------------------------
-----------------------------------------------------------------
-----------------------------------------------------------------
Installation of DBD-Oracle-0.27 

Result of perl Makefile.PL /u01/home/oracle/product/7.1.4/rdbms/lib/oracle.
mk

Configuring DBD::Oracle version 0.27...
Remember to actually read the README file!

Using Oracle in /u01/home/oracle/product/7.1.4
Oracle sysliblist: -lm -lld -lm
Using /u01/home/oracle/product/7.1.4/rdbms/lib/oracle.mk version 7.87
System: perl5.001 aix bgspectrum2 2 3 002016317100  aix dl_aix.xs
Compiler: cc -O -g -D_ALL_SOURCE
Oracle proc.mk would have used these values but we override them:
  CC:       oraxlc
  CFLAGS:   -I. -O
  LDFLAGS:  -L$(LIBHOME)

Checking if your kit is complete...
Looks good
Writing Makefile for DBD::Oracle
-----------------------------------------------------------------
Result of make 
mkdir ./blib
mkdir ./blib/DBD
mkdir ./blib/auto
mkdir ./blib/auto/DBD
mkdir ./blib/auto/DBD/Oracle
	/usr/bin/perl "-I/usr/local/lib/perl5/aix" "-I/usr/local/lib/perl5" -e 'use
ExtUtils::MakeMaker qw(&mksymlists); \
		&mksymlists(DL_FUNCS => "", DL_VARS => "", NAME => "DBD::Oracle")'
Useless use of reference constructor in void context at -e line 2.
	/usr/bin/perl -I/usr/local/lib/perl5/aix -I/usr/local/lib/perl5
/usr/local/lib/perl5/ExtUtils/xsubpp -typemap
/usr/local/lib/perl5/ExtUtils/typemap Oracle.xs >Oracle.tc && mv Oracle.tc
Oracle.c
	cc -c -D_ALL_SOURCE -O -g  -I/usr/local/lib/perl5/aix/CORE  -
I/u01/home/oracle/product/7.1.4/rdbms/demo -I/u01/home/oracle/product/7.1.
4/rdbms/demo -I/usr/local/lib/perl5/aix/DBI Oracle.c
	cc -c -D_ALL_SOURCE -O -g  -I/usr/local/lib/perl5/aix/CORE  -
I/u01/home/oracle/product/7.1.4/rdbms/demo -I/u01/home/oracle/product/7.1.
4/rdbms/demo -I/usr/local/lib/perl5/aix/DBI dbdimp.c
Running Mkbootstrap for DBD::Oracle ()
	chmod 644 Oracle.bs
	LD_RUN_PATH="" ld -H512 -T512 -bhalt:4 -o ./blib/auto/DBD/Oracle/Oracle.so
-H512 -T512 -bhalt:4 -bM:SRE -bI:/usr/local/lib/perl5/aix/CORE/perl.exp -bE:
Oracle.exp -e _nostart -lc Oracle.o  dbdimp.o -L/u01/home/oracle/product/7.1
.4/lib  /u01/home/oracle/product/7.1.4/lib/libocic.a
/u01/home/oracle/product/7.1.4/lib/osntab.o -lsqlnet -lora  -lsqlnet  -lora
-lnlsrtl -lcv6 -lcore -lnlsrtl -lcv6  -lcore  `cat
/u01/home/oracle/product/7.1.4/rdbms/lib/sysliblist`  /lib/crt0.o -lc -bI:
/u01/home/oracle/product/7.1.
	chmod 755 ./blib/auto/DBD/Oracle/Oracle.so
	cp Oracle.bs ./blib/auto/DBD/Oracle/Oracle.bs
	chmod 644 ./blib/auto/DBD/Oracle/Oracle.bs
	cp Oraperl.pm ./blib/Oraperl.pm
	chmod 644 ./blib/Oraperl.pm
	cp oraperl.ph ./blib/oraperl.ph
	chmod 644 ./blib/oraperl.ph
	cp Oracle.pm ./blib/DBD/Oracle.pm
	chmod 644 ./blib/DBD/Oracle.pm
-----------------------------------------------------------------
Result of make test TEST_VERBOSE=1 
	/usr/bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/aix -
I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose
=1; runtests @ARGV;' t/*.t
t/base..............1..5
ok 1
ok 2
ok 3
ok 4
ok 5
ok
t/main..............t/main.t 
DBI test application $Revision: 1.1 $
1..1
ok 1
ok
All tests successful.
Files=2,  Tests=6,  1 secs ( 0.61 cusr  0.13 csys =  0.74 cpu)
	/usr/bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/aix -
I/usr/local/lib/perl5 test.pl
Oraperl test application $Revision: 1.19 $

Oraperl Emulation Interface version 1.23 
Oracle Driver 1.21 
DBI Switch by Tim Bunce, version 1.48 


Connecting
 to 'ATMNET' (from command line, else uses ORACLE_SID/TWO_TASK)
 as '/' (via ORACLE_USERID environment var or default)
Fields:  4
Names:   'NUM_T',	'DATE_T',	'CHAR_T',	'NULL_T'
Lengths: '40',	'75',	'30',	'0'
Types:   '2',	'12',	'1',	'1'
Data rows:
    fetch: 79.2 22-NOV-95 OPS$MBA NULL

csr reassigned (forces destruction)...
Fetch list of tables:
Fetched: DUAL
Fetched: SYSTEM_PRIVILEGE_MAP
Fetched: TABLE_PRIVILEGE_MAP
Fetched: STMT_AUDIT_OPTION_MAP
Test ora_do with harmless non-select statement (set transaction read only)
Expect error message:
ora_do: 1453: ORA-01453: SET TRANSACTION must be first statement of
transaction (DBD: oexec error)
csr out of scope...
ora_logoff...
lda out of scope...

Testing repetitive connect/open/close/disconnect:
Expect sequence of digits, no other messages:
1 2 3 4 5 

Test interaction of explicit close/logoff and implicit DESTROYs
Expect just 'done.', no other messages:
done.

Test complete (1 seconds).
-----------------------------------------------------------------
-----------------------------------------------------------------
-----------------------------------------------------------------
Running the test program (the example you saw before)
I get the following informations:

dbx Version 3.1
Type 'help' for help.
reading symbolic information ...
(dbx) r

segmentation violation in dbih_getcom at line 238 in file "DBI.c"
  238       if (SvRMAGICAL(sv) && (mg=SvMAGIC(sv))->mg_type == DBI_MAGIC) {
(dbx) where
dbih_getcom(hrv = 0x20072c0c), line 238 in "DBI.c"
XS_DBD__Oracle__st_fetchrow(cv = 0x2006eb08), line 382 in "Oracle.c"
pp_entersub(), line 1658 in "pp_hot.c"
run.run(), line 29 in "run.c"
perl_run(sv_interp = (nil)), line 516 in "perl.c"
main(argc = 0, argv = (nil), env = (nil)), line 34 in "perlmain.c"
(dbx) q

-----------------------------------------------------------------

I hope I gave you enough informations.

Thank you 
              Max



--
__________________________________________________________________

  o    _______________ 
 /\_  _|             |             Massimo Balestra
_\__`[_______________|         Email mbalestra@flower.it
] [ \, ][         ][ 
__________________________________________________________________

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <28240-19@oink>;
          Tue, 5 Dec 1995 07:09:22 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818109293:20643:0; Mon, 04 Dec 95 20:34:53 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ad19692;
          4 Dec 95 20:34 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Mon, 4 Dec 1995 20:04:20 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA05242 for dbi-users-real; Mon, 4 Dec 1995 09:07:03 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA05238 
          for <dbi-users@fugue.com>; Mon, 4 Dec 1995 09:07:00 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id RAA04490; Mon, 4 Dec 1995 17:02:22 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199512041702.RAA04490@fruitbat.mcqueen.com>
Subject: Re: DBI/Oracle speed problems
To: Tim.Bunce@ig.co.uk (Tim Bunce)
Date: Mon, 4 Dec 1995 17:02:21 +0000 (GMT)
Cc: dbi-users@fugue.com, phj@pilot.njin.net
In-Reply-To: <9512041255.AA27326@toad.ig.co.uk> from "Tim Bunce" at Dec 4, 95 12:55:05 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 494
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Mon, 4 Dec 95 20:34:53 GMT]


> Several people have replied with good thoughts. No one mentioned the
> README:

The README? Now, Tim, that's the *last* place any of us would expect to
see helpful advice. 

Do the normal thing. Don't include it, or stick it in as a comment at line
1026 of some random bit of source code.........

8-)

> Tim.
> 
> p.s. Standby for post-vacation announcements :-)

*dives for cover*

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <28240-23@oink>;
          Tue, 5 Dec 1995 07:10:04 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818109315:20867:0; Mon, 04 Dec 95 20:35:15 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ad19692;
          4 Dec 95 20:35 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Mon, 4 Dec 1995 20:01:36 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA05206 for dbi-users-real; Mon, 4 Dec 1995 08:40:20 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id IAA05202 
          for <dbi-users@fugue.com>; Mon, 4 Dec 1995 08:40:15 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ai17854;
          4 Dec 95 16:40 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ao04233;
          4 Dec 95 16:37 GMT
Received: from toad by oink with SMTP (PP) id <24899-0@oink>;
          Mon, 4 Dec 1995 12:55:32 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA27326;
          Mon, 4 Dec 1995 12:55:05 +0000
Date: Mon, 4 Dec 1995 12:55:05 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512041255.AA27326@toad.ig.co.uk>
To: dbi-users@fugue.com, phj@pilot.njin.net
Subject: Re: DBI/Oracle speed problems
X-Sun-Charset: US-ASCII
content-length: 1595
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Mon, 4 Dec 95 16:37:34 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Mon, 4 Dec 95 16:40:53 GMT]
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Mon, 4 Dec 95 20:35:14 GMT]


> From: "Patricia H. Ju" <phj@pilot.njin.net>
> 
> Hi dbi-users,
> 
> I have slowness.  I am trying to ascertain whether it is a tuning
> problem (tests seem to imply it is not) or slowness in DBI.
> 
> The main slowness seems to come from the login connection.  On both
> machines, after invoking 'sqlplus' there's a slight pause (longer on the
> machine with less memory), then the username prompt, and the password
> prompt following quickly.  Another noticeable lag (3 seconds) before
> the 'SQL>' prompt shows.  From here, queries are quite speedy.
> 
> This leads me to believe something's stuck in making the connection ?
> But I don't know where to look to fix something like that.

Several people have replied with good thoughts. No one mentioned the
README:

Oracle 7.1.3/4: Connection takes a long time and may coredump

Oracle bug number: 227321 related to changing the environment before
connecting to oracle.

To work around this bug, do not set any environment variables in your
oraperl script before you call ora_login, and when you do call
ora_login, the first argument must be the empty string.  This means
that you have to be sure that your environment variables ORACLE_SID
and ORACLE_HOME are set properly before you execute any oraperl
script.  It is probably also possible to pass the SID to ora_login as
part of the username (for example, ora_login("", "SCOTT/TIGER@PROD",
"")), although I have not tested this.
This workaround is based on information from Kevin Stock.

That's something else worth thinking about.

Tim.

p.s. Standby for post-vacation announcements :-)
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <28240-34@oink>;
          Tue, 5 Dec 1995 07:12:52 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818116746:05183:0; Mon, 04 Dec 95 22:39:06 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa05171;
          4 Dec 95 22:39 GMT
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id sg.aa02278;
          4 Dec 95 22:38 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Mon, 4 Dec 1995 22:34:13 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA05592 for dbi-users-real; Mon, 4 Dec 1995 11:37:39 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from colossus.cse.psu.edu (root@colossus.cse.psu.edu [130.203.1.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id LAA05588 
          for <dbi-users@fugue.com>; Mon, 4 Dec 1995 11:37:36 -0800
Received: from localhost by colossus.cse.psu.edu with SMTP id <78536>;
          Mon, 4 Dec 1995 14:40:06 -0500
X-Mailer: exmh version 1.6.1 5/23/95
To: Tim Bunce <Tim.Bunce@ig.co.uk>
cc: dbi-users@fugue.com
Subject: Re: DBI/Oracle speed problems
In-reply-to: Your message of "Mon, 04 Dec 1995 07:55:05 EST." <9512041255.AA27326@toad.ig.co.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Mon, 4 Dec 1995 14:39:09 -0500
From: John D Groenveld <groenvel@cse.psu.edu>
Message-Id: <95Dec4.144006est.78536@colossus.cse.psu.edu>
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Mon, 4 Dec 95 22:38:26 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Mon, 4 Dec 95 22:39:05 GMT]

ora_login("", "SCOTT/TIGER\@SID", "") dies...
ora_login("", "SCOTT/TIGER\@SQLNet2ServiceName", "") and
ora_login("", "SCOTT\@SQLNet2ServiceName", "") work fine.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <28240-41@oink>;
          Tue, 5 Dec 1995 07:14:02 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818119606:03894:0; Mon, 04 Dec 95 23:26:46 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa03888;
          4 Dec 95 23:26 GMT
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id sg.aa07661;
          4 Dec 95 23:25 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Mon, 4 Dec 1995 23:25:22 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA05856 for dbi-users-real; Mon, 4 Dec 1995 13:27:23 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id NAA05852 
          for <dbi-users@fugue.com>; Mon, 4 Dec 1995 13:27:15 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id VAA06390; Mon, 4 Dec 1995 21:24:23 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199512042124.VAA06390@fruitbat.mcqueen.com>
Subject: Re: FWD>Returned Mail
To: Norman Ho <norman_ho@qmgate.fnal.gov>
Date: Mon, 4 Dec 1995 21:24:21 +0000 (GMT)
Cc: dbi-users@fugue.com, Tim.Bunce@ig.co.uk
In-Reply-To: <n1394036128.59813@qmgate.FNAL.GOV> from "Norman Ho" at Dec 4, 95 02:06:55 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 921
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Mon, 4 Dec 95 23:25:56 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Mon, 4 Dec 95 23:26:45 GMT]


>   As I understood after looking at the DBI specification that DBI can 
> not call PL/SQL functions/procedures which is integrated into a specific 
> Oracle Database... Am I right? Can Oraperl do this? Would you please 
> give me a hint?? Thank you very much for your time,

DBI, per se, cannot call PL/SQL, however, the DBD::Oracle can ( or at least
will be able to soon ). I think this is a 'about-to-be-implemented' feature
of Oracle. It would appear as a private function to the Oracle driver.

Under perl5, oraperl wouldn't be able to do it, because oraperl is simply a
translation module that sits on top of the raw DBD::Oracle driver.

However, I'd double check with Tim Bunce about this one, since I'm not 100%
sure on it. His email address is:

	Tim.Bunce@ig.co.uk

> Norman Ho from FermiLab

Regards.

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01999-7@oink>;
          Tue, 5 Dec 1995 15:12:55 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818157980:15307:0; Tue, 05 Dec 95 10:06:20 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa15275;
          5 Dec 95 10:06 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id XAA07247 for dbi-users-real; Mon, 4 Dec 1995 23:03:33 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from voro.lbl.gov (voro.lbl.gov [131.243.64.29]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id XAA07243 
          for <dbi-users@fugue.com>; Mon, 4 Dec 1995 23:03:30 -0800
Received: from voro (localhost [127.0.0.1]) by voro.lbl.gov (8.6.12/G) 
          with ESMTP id XAA06742; Mon, 4 Dec 1995 23:05:18 -0800
Message-Id: <199512050705.XAA06742@voro.lbl.gov>
X-Mailer: exmh version 1.5.3 12/28/94
To: Tim Bunce <Tim.Bunce@ig.co.uk>
cc: dbi-users@fugue.com, phj@pilot.njin.net
Subject: Re: DBI/Oracle speed problems
In-reply-to: Your message of "Mon, 04 Dec 1995 12:55:05 GMT." <9512041255.AA27326@toad.ig.co.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Mon, 04 Dec 1995 23:05:18 -0800
From: Mark Dedlow <dedlow@voro.lbl.gov>
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 5 Dec 95 10:06:18 GMT]

For what it's worth, I tried a few tests to compare startup times.  
I compared DBI to SQLPLUS on, and between, 2 systems.  The results are
all good in my opinion, but some interesting.

Client:  Sparc10     80MB  Solaris 2.4  Oracle 7.2.2
Server:  Sparc1000  704MB  Solaris 2.4  Oracle 7.1.6

These are avg times (seconds) of 10 tests each.

Exec on    connect to              DBI     SQLPLUS
-------    ---------------------  ------  ---------
Client     client db               1.1         0.7 
Client     client db via sqlnet    1.1         0.7
Client     server db               1.4         0.8
Server     server db               2.2         0.7
Server     server db via sqlnet    2.0         0.8

The things that are interesting to me are:

  1) My Sparc10 is twice as fast as my Sparc1000, for DBI, but
     no difference with SQLPLUS.
  2) No slower to a remote database than to a local one (thru 2 routers)
  3) No slower going via sqlnet than going via IPC on a local database.

Here is the test fragment:

#!/usr/local/bin/perl
use DBI;
$drh = DBI->install_driver("Oracle");
$dbh = $drh->connect("", "username\@sqlnetv2alias", "password");
## $dbh = $drh->connect("", "username", "password"); (for local db)
$query = "select sysdate from dual";
$cursor = $dbh->prepare($query);
$cursor->execute;
print (@field,"\n") while (@field = $cursor->fetchrow); 
$cursor->finish;
$dbh->disconnect;

sqlplus was tested like this:

sqlplus username/password@sqlnetv2alias @doit.sql (remote)
sqlplus username/password @doit.sql  (local)

doit.sql:
select sysdate from dual;
exit;

Mark


> > From: "Patricia H. Ju" <phj@pilot.njin.net>
> > 
> > Hi dbi-users,
> > 
> > I have slowness.  I am trying to ascertain whether it is a tuning
> > problem (tests seem to imply it is not) or slowness in DBI.
> > 
> > The main slowness seems to come from the login connection.  On both
> > machines, after invoking 'sqlplus' there's a slight pause (longer on the
> > machine with less memory), then the username prompt, and the password
> > prompt following quickly.  Another noticeable lag (3 seconds) before
> > the 'SQL>' prompt shows.  From here, queries are quite speedy.
> > 
> > This leads me to believe something's stuck in making the connection ?
> > But I don't know where to look to fix something like that.
> 
> Several people have replied with good thoughts. No one mentioned the
> README:
> 
> Oracle 7.1.3/4: Connection takes a long time and may coredump
> 
> Oracle bug number: 227321 related to changing the environment before
> connecting to oracle.
> 
> To work around this bug, do not set any environment variables in your
> oraperl script before you call ora_login, and when you do call
> ora_login, the first argument must be the empty string.  This means
> that you have to be sure that your environment variables ORACLE_SID
> and ORACLE_HOME are set properly before you execute any oraperl
> script.  It is probably also possible to pass the SID to ora_login as
> part of the username (for example, ora_login("", "SCOTT/TIGER@PROD",
> "")), although I have not tested this.
> This workaround is based on information from Kevin Stock.
> 
> That's something else worth thinking about.
> 
> Tim.
> 
> p.s. Standby for post-vacation announcements :-)

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05112-15@oink>;
          Wed, 6 Dec 1995 07:07:12 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818192828:04677:0; Tue, 05 Dec 95 19:47:08 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa04672;
          5 Dec 95 19:47 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa15125;
          5 Dec 95 19:46 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA09534 for dbi-users-real; Tue, 5 Dec 1995 07:13:41 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA09530 
          for <dbi-users@fugue.com>; Tue, 5 Dec 1995 07:13:38 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id msg.ab07606;
          5 Dec 95 15:13 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ab10648;
          5 Dec 95 15:12 GMT
Received: from toad by oink with SMTP (PP) id <01170-0@oink>;
          Tue, 5 Dec 1995 10:30:14 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA00191;
          Tue, 5 Dec 1995 10:29:43 +0000
Date: Tue, 5 Dec 1995 10:29:43 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512051029.AA00191@toad.ig.co.uk>
To: descarte@hermetica.com
Subject: Re: DBI/Oracle speed problems
Cc: dbi-users@fugue.com, phj@pilot.njin.net
X-Sun-Charset: US-ASCII
content-length: 449
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Tue, 5 Dec 95 15:12:03 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Tue, 5 Dec 95 15:13:50 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 5 Dec 95 19:46:55 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 5 Dec 95 19:47:07 GMT]


> From: Alligator Descartes <descarte@hermetica.com>
> 
> > Several people have replied with good thoughts. No one mentioned the
> > README:
> 
> The README? Now, Tim, that's the *last* place any of us would expect to
> see helpful advice. 
> 
> Do the normal thing. Don't include it, or stick it in as a comment at line
> 1026 of some random bit of source code.........
> 
> 8-)

Jack Shirazi recently suggested renaming it to FREE.SEX

:-)

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05112-25@oink>;
          Wed, 6 Dec 1995 07:08:12 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818196137:07860:0; Tue, 05 Dec 95 20:42:17 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa07855;
          5 Dec 95 20:42 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa20538;
          5 Dec 95 20:41 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA09808 for dbi-users-real; Tue, 5 Dec 1995 09:20:55 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id JAA09804 
          for <dbi-users@fugue.com>; Tue, 5 Dec 1995 09:20:53 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ae22216;
          5 Dec 95 17:18 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa07111;
          5 Dec 95 17:17 GMT
Received: from toad by oink with SMTP (PP) id <02713-0@oink>;
          Tue, 5 Dec 1995 17:16:09 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA01494;
          Tue, 5 Dec 1995 17:15:41 +0000
Date: Tue, 5 Dec 1995 17:15:41 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512051715.AA01494@toad.ig.co.uk>
To: dbi-users@fugue.com, mbalestra@flower.it
Subject: Re: Coredump on empty handler
X-Sun-Charset: US-ASCII
content-length: 627
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Tue, 5 Dec 95 17:17:04 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Tue, 5 Dec 95 17:18:36 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 5 Dec 95 20:41:55 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 5 Dec 95 20:42:17 GMT]


> From: Massimo Balestra <mbalestra@flower.it>
> 
>   $SH = &ora_open($ORA_LDA, $SELECT);
>   ....
>   &ora_fetch($SN)

In the name of efficiency I have sinned. (Many have sinned in the name
of efficiency, but that's no excuse :-)

Basically, by default, ora_close is an alias for DBD::Oracle::st::finish().
It is thus not called as a method and so bypasses the method lookup
that would have otherwise failed.

Adding the following line to your application _above_ use Oraperl
should prove this:

	BEGIN { $Oraperl::safe = 1 }

See Oraperl.pm for more explanation.

Fast or safe? You pays ya money, you takes ya choice.

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <05113-4@oink>;
          Wed, 6 Dec 1995 07:06:16 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818202127:16485:0; Tue, 05 Dec 95 22:22:07 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa16377;
          5 Dec 95 22:22 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA10201 for dbi-users-real; Tue, 5 Dec 1995 11:30:01 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id LAA10194 
          for <dbi-users@fugue.com>; Tue, 5 Dec 1995 11:29:57 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ag04534;
          5 Dec 95 18:45 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ab01236;
          5 Dec 95 18:43 GMT
Received: from toad by oink with SMTP (PP) id <03621-0@oink>;
          Tue, 5 Dec 1995 18:22:47 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA01902;
          Tue, 5 Dec 1995 18:22:19 +0000
Date: Tue, 5 Dec 1995 18:22:19 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512051822.AA01902@toad.ig.co.uk>
To: Chris_Wolcott@ccmail.va.grci.com
Subject: ORAPERL, Sorry to bother you directly
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 2456
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Tue, 5 Dec 95 18:43:37 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Tue, 5 Dec 95 18:45:40 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 5 Dec 95 22:22:05 GMT]

Forwarded to the dbi-users list.

----- Begin Included Message -----

From Chris_Wolcott@ccmail.va.grci.com  Fri Nov 17 16:19:06 1995
Date: Fri, 17 Nov 95 11:04:58 EST
From: Chris Wolcott <Chris_Wolcott@ccmail.va.grci.com>
To: tim.bunce@ig.co.uk
Return-Receipt-To: Chris_Wolcott@ccmail.va.grci.com
Subject: ORAPERL, Sorry to bother you directly

     Question about ORAPERL and LONG RAW types.
     
     PERL    Version 4.0.1.8 Patch 36
     ORAPERL Version 2.004
     ORACLE  Server Version 7.1.3
     SYSTEM  SCO Unix and DEC Alpha
     
     I posted an article on COMP.DATABASES.ORACLE and COMP.LANG.PERL about 
     this very question and received a lot of responses that stated when I 
     found the answer could I forward it to them.  I have kept all the 
     hungry animals emails in preparation for an answer but none every 
     came, so I am now asking you directly in hopes that my requirement and 
     everyone elses appetite can be satisfied.
     
     ** QUESTION **
     --------------
     
     Do you have any simple examples on inserting and selecting information 
     from ORACLE with column types of LONG RAW?
     
     Specifically I wish to put a word document into the column.  We have 
     done this through PRO C but have not had success with ORAPERL.  One of 
     my room mates is getting something like "datatypes inconsistant" when 
     trying to fetch and I seem to hang when trying to insert.
     
     ** SAMPLE INSERT CODE BEING USED **
     -----------------------------------
     
     #!/usr/bin/oraperl
     
     $lda = &ora_login ($DB, $USER, $PASS) || die "$ora_errstr\n";
     
     #------------------------------------------------------------ 
     $ora_long = 32000;
     undef $/;
     open (longfile, "./facsend.doc");
     binmode longfile;                   # Not need since on UNIX $data = 
     <longfile>;
     $/ = "\n";
     
     close (longfile);
     
     $SQL "insert into TEMP_LONG_RAW values (1005, '$data')"; #$SQL "insert 
     into TEMP_LONG_RAW values (1005, $data)";
     
     &ora_do($lda, $SQL) || die "$ora_errstr\n";
     
     #------------------------------------------------------------- 
     &ora_logoff($lda);
     
     exit;
     
     
     Again sorry to bother you directly, but any help would be appreciated 
     and passed on to others. Thanks.
     
     Chris Wolcott (cwolcott@grci.com)  (703) 506-5422   (www.grci.com)


----- End Included Message -----

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05112-73@oink>;
          Wed, 6 Dec 1995 07:11:01 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818219349:05978:0; Wed, 06 Dec 95 03:09:09 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa05937;
          6 Dec 95 3:09 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA11194 for dbi-users-real; Tue, 5 Dec 1995 17:36:11 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from motgate.mot.com (motgate.mot.com [129.188.136.100]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id RAA11190 
          for <dbi-users@fugue.com>; Tue, 5 Dec 1995 17:36:05 -0800
Received: from pobox.mot.com (pobox.mot.com [129.188.137.100]) 
          by motgate.mot.com (8.7.1/8.6.10/MOT-3.8) with ESMTP id TAA24546 
          for <dbi-users@fugue.com>; Tue, 5 Dec 1995 19:38:10 -0600 (CST)
Received: from po_box.cig.mot.com (po_box.cig.mot.com [136.182.15.5]) 
          by pobox.mot.com (8.7.1/8.6.10/MOT-3.8) with SMTP id TAA17263 
          for <dbi-users@fugue.com>; Tue, 5 Dec 1995 19:38:09 -0600 (CST)
Message-Id: <199512060138.UAA23687@po_box.cig.mot.com>
Received: (chinay@localhost) by booboo.cig.mot.com (8.6.9/SCERG-1.12B) 
          id TAA02533 for dbi-users@fugue.com; Tue, 5 Dec 1995 19:38:08 -0600
From: Albert Chin-A-Young <chinay@cig.mot.com>
Subject: problems with DBI-Oracle-0.27
To: dbi-users@fugue.com
Date: Tue, 5 Dec 1995 19:38:08 -0600 (CST)
X-Mailer: ELM [version 2.4 PL24]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 6 Dec 95 3:09:08 GMT]

When running the test supplied with DBI-Oracle-0.27 with perl-5.001n on
a Motorola SVR4 box, I get the following error:

        PERL_DL_NONLAZY=1 /usr/misc/bin/perl5 -I./blib/m88k-svr4 -I./blib
	-I/usr/misc/perl5/lib/m88k-svr4 -I/usr/misc/perl5/lib -e
	'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests
	@ARGV;' t/*.t
	t/base..............install_driver(Oracle) failed: Can't load
	'./blib/m88k-svr4/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle:
	dynamic linker: /usr/misc/bin/perl5: relocation error: symbol not
	found: oerhms at /usr/misc/perl5/lib/DynaLoader.pm line 136.

	 at blib/DBD/Oracle.pm line 18
	 at /usr/misc/perl5/lib/DBI.pm line 180
	        DBI::install_driver called at t/base.t line 16
	FAILED on test 4
	t/main..............ok
	Failed 1 test, 50.00% okay.

-- 
albert chin (its service team 2)
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <12147-9@oink>;
          Wed, 6 Dec 1995 20:40:56 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818276580:26818:0; Wed, 06 Dec 95 19:03:00 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa26744;
          6 Dec 95 19:02 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA14314 for dbi-users-real; Wed, 6 Dec 1995 07:49:11 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from torga.ci.uminho.pt (torga.ci.uminho.pt [193.136.16.251]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA14310 
          for <dbi-users@fugue.com>; Wed, 6 Dec 1995 07:48:47 -0800
Received: from pessoa by torga.ci.uminho.pt (5.4R3.10/140.2) id AA06134;
          Wed, 6 Dec 1995 16:47:05 -0500
Received: from athena by pessoa.ci.uminho.pt (5.4R3.10/140.2) id AA24019;
          Wed, 6 Dec 1995 16:45:16 +0100
Received: from athena (localhost) by athena.ci.uminho.pt (5.0/SMI-SVR4) 
          id AA20270; Wed, 6 Dec 1995 16:48:21 +0100
Message-Id: <9512061548.AA20270@athena.ci.uminho.pt>
Date: Wed, 06 Dec 95 16:48:21 0100
From: Luis Gaspar <si10881@ci.uminho.pt>
Organization: Universidade do Minho
X-Mailer: Mozilla 1.12 (X11; I; SunOS 5.3 sun4d)
Mime-Version: 1.0
To: dbi-users@fugue.com
Subject: Sockets
X-Url: http://www.hermetica.com/technologia/DBI/
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=us-ascii
Content-Length: 209
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 6 Dec 95 19:02:54 GMT]

I'am having troubles with sockets, to implement a client-server aplication. Can
anyone show me some examples or related code that might help me.

			Thanks,

			Luis Gaspar
			University of Minho - Portugal


---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12168-9@oink>;
          Wed, 6 Dec 1995 20:41:24 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818276399:13125:0; Wed, 06 Dec 95 18:59:59 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa13115;
          6 Dec 95 18:59 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa03928;
          6 Dec 95 18:59 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA14308 for dbi-users-real; Wed, 6 Dec 1995 07:48:15 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from borcore.usbr.gov (borcore.usbr.gov [140.215.19.5]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA14304 
          for <dbi-users@fugue.com>; Wed, 6 Dec 1995 07:48:11 -0800
Received: from MTREVINO (matrevino.do.usbr.gov) 
          by borcore.usbr.gov (4.1/SMI-4.1) id AA12616;
          Wed, 6 Dec 95 08:48:05 MST
Message-Id: <9512061548.AA12616@borcore.usbr.gov>
Date: Wed, 06 Dec 95 08:48:06 -0700
From: "Mark A. Trevino" <matrevino@do.usbr.gov>
Organization: U.S. Bureau of Reclamation
X-Mailer: Mozilla 1.2N (Windows; I; 16bit)
Mime-Version: 1.0
To: dbi-users@fugue.com
Subject: (no subject)
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=us-ascii
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 6 Dec 95 18:59:26 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Wed, 6 Dec 95 18:59:58 GMT]

subscribe




---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <13009-2@oink>;
          Wed, 6 Dec 1995 21:22:58 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818284904:18385:0; Wed, 06 Dec 95 21:21:44 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa18276;
          6 Dec 95 21:21 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA14766 for dbi-users-real; Wed, 6 Dec 1995 10:45:54 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id KAA14762 
          for <dbi-users@fugue.com>; Wed, 6 Dec 1995 10:45:36 -0800
Received: by relay-4.mail.demon.net id msg.aa09826; 6 Dec 95 18:42 GMT
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ag22961;
          6 Dec 95 17:14 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ac19784;
          6 Dec 95 17:11 GMT
Received: from toad by oink with SMTP (PP) id <11186-0@oink>;
          Wed, 6 Dec 1995 17:05:24 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA05389;
          Wed, 6 Dec 1995 17:04:55 +0000
Date: Wed, 6 Dec 1995 17:04:55 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512061704.AA05389@toad.ig.co.uk>
To: dedlow@voro.lbl.gov
Subject: Re: DBI/Oracle speed problems
Cc: dbi-users@fugue.com, phj@pilot.njin.net
X-Sun-Charset: US-ASCII
content-length: 1442
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Wed, 6 Dec 95 17:11:03 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Wed, 6 Dec 95 17:14:08 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 6 Dec 95 21:21:42 GMT]


> From: Mark Dedlow <dedlow@voro.lbl.gov>
> 
> For what it's worth, I tried a few tests to compare startup times.  
> I compared DBI to SQLPLUS on, and between, 2 systems.  The results are
> all good in my opinion, but some interesting.
> 
> Client:  Sparc10     80MB  Solaris 2.4  Oracle 7.2.2
> Server:  Sparc1000  704MB  Solaris 2.4  Oracle 7.1.6
> 
> These are avg times (seconds) of 10 tests each.
> 
> Exec on    connect to              DBI     SQLPLUS
> -------    ---------------------  ------  ---------
> Client     client db               1.1         0.7 
> Client     client db via sqlnet    1.1         0.7
> Client     server db               1.4         0.8
> Server     server db               2.2         0.7
> Server     server db via sqlnet    2.0         0.8
> 
> The things that are interesting to me are:
> 
>   1) My Sparc10 is twice as fast as my Sparc1000, for DBI, but
>      no difference with SQLPLUS.
>   2) No slower to a remote database than to a local one (thru 2 routers)
>   3) No slower going via sqlnet than going via IPC on a local database.

Strange.

To get a more complete picture you'd need to run an empty test.
E.g., just connect/disconnect in perl and an empty file for sqlplus.
The difference then gives you the prepare/execute/fetch speed.

For full marks you could also try:

	$dbh->prepare($query, { ora_parse_defer => 1 });

but I doubt it'll make a measurable difference on one query.

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <13546-7@oink>;
          Wed, 6 Dec 1995 23:19:26 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818291598:20398:0; Wed, 06 Dec 95 23:13:18 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id aa20113;
          6 Dec 95 23:13 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Wed, 6 Dec 1995 23:11:24 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA15073 for dbi-users-real; Wed, 6 Dec 1995 12:56:21 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA15069;
          Wed, 6 Dec 1995 12:56:18 -0800
Received: by gw.home.vix.com id AA00500; Wed, 6 Dec 95 12:56:07 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-4.mail.demon.net id g.af15601;
          6 Dec 95 20:48 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id g.af17767;
          6 Dec 95 20:47 GMT
Received: from toad by oink with SMTP (PP) id <12111-0@oink>;
          Wed, 6 Dec 1995 20:38:18 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA06012;
          Wed, 6 Dec 1995 20:37:51 +0000
Date: Wed, 6 Dec 1995 20:37:51 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512062037.AA06012@toad.ig.co.uk>
To: descarte@hermetica.com, dedlow@voro.lbl.gov
Subject: Re: Can't see the woods.....$DBI::errstr woes....
Cc: dbi-users@fugue.com, dbi-dev@fugue.com
X-Sun-Charset: US-ASCII
Content-Length: 1748
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-Smtp-Posting-Host: ignite.demon.co.uk [Wed, 6 Dec 95 20:47:12 GMT]
X-Smtp-Posting-Host: post.demon.co.uk [Wed, 6 Dec 95 20:48:47 GMT]
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Wed, 6 Dec 95 23:13:16 GMT]


> From: Mark Dedlow <dedlow@voro.lbl.gov>
> 
> Same DBI/DBD::Oracle versions (Solaris 2.4), I get:
> 
> Database handle DBI::db=HASH(0x196e00) DESTROY ignored - never set up at 
> ./testDBI.pl line 7.
> Abort (core dumped)
> 
> if the user/pass is garbage.  It works if user/pass OK...

Here are a couple of patches (sorry they're straight diffs but I'm using
rcsdiff and I've no time to fiddle).

The fist fixes the warning and should be applied to Oracle.xs
(and all the other DBD *.xs files - take note developers).

diff -r1.36 Oracle.xs
131c131
<       if (DBIc_WARN(imp_dbh) && !dirty)
---
>       if (DBIc_WARN(imp_dbh) && !dirty && dbis->debug >= 2)
299c299
<       if (DBIc_WARN(imp_sth) && !dirty)
---
>       if (DBIc_WARN(imp_sth) && !dirty && dbis->debug >= 2)


The second is a patch to DBI-0.65 which _may_ fix the core dump:

diff -r1.49 DBI.xs
1146d1145
<     SV *lhp = DBI_LAST_HANDLE;
1147a1147
>     imp_xxh_t *imp_xxh = (ok) ? DBIh_COM(DBI_LAST_HANDLE) : NULL;
1149,1155c1149,1157
<     D_imp_xxh(DBI_LAST_HANDLE);
< 
<     if (dbis->debug >= 2 || DBIc_DEBUGIV(imp_xxh) >= 2) {
<       SvROK_on(DBI_LAST_HANDLE);
<       fprintf(DBILOGFP,"    <> $DBI::%s (%c) FETCH from lasth=%s\n",
<               meth, type, (ok)?SvPV(lhp,na):"none");
<       SvROK_off(DBI_LAST_HANDLE);
---
>     if (dbis->debug >= 2 || (ok && DBIc_DEBUGIV(imp_xxh) >= 2)) {
>       fprintf(DBILOGFP,"    <> $DBI::%s (%c) FETCH from lasth=", meth, type);
>       if (ok) {
>           SvROK_on(DBI_LAST_HANDLE);
>           fprintf(DBILOGFP,"%s\n", SvPV(DBI_LAST_HANDLE,na));
>           SvROK_off(DBI_LAST_HANDLE);
>       } else {
>           fprintf(DBILOGFP,"none\n");
>       }
1213c1216
<     ST(0) = lhp;
---
>     ST(0) = DBI_LAST_HANDLE;


Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13544-11@oink>;
          Wed, 6 Dec 1995 23:19:43 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818291360:11736:0; Wed, 06 Dec 95 23:09:20 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa11722;
          6 Dec 95 23:09 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id msg.aa28305;
          6 Dec 95 23:08 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA15080 for dbi-dev-real; Wed, 6 Dec 1995 12:58:48 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA15069;
          Wed, 6 Dec 1995 12:56:18 -0800
Received: by gw.home.vix.com id AA00500; Wed, 6 Dec 95 12:56:07 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-4.mail.demon.net id g.af15601;
          6 Dec 95 20:48 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id g.af17767;
          6 Dec 95 20:47 GMT
Received: from toad by oink with SMTP (PP) id <12111-0@oink>;
          Wed, 6 Dec 1995 20:38:18 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA06012;
          Wed, 6 Dec 1995 20:37:51 +0000
Date: Wed, 6 Dec 1995 20:37:51 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512062037.AA06012@toad.ig.co.uk>
To: descarte@hermetica.com, dedlow@voro.lbl.gov
Subject: Re: Can't see the woods.....$DBI::errstr woes....
Cc: dbi-users@fugue.com, dbi-dev@fugue.com
X-Sun-Charset: US-ASCII
Content-Length: 1748
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-Smtp-Posting-Host: ignite.demon.co.uk [Wed, 6 Dec 95 20:47:12 GMT]
X-Smtp-Posting-Host: post.demon.co.uk [Wed, 6 Dec 95 20:48:47 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 6 Dec 95 23:08:39 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Wed, 6 Dec 95 23:09:19 GMT]


> From: Mark Dedlow <dedlow@voro.lbl.gov>
> 
> Same DBI/DBD::Oracle versions (Solaris 2.4), I get:
> 
> Database handle DBI::db=HASH(0x196e00) DESTROY ignored - never set up at 
> ./testDBI.pl line 7.
> Abort (core dumped)
> 
> if the user/pass is garbage.  It works if user/pass OK...

Here are a couple of patches (sorry they're straight diffs but I'm using
rcsdiff and I've no time to fiddle).

The fist fixes the warning and should be applied to Oracle.xs
(and all the other DBD *.xs files - take note developers).

diff -r1.36 Oracle.xs
131c131
<       if (DBIc_WARN(imp_dbh) && !dirty)
---
>       if (DBIc_WARN(imp_dbh) && !dirty && dbis->debug >= 2)
299c299
<       if (DBIc_WARN(imp_sth) && !dirty)
---
>       if (DBIc_WARN(imp_sth) && !dirty && dbis->debug >= 2)


The second is a patch to DBI-0.65 which _may_ fix the core dump:

diff -r1.49 DBI.xs
1146d1145
<     SV *lhp = DBI_LAST_HANDLE;
1147a1147
>     imp_xxh_t *imp_xxh = (ok) ? DBIh_COM(DBI_LAST_HANDLE) : NULL;
1149,1155c1149,1157
<     D_imp_xxh(DBI_LAST_HANDLE);
< 
<     if (dbis->debug >= 2 || DBIc_DEBUGIV(imp_xxh) >= 2) {
<       SvROK_on(DBI_LAST_HANDLE);
<       fprintf(DBILOGFP,"    <> $DBI::%s (%c) FETCH from lasth=%s\n",
<               meth, type, (ok)?SvPV(lhp,na):"none");
<       SvROK_off(DBI_LAST_HANDLE);
---
>     if (dbis->debug >= 2 || (ok && DBIc_DEBUGIV(imp_xxh) >= 2)) {
>       fprintf(DBILOGFP,"    <> $DBI::%s (%c) FETCH from lasth=", meth, type);
>       if (ok) {
>           SvROK_on(DBI_LAST_HANDLE);
>           fprintf(DBILOGFP,"%s\n", SvPV(DBI_LAST_HANDLE,na));
>           SvROK_off(DBI_LAST_HANDLE);
>       } else {
>           fprintf(DBILOGFP,"none\n");
>       }
1213c1216
<     ST(0) = lhp;
---
>     ST(0) = DBI_LAST_HANDLE;


Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15171-7@oink>;
          Thu, 7 Dec 1995 03:00:12 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818295851:21889:0; Thu, 07 Dec 95 00:24:11 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ab21848;
          7 Dec 95 0:24 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Wed, 6 Dec 1995 23:17:29 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA15060 for dbi-users-real; Wed, 6 Dec 1995 12:54:46 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id MAA15056 
          for <dbi-users@fugue.com>; Wed, 6 Dec 1995 12:54:39 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id g.ac15711;
          6 Dec 95 20:48 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id msg.ac17767;
          6 Dec 95 20:46 GMT
Received: from toad by oink with SMTP (PP) id <11674-0@oink>;
          Wed, 6 Dec 1995 18:36:31 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA05862;
          Wed, 6 Dec 1995 18:36:05 +0000
Date: Wed, 6 Dec 1995 18:36:05 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512061836.AA05862@toad.ig.co.uk>
To: dbi-users@fugue.com, mthurn@stowe.irnet.rest.tasc.com
Subject: Re: cannot build DBI 0.65 on SunOS
Cc: thurn@cis.ohio-state.edu
X-Sun-Charset: US-ASCII
content-length: 1235
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Wed, 6 Dec 95 20:46:58 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Wed, 6 Dec 95 20:48:38 GMT]
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Thu, 7 Dec 95 0:24:11 GMT]


> From: mthurn@stowe.irnet.rest.tasc.com (Martin Thurn)
> 
> Thanks to those who pointed me to the latest version 0.65 of DBI.
> However, I get exactly the same error when I try to make it:
> ==========
> 
> /usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 -e 'use Test::Harness qw(&runtests $verbose); $verbose=1; runtests @ARGV;' t/*.t
> t/min...............1..11
> ok 1
> ok 2
> ok 3
> ok 4
> FAILED on test 5
> Failed 1 test, 0.00% okay.
> Files=1,  Tests=11,  1 secs ( 0.35 cusr  0.18 csys =  0.53 cpu)
> /usr/local/bin/perl -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/fs81/TIR/lib/perl5/DBI-0.65/blib -I/usr/local/lib/perl5/sun4-sunos -I/usr/local/lib/perl5 test.pl
> test.pl 
> DBI test application $Revision: 1.12 $
> make: *** [test] Segmentation fault (core dumped)

This problem only seems to affect very few people. The vast majority build
the DBI with no problem. The fact you're using gcc on a sun just compounds
the puzzle. I'd like to get to the bottom of this.

If you're GCC is earlier than 2.5.8 then I'd recommend that you upgrade.

I'll need a stack trace from a DBI built with -g before I can help you further.

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <15169-12@oink>;
          Thu, 7 Dec 1995 03:00:42 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818299766:00710:0; Thu, 07 Dec 95 01:29:26 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa00611;
          7 Dec 95 1:29 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA15672 for dbi-users-real; Wed, 6 Dec 1995 15:41:13 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA15667 
          for <dbi-users@fugue.com>; Wed, 6 Dec 1995 15:41:10 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.aj14827;
          6 Dec 95 23:20 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id msg.ab24247;
          6 Dec 95 23:18 GMT
Received: from toad by oink with SMTP (PP) id <13362-0@oink>;
          Wed, 6 Dec 1995 22:00:29 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA06272;
          Wed, 6 Dec 1995 22:00:04 +0000
Date: Wed, 6 Dec 1995 22:00:04 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512062200.AA06272@toad.ig.co.uk>
To: dbi-users@fugue.com, chinay@cig.mot.com
Subject: Re: problems with DBI-Oracle-0.27
X-Sun-Charset: US-ASCII
content-length: 790
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Wed, 6 Dec 95 23:18:19 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Wed, 6 Dec 95 23:20:22 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 7 Dec 95 1:29:18 GMT]


> From: Albert Chin-A-Young <chinay@cig.mot.com>
> 
> When running the test supplied with DBI-Oracle-0.27 with perl-5.001n on
> a Motorola SVR4 box, I get the following error:
> 
>         PERL_DL_NONLAZY=1 /usr/misc/bin/perl5 -I./blib/m88k-svr4 -I./blib
> 	-I/usr/misc/perl5/lib/m88k-svr4 -I/usr/misc/perl5/lib -e
> 	'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests
> 	@ARGV;' t/*.t
> 	t/base..............install_driver(Oracle) failed: Can't load
> 	'./blib/m88k-svr4/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle:
> 	dynamic linker: /usr/misc/bin/perl5: relocation error: symbol not
> 	found: oerhms at /usr/misc/perl5/lib/DynaLoader.pm line 136.

No idea.

Did it work on a previous release of perl and/or DBD::Oracle ?

Does it work for anyone else on SVR4 ?

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15171-43@oink>;
          Thu, 7 Dec 1995 03:02:51 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818298977:20038:0; Thu, 07 Dec 95 01:16:17 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa20014;
          7 Dec 95 1:16 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA15625 for dbi-users-real; Wed, 6 Dec 1995 15:22:55 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA15621 
          for <dbi-users@fugue.com>; Wed, 6 Dec 1995 15:22:30 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id g.ac15499;
          6 Dec 95 23:20 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ad24247;
          6 Dec 95 23:18 GMT
Received: from toad by oink with SMTP (PP) id <13402-0@oink>;
          Wed, 6 Dec 1995 22:19:02 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA06297;
          Wed, 6 Dec 1995 22:18:37 +0000
Date: Wed, 6 Dec 1995 22:18:37 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512062218.AA06297@toad.ig.co.uk>
To: aburlison@cix.compulink.co.uk
Subject: Re: Problems building Oracle DBD v0.27 on Unisys U6000 svr4
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 1014
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Wed, 6 Dec 95 23:18:25 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Wed, 6 Dec 95 23:20:19 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 7 Dec 95 1:16:17 GMT]


> From: aburlison@cix.compulink.co.uk (Alan Burlison)
> 
> Hi all,
> 
> Somehow I seem to have 'fallen off' the PerlDB mailing list - hopefully 
> I've now resubscribed (thought it had gone quiet...)
> 
> I have just got around to updating to 5.002beta1, DBI 0.65 and Oracle DBD 
> 0.27, and had a few problems building.  The build itself worked fine, but 
> 'make test' failed, with the following output:
> 
> Can't load './blib/PENTIUM-svr4.0/auto/DBD/Oracle/Oracle.so' for module 
> DBD::Oracle: dynamic linker: /usr/bin/perl: relocation error: symbol not 
> found: vfork at /opt/lib/perl5/DynaLoader.pm line 136.
>
> This is (I think) caused by incorrect processing by MakeMaker.  MakeMaker 
> has moved to using $self instead of %att for specifying config options 
> and hints.  Unfortunately, the old mechanism seems to have been broken in 
> the process.  The folowing patches put things right in DBD:

Thanks. I won't apply that utill 5.002 is out and then I'll add a
require 5.002; to Makefile.PL.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15171-49@oink>;
          Thu, 7 Dec 1995 03:03:18 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818300666:03977:0; Thu, 07 Dec 95 01:44:26 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa03903;
          7 Dec 95 1:44 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA15776 for dbi-users-real; Wed, 6 Dec 1995 16:07:16 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id QAA15772 
          for <dbi-users@fugue.com>; Wed, 6 Dec 1995 16:07:14 -0800
Received: by gw.home.vix.com id AA17141; Wed, 6 Dec 95 16:07:07 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ai21516;
          6 Dec 95 23:27 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa26076;
          6 Dec 95 23:26 GMT
Received: from toad by oink with SMTP (PP) id <13939-0@oink>;
          Wed, 6 Dec 1995 23:25:44 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA06479;
          Wed, 6 Dec 1995 23:25:19 +0000
Date: Wed, 6 Dec 1995 23:25:19 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512062325.AA06479@toad.ig.co.uk>
To: groenvel@cse.psu.edu
Subject: Re: DBD-Oracle-0.27 blob_read
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
Content-Length: 245
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-Smtp-Posting-Host: ignite.demon.co.uk [Wed, 6 Dec 95 23:26:02 GMT]
X-Smtp-Posting-Host: post.demon.co.uk [Wed, 6 Dec 95 23:27:49 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 7 Dec 95 1:44:21 GMT]


> From: John D Groenveld <groenvel@cse.psu.edu>
> 
> &ora_readblob references readblob and not blob_read. The pod should include an
> example of long and long raw DML ops.
> Thanks,
> John
> groenvel@cse.psu.edu

Ooops.

Patches welcome.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <16975-3@oink>;
          Thu, 7 Dec 1995 06:08:17 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818309817:06639:0; Thu, 07 Dec 95 04:16:57 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa06619;
          7 Dec 95 4:16 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA16236 for dbi-users-real; Wed, 6 Dec 1995 18:38:34 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from chan.crim.ca (chan.crim.ca [132.218.1.4]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id SAA16232 
          for <dbi-users@fugue.com>; Wed, 6 Dec 1995 18:38:31 -0800
Received: from zorro.crim.ca by chan.crim.ca (4.1/SMI-4.1) id AA06224;
          Wed, 6 Dec 95 21:38:31 EST
Received: by zorro.crim.ca (5.0/SMI-SVR4) id AA02471;
          Wed, 6 Dec 1995 21:38:37 +0500
Date: Wed, 6 Dec 1995 21:38:37 +0500
From: maparent@zorro.crim.ca (Marc-Antoine Parent)
Message-Id: <9512070238.AA02471@zorro.crim.ca>
To: dbi-users@fugue.com
Subject: return values from Oracle stored functions?
X-Sun-Charset: US-ASCII
Content-Length: 596
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 7 Dec 95 4:16:56 GMT]

I hope this is not the umpteenth time this question comes on this group, but
I did not find a faq.
I saw a thread ('I know I'm cheating...') regarding oraperl4, but I hope things
are different with DBD/DBI.

Is it possible to get (somehow!) the return value from a stored function?
Or at least get the IN/OUT parmeters to return me something?
(I tried that and got a hang for 1 min, followed by a 'connection cut' message.)


Otherwise, my installation tested fine.
(DBI .64 and DBD-Oracle .26 on a Solaris 2.3. Will upgrading help?)

I will do without if need be, but I would appreciate a hint!
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <18351-0@oink>;
          Thu, 7 Dec 1995 08:31:47 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818324397:02752:0; Thu, 07 Dec 95 08:19:57 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa02732;
          7 Dec 95 8:19 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id WAA16634 for dbi-users-real; Wed, 6 Dec 1995 22:18:12 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id WAA16630 
          for <dbi-users@fugue.com>; Wed, 6 Dec 1995 22:18:07 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ac21787;
          7 Dec 95 6:17 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa05135;
          7 Dec 95 6:15 GMT
Received: from toad by oink with SMTP (PP) id <17167-0@oink>;
          Thu, 7 Dec 1995 06:15:41 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA07023;
          Thu, 7 Dec 1995 06:15:15 +0000
Date: Thu, 7 Dec 1995 06:15:15 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512070615.AA07023@toad.ig.co.uk>
To: dbi-users@fugue.com, maparent@zorro.crim.ca
Subject: Re: return values from Oracle stored functions?
X-Sun-Charset: US-ASCII
content-length: 971
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Thu, 7 Dec 95 6:15:59 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Thu, 7 Dec 95 6:17:57 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 7 Dec 95 8:19:56 GMT]


> From: maparent@zorro.crim.ca (Marc-Antoine Parent)
> 
> I hope this is not the umpteenth time this question comes on this group, but
> I did not find a faq.
> I saw a thread ('I know I'm cheating...') regarding oraperl4, but I hope things
> are different with DBD/DBI.
> 
> Is it possible to get (somehow!) the return value from a stored function?

Not currently.

> Or at least get the IN/OUT parmeters to return me something?

Not currently.

> (I tried that and got a hang for 1 min, followed by a 'connection cut' message.)
> 
> Otherwise, my installation tested fine.
> (DBI .64 and DBD-Oracle .26 on a Solaris 2.3. Will upgrading help?)

Nope.

> I will do without if need be, but I would appreciate a hint!

It is patchable but is raises some nasty issues about efficiency
(you'd have to copy-back the value to perl all the time even when not
required since you can't tell what's an output parameter)

It will get supported - somehow. It's too important.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05536-9@oink>;
          Fri, 8 Dec 1995 00:09:37 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818366802:04528:0; Thu, 07 Dec 95 20:06:42 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa04523;
          7 Dec 95 20:06 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id msg.aa18500;
          7 Dec 95 20:05 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA18869 for dbi-users-real; Thu, 7 Dec 1995 09:20:45 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from chan.crim.ca (chan.crim.ca [132.218.1.4]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id JAA18865 
          for <dbi-users@fugue.com>; Thu, 7 Dec 1995 09:20:43 -0800
Received: from zorro.crim.ca by chan.crim.ca (4.1/SMI-4.1) id AA14762;
          Thu, 7 Dec 95 12:20:42 EST
Received: by zorro.crim.ca (5.0/SMI-SVR4) id AA05526;
          Thu, 7 Dec 1995 12:20:51 +0500
Date: Thu, 7 Dec 1995 12:20:51 +0500
From: Marc-Antoine Parent <maparent@zorro.crim.ca>
Message-Id: <9512071720.AA05526@zorro.crim.ca>
To: Tim.Bunce@ig.co.uk
Subject: Re: return values from Oracle stored functions?
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
Content-Length: 1555
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 7 Dec 95 20:05:50 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Thu, 7 Dec 95 20:06:41 GMT]

First, thank you for a VERY prompt answer!

> > Is it possible to get (somehow!) the return value from a stored function?
> 
> Not currently.
> 
> > Or at least get the IN/OUT parmeters to return me something?
> 
> Not currently.
> It is patchable but is raises some nasty issues about efficiency
> (you'd have to copy-back the value to perl all the time even when not
> required since you can't tell what's an output parameter)
> 
> It will get supported - somehow. It's too important.
> 
> Tim.
> 

I note that last comment applies to IN/OUT parameters, but not to functions.
Is that not much less of a patch? (with little or no performance overhead)

I'm thinking of a construct of the type:

    my($csr) = $lda->prepare( << ) || die "drh->do: $DBI::err: $DBI::errstr\n";
    BEGIN
   	:1 := somefunction('sdhasfdjh');
    END;

# somefunctions RETURNs a VARCHAR2

    $returnValue = "aaaaa";

    @result = $csr->execute($returnValue);

Or even more simply:

     @result = $lda->evalStringFunction("somefunction('sdhasfdjh')")
	 || die "drh->do: $DBI::err: $DBI::errstr\n";

(Which, of course, alters DBI, but probably in a reasonable way, as getting
a string value from a function SHOULD be "universal" enough...)

Of course, another possibility would be to somewhat have two arrays passed to
"execute", one for IN parameters and the other for OUT (and another for IN/OUT?)
but that rings too database-specific to my ears.

Do you see other ways to solve that problem? 
(is this group the right place to discuss this, or maybe the implementors'?)

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <20857-3@oink>;
          Mon, 11 Dec 1995 07:06:43 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818448328:26880:4; Fri, 08 Dec 95 18:45:28 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa26248;
          8 Dec 95 18:44 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA22258 for dbi-users-real; Fri, 8 Dec 1995 07:35:38 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA22254 
          for <dbi-users@fugue.com>; Fri, 8 Dec 1995 07:35:35 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id g.ag03836;
          8 Dec 95 15:26 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id msg.aa14138;
          8 Dec 95 15:25 GMT
Received: from toad by oink with SMTP (PP) id <10888-0@oink>;
          Fri, 8 Dec 1995 15:25:00 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA07754;
          Fri, 8 Dec 1995 15:24:34 +0000
Date: Fri, 8 Dec 1995 15:24:34 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512081524.AA07754@toad.ig.co.uk>
To: mthurn@stowe.irnet.rest.tasc.com
Subject: Re: cannot build DBI 0.65 on SunOS
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 320
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Fri, 8 Dec 95 15:25:56 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Fri, 8 Dec 95 15:26:43 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Fri, 8 Dec 95 18:44:56 GMT]


> From: mthurn@irnet.rest.tasc.com (Martin Thurn)
> 
> > > FAILED on test 5
> > > DBI test application $Revision: 1.12 $
> > > make: *** [test] Segmentation fault (core dumped)
> 
>   We upgraded to the newest perl 5.002(?) and now it works fine!

Wonderful news. Thanks. I hope that's the end of the core dumps.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <20858-5@oink>;
          Mon, 11 Dec 1995 07:07:07 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818447059:02419:0; Fri, 08 Dec 95 18:24:19 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa02414;
          8 Dec 95 18:24 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa06027;
          8 Dec 95 18:24 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA22217 for dbi-users-real; Fri, 8 Dec 1995 07:22:48 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mail.crl.com (mail.crl.com [165.113.1.22]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA22213 
          for <dbi-users@fugue.com>; Fri, 8 Dec 1995 07:22:47 -0800
Received: from [205.149.164.116] (bta.vip.best.com) by mail.crl.com with SMTP 
          id AA19294 (5.65c/IDA-1.5 for <dbi-users@fugue.com>);
          Fri, 8 Dec 1995 07:20:27 -0800
Date: Fri, 8 Dec 1995 07:20:27 -0800
X-Sender: mrlizard@mail.crl.com
Message-Id: <aced9c0707021004ab48@[205.149.164.116]>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
To: dbi-users@fugue.com
From: Brian Valente <mrlizard@crl.com>
Subject: Installing DBI/Driver locally
X-SMTP-Posting-Host: toccata.fugue.com [Fri, 8 Dec 95 18:24:06 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Fri, 8 Dec 95 18:24:18 GMT]

Hello all,

How best to install DBD in a local directory?  I can't install it in the
usual perl library directories, and I'm wondering if it's going to break?

Thanks,

Regards,

Brian Valente

======================================================================
Brian Valente                   ||      brian_valente@rmdudley.com
R.M. Dudley Corporation         ||      mrlizard@crl.com
1799 Old Bayshore Suite 200     ||      applelink:RMDUDLEY
Burlingame, CA 94010            ||      http://www.rmdudley.com/rmdudley/
(415) 697-1650   voice          ||
(415) 697-1816   fax            ||


---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <20858-16@oink>;
          Mon, 11 Dec 1995 07:10:47 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818449487:22316:0; Fri, 08 Dec 95 19:04:47 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa22309;
          8 Dec 95 19:04 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id msg.aa08585;
          8 Dec 95 18:50 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA22208 for dbi-users-real; Fri, 8 Dec 1995 07:20:00 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA22204 
          for <dbi-users@fugue.com>; Fri, 8 Dec 1995 07:19:55 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ac03040;
          8 Dec 95 15:17 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ah11866;
          8 Dec 95 15:16 GMT
Received: from toad by oink with SMTP (PP) id <09730-0@oink>;
          Fri, 8 Dec 1995 12:17:03 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA06947;
          Fri, 8 Dec 1995 12:16:36 +0000
Date: Fri, 8 Dec 1995 12:16:36 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512081216.AA06947@toad.ig.co.uk>
To: maparent@zorro.crim.ca
Subject: Re: return values from Oracle stored functions?
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 851
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Fri, 8 Dec 95 15:16:16 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Fri, 8 Dec 95 15:17:25 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Fri, 8 Dec 95 18:50:03 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Fri, 8 Dec 95 19:04:46 GMT]


> From: maparent@zorro.crim.ca (Marc-Antoine Parent)
> 
> First, thank you for a VERY prompt answer!
> 
> > > Is it possible to get (somehow!) the return value from a stored function?
> > 
> > Not currently.
> > 
> > > Or at least get the IN/OUT parmeters to return me something?
> > 
> > Not currently.
> > It is patchable but is raises some nasty issues about efficiency
> > (you'd have to copy-back the value to perl all the time even when not
> > required since you can't tell what's an output parameter)
> > 
> > It will get supported - somehow. It's too important.
> 
> I note that last comment applies to IN/OUT parameters, but not to functions.

I meant both.

> (is this group the right place to discuss this, or maybe the implementors'?)

This is the right group. The dbi-dev group is for developers to discuss
implementation issues.

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <20857-20@oink>;
          Mon, 11 Dec 1995 07:10:57 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818457774:07800:0; Fri, 08 Dec 95 21:22:54 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa07718;
          8 Dec 95 21:22 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA23069 for dbi-dev-real; Fri, 8 Dec 1995 11:47:04 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from paul.spu.edu (Paul.spu.edu [192.190.33.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id LAA23064 
          for <dbi-dev@fugue.com>; Fri, 8 Dec 1995 11:47:01 -0800
Received: by paul.spu.edu; (5.65/1.1.8.2/17Sep95-0400PM) id AA08607;
          Fri, 8 Dec 1995 11:45:31 -0800
Date: Fri, 8 Dec 1995 11:45:29 -0800 (PST)
From: Phil Rand <prand@paul.spu.edu>
To: DBI/DBD developers <dbi-dev@fugue.com>, 
    VMS perl list <vmsperl@HMIVAX.HUMGEN.UPENN.EDU>
Subject: dbi/dbd-oracle port to DEC OpenVMS ?
In-Reply-To: <9512081524.AA07754@toad.ig.co.uk>
Message-Id: <Pine.OSF.3.91.951208111712.3430A-100000@paul.spu.edu>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-SMTP-Posting-Host: toccata.fugue.com [Fri, 8 Dec 95 21:22:48 GMT]

Hi,

Is anybody else already working on porting dbi (perl database interface) to
VMS?  How about DBD-Oracle?

I've just barely gotten started, using perl5_001_950925B.  Actually, I've 
only attempted an installation of dbi, so far.

If nobody else on the dbi-dev list is interested in VMS, I'll do my best to
target future cries for help to one list or the other, whichever seems most
appropriate, as I continue working on this. 

--
-- Phil Rand <prand@spu.edu> aka <postmaster@spu.edu>
-- Computer & Information Systems                  (206) 281-2428
-- Seattle Pacific University, 3307 3rd Ave W, Seattle, WA  98119
-- http://paul.spu.edu/~prand/
--



---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <20858-32@oink>;
          Mon, 11 Dec 1995 07:12:42 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818456417:29442:0; Fri, 08 Dec 95 21:00:17 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa28458;
          8 Dec 95 21:00 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA22862 for dbi-users-real; Fri, 8 Dec 1995 10:26:23 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from sultan.hsii.ccare.com ([192.101.181.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA22858 
          for <dbi-users@fugue.com>; Fri, 8 Dec 1995 10:26:18 -0800
Received: from msgw.hsii.ccare.com by SULTAN.HSII.CCARE.COM (PMDF V5.0-5 #4597) 
          id <01HYKC6MY7UO0000XE@SULTAN.HSII.CCARE.COM> 
          for dbi-users@fugue.com; Fri, 08 Dec 1995 12:25:40 -0600 (CST)
Received: by msgw.hsii.ccare.com with Microsoft Mail 
          id <30C8832A@msgw.hsii.ccare.com>;
          Fri, 08 Dec 1995 12:25:46 -0600 (CST)
Date: Fri, 08 Dec 1995 12:22:00 -0600 (CST)
From: "Li, Alexander" <AlexLi@msmail.hsii.ccare.com>
Subject: HELP building DBI-0.65
To: DBI User List <dbi-users@fugue.com>
Message-id: <30C8832A@msgw.hsii.ccare.com>
X-Mailer: Microsoft Mail V3.0
Content-transfer-encoding: 7BIT
Encoding: 284 TEXT
X-SMTP-Posting-Host: toccata.fugue.com [Fri, 8 Dec 95 21:00:14 GMT]



Dear Perl/DBI experts,

Attached at the end is a problem log when our programmer(I'm the sys. admin)
 try to build DBI-0.65.  This happened only *after* I recompiled perl 5
with dynamic loading.  i.e. The first time was fine.

Our goal is to build a Perl 5 to Oracle 7 interface.  Perl 5 tested fine.


The platform is a Sun Voyager running Solaris 2.4.  Compiler is Sun's
SPARCompiler C v3.0.

I'm relative new to this stuff and probably made a stupid mistake somewhere.

Thanks for you kind help.

 ----------------------------------
Alex Li
Health Systems Integration, Inc.
ali@hsii.ccare.com
work: 612-858-7570
 ----------------------------------
Script started on Fri Dec 08 09:46:13 1995
gh753> perl Makefile.PL



    Build, TEST and INSTALL Perl 5 first. Use version 5.001m or later.



    DO NOT build the DBI under the Perl source tree.



    Use 'make test' to execute self tests.



MakeMaker (v4.16)

Checking if your kit is complete...

Looks good

        NAME => 'DBI'

        VERSION => '0.65'

Using PERL=/usr/local/bin/perl

Writing Makefile for DBI

gh753>

gh753> make

mkdir ./blib

mkdir ./blib/auto

mkdir ./blib/auto/DBI

/usr/local/bin/perl -I/usr/local/lib/perl5/sun4-solaris 
 -I/usr/local/lib/perl5 /usr/local/lib/perl5/ExtUtils/xsubpp -typemap 
/usr/local/lib/perl5/ExtUtils/typemap DBI.xs >DBI.tc && mv DBI.tc DBI.c

cc -c -DDEBUGGING -O  -I/usr/local/lib/perl5/sun4-solaris/CORE   DBI.c

Running Mkbootstrap for DBI ()

chmod 644 DBI.bs

LD_RUN_PATH="" ld -o blib/auto/DBI/DBI.none  DBI.o

Undefined                       first referenced

 symbol                             in file

sv_2iv                              DBI.o

sv_magic                            DBI.o

stack_sp                            DBI.o

markstack_max                       DBI.o

sv_free                             DBI.o

gv_fetchpv                          DBI.o

sv_undef                            DBI.o

av_fetch                            DBI.o

sv_2pv                              DBI.o

newSVpv                             DBI.o

sv_setiv                            DBI.o

mg_find                             DBI.o

__ctype                             DBI.o

gv_fetchmethod                      DBI.o

abort                               DBI.o

hv_fetch                            DBI.o

Xpv                                 DBI.o

sv_catpv                            DBI.o

strerror                            DBI.o

newRV                               DBI.o

newSViv                             DBI.o

newSV                               DBI.o

dirty                               DBI.o

malloc                              DBI.o

sprintf                             DBI.o

perl_destruct_level                 DBI.o

av_store                            DBI.o

newXS                               DBI.o

newSVsv                             DBI.o

runlevel                            DBI.o

sv_no                               DBI.o

sv_bless                            DBI.o

sv_2bool                            DBI.o

gv_stashpv                          DBI.o

Sv                                  DBI.o

hv_store                            DBI.o

fclose                              DBI.o

perl_call_sv                        DBI.o

sv_mortalcopy                       DBI.o

savepv                              DBI.o

sv_setsv                            DBI.o

sv_catpvn                           DBI.o

strncmp                             DBI.o

sv_backoff                          DBI.o

__iob                               DBI.o

dowantarray                         DBI.o

strcat                              DBI.o

warn                                DBI.o

sv_newmortal                        DBI.o

errno                               DBI.o

stack_base                          DBI.o

stack_max                           DBI.o

av_len                              DBI.o

sv_setpv                            DBI.o

sv_2mortal                          DBI.o

strcmp                              DBI.o

fopen                               DBI.o

memset                              DBI.o

croak                               DBI.o

strcpy                              DBI.o

markstack_grow                      DBI.o

stack_grow                          DBI.o

na                                  DBI.o

sv_dump                             DBI.o

markstack_ptr                       DBI.o

op                                  DBI.o

perl_get_sv                         DBI.o

strlen                              DBI.o

perl_call_method                    DBI.o

fprintf                             DBI.o

newAV                               DBI.o

sv_yes                              DBI.o

ld: fatal: Symbol referencing errors. No output written to 
blib/auto/DBI/DBI.none

*** Error code 1

make: Fatal error: Command failed for target `blib/auto/DBI/DBI.none'

gh753>

gh753>

gh753> perl -e ` 'use Config; print Conig  fig::myconif  fig()'

Summary of my perl5 (patchlevel 1) configuration:

  Platform:

    osname=solaris, osver=2.4, archname=sun4-solaris

    uname='sunos gh753 5.4 generic_101945-10 sun4m sparc '

    hint=recommended

  Compiler:

    cc='cc', optimize='-O'

    cppflags='-DDEBUGGING'

    ccflags ='-DDEBUGGING'

    ldflags =''

    stdchar='unsigned char', d_stdstdio=, usevfork=false

    voidflags=15, castflags=0, d_casti32=define, d_castneg=define

    intsize=4, alignbytes=8, usemymalloc=y, randbits=15

  Libraries:

    so=so

    libpth=/lib /usr/lib /usr/ccs/lib

    libs=-lsocket -lnsl -ldl -lm -lc -lcrypt

    libc=/usr/lib/libc.so

  Dynamic Linking:

    dlsrc=dl_none.xs, dlext=none, d_dlsymun=

    cccdlflags='', ccdlflags='', lddlflags=''



gh753>
script done on Fri Dec 08 09:51:39 1995
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <26211-4@oink>;
          Mon, 11 Dec 1995 12:12:20 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818673771:24347:1; Mon, 11 Dec 95 09:22:51 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa24310;
          11 Dec 95 9:22 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id AAA29950 for dbi-users-real; Mon, 11 Dec 1995 00:22:47 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from monge.brunel.ac.uk (pp@monge.brunel.ac.uk [134.83.72.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id AAA29946 
          for <dbi-users@fugue.com>; Mon, 11 Dec 1995 00:22:43 -0800
From: cs92bbm@brunel.ac.uk
Received: from ccsp-14.brunel.ac.uk by monge.brunel.ac.uk with SMTP (PP) 
          id <03166-0@monge.brunel.ac.uk>; Mon, 11 Dec 1995 08:22:37 +0000
Message-Id: <690.9512110822@ccsp-14.brunel.ac.uk>
Subject: Oracle6 and Perl5
To: dbi-users@fugue.com
Date: Mon, 11 Dec 1995 08:22:34 +0000 (GMT)
X-Mailer: ELM [version 2.4 PL24]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
X-SMTP-Posting-Host: toccata.fugue.com [Mon, 11 Dec 95 9:22:49 GMT]

Just wondering whether anyone has had any luck with this combination? Tim
suggested that a DBI hacker could change the calls appropriately... does such a
hacker exist then?

Any help would be appreciated - this is an important one!

Thanks,

Ben.

[ Ben Middleton            cs92bbm@brunel.ac.uk ]
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <26211-11@oink>;
          Mon, 11 Dec 1995 12:12:47 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818678191:03114:0; Mon, 11 Dec 95 10:36:31 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa03108;
          11 Dec 95 10:36 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id msg.aa05967;
          11 Dec 95 10:35 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id BAA00151 for dbi-users-real; Mon, 11 Dec 1995 01:27:37 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay.inferentia.it (dns.inferentia.it [151.99.220.4]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id BAA00147 
          for <dbi-users@fugue.com>; Mon, 11 Dec 1995 01:27:33 -0800
Received: from yquem.inferentia.it (yquem.inferentia.it [194.184.62.17]) 
          by relay.inferentia.it (8.6.12/8.6.12) with SMTP id KAA11720;
          Mon, 11 Dec 1995 10:26:35 +0100
Posted-Date: Mon, 11 Dec 1995 10:26:35 +0100
Received: by yquem.inferentia.it with Microsoft Mail 
          id <01BAC7B4.CBFE6EC0@yquem.inferentia.it>;
          Mon, 11 Dec 1995 10:38:23 +-100
Message-ID: <01BAC7B4.CBFE6EC0@yquem.inferentia.it>
From: Davide Migliavacca <Davide.Migliavacca@inferentia.it>
To: 'Marc-Antoine Parent' <maparent@zorro.crim.ca>
Cc: "'dbi-users@fugue.com'" <dbi-users@fugue.com>
Subject: RE: return values from Oracle stored functions?
Date: Mon, 11 Dec 1995 10:38:22 +-100
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
X-SMTP-Posting-Host: toccata.fugue.com [Mon, 11 Dec 95 10:35:28 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Mon, 11 Dec 95 10:36:30 GMT]

You can use functions like this:
	select function(par,...) from dual
(a normal select statemente, palatable to DBD) IFF you declare your =
function like
	function line (i integer) return varchar2; -- for instance!
	PRAGMA RESTRICT_REFERENCES(line, WNDS, WNPS, RNDS); -- may be less =
strict
Check your Oracle server documentation addendum.
wowperl (ftp://ftp.inferentia.it/pub/perl/dbperl/wowperl.tar) does =
exactly that.
It should be noted that, IF you are desperate enough to write wrappers =
for your store procedures to use dbms_output, you can use wowperl to =
retrieve output from procedures. Not very elegant, though. Just until SP =
find their way in DBD.
	Davide


----------
From: 	Marc-Antoine Parent[SMTP:maparent@zorro.crim.ca]
Sent: 	gioved=EC 7 dicembre 1995 8.20
To: 	Tim.Bunce@ig.co.uk
Cc: 	dbi-users@fugue.com
Subject: 	Re: return values from Oracle stored functions?

First, thank you for a VERY prompt answer!

> > Is it possible to get (somehow!) the return value from a stored =
function?
>=20
> Not currently.
>=20
> > Or at least get the IN/OUT parmeters to return me something?
>=20
> Not currently.
> It is patchable but is raises some nasty issues about efficiency
> (you'd have to copy-back the value to perl all the time even when not
> required since you can't tell what's an output parameter)
>=20
> It will get supported - somehow. It's too important.
>=20
> Tim.
>=20

I note that last comment applies to IN/OUT parameters, but not to =
functions.
Is that not much less of a patch? (with little or no performance =
overhead)

I'm thinking of a construct of the type:

    my($csr) =3D $lda->prepare( << ) || die "drh->do: $DBI::err: =
$DBI::errstr\n";
    BEGIN
   	:1 :=3D somefunction('sdhasfdjh');
    END;

# somefunctions RETURNs a VARCHAR2

    $returnValue =3D "aaaaa";

    @result =3D $csr->execute($returnValue);

Or even more simply:

     @result =3D $lda->evalStringFunction("somefunction('sdhasfdjh')")
	 || die "drh->do: $DBI::err: $DBI::errstr\n";

(Which, of course, alters DBI, but probably in a reasonable way, as =
getting
a string value from a function SHOULD be "universal" enough...)

Of course, another possibility would be to somewhat have two arrays =
passed to
"execute", one for IN parameters and the other for OUT (and another for =
IN/OUT?)
but that rings too database-specific to my ears.

Do you see other ways to solve that problem?=20
(is this group the right place to discuss this, or maybe the =
implementors'?)




--------------------------------------------------------
Davide Migliavacca (aka shari)
Inferentia S.r.l. - Milano ITALY +39 2 59928.1 (FAX .221)
* Standard disclaimer here *
--------------------------------------------------------
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <03440-5@oink>;
          Tue, 12 Dec 1995 03:39:42 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818735179:26710:1; Tue, 12 Dec 95 02:26:19 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa26608;
          12 Dec 95 2:26 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA03365 for dbi-users-real; Mon, 11 Dec 1995 17:49:38 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id RAA03348;
          Mon, 11 Dec 1995 17:44:44 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.aj22882;
          12 Dec 95 1:38 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ad10782;
          12 Dec 95 1:38 GMT
Received: from toad by oink with SMTP (PP) id <01955-0@oink>;
          Tue, 12 Dec 1995 01:30:01 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA27073;
          Tue, 12 Dec 1995 01:29:27 +0000
Date: Tue, 12 Dec 1995 01:29:27 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512120129.AA27073@toad.ig.co.uk>
To: dbi-announce@fugue.com, dbi-users@fugue.com
Subject: New directions for DBI - Important
Cc: ak@ananke.s.bawue.de, kejin@lithium.empress.com
X-Sun-Charset: US-ASCII
content-length: 4705
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Tue, 12 Dec 95 1:38:16 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Tue, 12 Dec 95 1:38:56 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 2:26:15 GMT]

I've been putting off writing this message because I've little time
to deal with the fallout it's bound to create... but I don't want
to leave it any longer. It's too important.

As you may remember I went away for a couple of weeks vacation recently
saying that I'd be thinking about ODBC and how it fitted in with the DBI.

To cut a long story short I've decided that we should throw away a
significant chunk of the work that we've done and reengineer an
implementation based very strongly around the SQL CLI / ODBC API.

My reasoning goes something like this:

 - The SQL CLI has recently been adopted as an international standard.

 - ODBC is based on the SQL CLI standard and Microsoft has commited to
   make ODBC v3 a proper superset of the standard.

 - Database vendors (include Infomix, IBM, Watcom, etc.) are 
   adopting ODBC as the native CLI for their database engine(s).

 - ODBC has *huge* market share on PC's and a very rapidly growing
   presence on UNIX (Solaris 2.5 comes with an ODBC driver manager,
   other vendors are likely to do the same). A large number of commercial
   drivers already exist. Non-commercial drivers and being developed.

 - The DBI currently lacks much of the breadth required for a full
   featured API. Defining the API would duplicate much of the work
   standardised by the SQL CLI / ODBC API.

 - The DBI needs to support ODBC well for it to be widely accepted
   as the standard perl database interface. Specifically it would
   need to expose the majority of the API and associated concepts.
   A DBD::ODBC offering only the current DBI API is not sufficient.

 - A free driver manager exists (Ke Jin's iODBC) and free drivers can
   be implemented with approximately the same skill level as DBD drivers.

And finally some carrots, in case you still need them:

 - I believe that we will be able to implement ODBC drivers for
   loading into perl which are implemented as Perl scripts.

 - I also believe that it should be possible to implement ODBC
   drivers in Perl which can be loaded into non-perl applications!

 - The DBI will no longer be incomplete and undocumented!


Okay, so what's the plan? What will the new 'thing' look like?
Will my current DBI scripts still run? Questions, questions.
I'm sure you'll have many more than this.


The initial step is to carefully define a fairly formal 'perl language
binding' for the SQL CLI / ODBC API. Basically this involves some easy
decisions like "string input parameters do not need a separate length
parameter to we'll delete it for all functions" and some hard and/or
subtle ones, like how best to model handles or deal with descriptors.
(Handles will almost certainly be objects, unlike existing ODBC modules.)

There will be some tough decisions to make but I'm very keen to avoid
limiting the access to the underlying API functionality. Basically
anything that you can do in C (or COBOL!) you should be able to do in Perl.

Once that's agreed I'll implement it. It should be very straight forward.
(Much less work than I'm throwing away :-) I'll implement it over at
least one commercial driver manager and also over the free iODBC manager.
I may borrow some code from Andreas Kaiser's DB2CLI module if he's happy
for me to do that and I decide I want to do some things the same way.

Over this complete but low level API we'll layer some high level methods
that will give us our familiar DBI interface back (as far as possible).

At this point we'll have complete API useable by anyone who can
acquire an ODBC diver. Note that some (many?) database vendors are
giving away drivers.

The next stage is to develop some drivers for databases and/or platforms
where free drivers are not available. I envisage a scheme whereby I
define and implement as much support structure as possible to make it
easier for others to follow in my footsteps. Similar to DBD::Oracle.

The final component is the infrastructure for implementing drivers in perl.


It would be of *great* help to have the *active* contribution of people
who have used ODBC in real world applications. I hope Andreas Kaiser
and Ke Jin will join the mailing list if the're not already on it.
Meanwhile I suggest that everyone else start learning the SQL CLI /
ODBC API!  Many books are available from many bookstores.

I'll stop here and leave you to absorb the meaning of all this.

Feel free to comment on the above but please avoid getting into
technical issues just yet. The time for that will come.

And please note that I'm going to be very short of time till mid-Jan.
I have real-work-deliverables to deliver :-(


Tim.

(Sympathy for throwing away much of the DBI and DBD::Oracle would
 be appreciated. Merry Christmas :-)
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <03440-7@oink>;
          Tue, 12 Dec 1995 03:39:59 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818735523:29278:1; Tue, 12 Dec 95 02:32:03 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa29215;
          12 Dec 95 2:32 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA03352 for dbi-announce-real; Mon, 11 Dec 1995 17:44:58 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id RAA03348;
          Mon, 11 Dec 1995 17:44:44 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.aj22882;
          12 Dec 95 1:38 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ad10782;
          12 Dec 95 1:38 GMT
Received: from toad by oink with SMTP (PP) id <01955-0@oink>;
          Tue, 12 Dec 1995 01:30:01 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA27073;
          Tue, 12 Dec 1995 01:29:27 +0000
Date: Tue, 12 Dec 1995 01:29:27 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512120129.AA27073@toad.ig.co.uk>
To: dbi-announce@fugue.com, dbi-users@fugue.com
Subject: New directions for DBI - Important
Cc: ak@ananke.s.bawue.de, kejin@lithium.empress.com
X-Sun-Charset: US-ASCII
content-length: 4705
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Tue, 12 Dec 95 1:38:16 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Tue, 12 Dec 95 1:38:56 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 2:32:02 GMT]

I've been putting off writing this message because I've little time
to deal with the fallout it's bound to create... but I don't want
to leave it any longer. It's too important.

As you may remember I went away for a couple of weeks vacation recently
saying that I'd be thinking about ODBC and how it fitted in with the DBI.

To cut a long story short I've decided that we should throw away a
significant chunk of the work that we've done and reengineer an
implementation based very strongly around the SQL CLI / ODBC API.

My reasoning goes something like this:

 - The SQL CLI has recently been adopted as an international standard.

 - ODBC is based on the SQL CLI standard and Microsoft has commited to
   make ODBC v3 a proper superset of the standard.

 - Database vendors (include Infomix, IBM, Watcom, etc.) are 
   adopting ODBC as the native CLI for their database engine(s).

 - ODBC has *huge* market share on PC's and a very rapidly growing
   presence on UNIX (Solaris 2.5 comes with an ODBC driver manager,
   other vendors are likely to do the same). A large number of commercial
   drivers already exist. Non-commercial drivers and being developed.

 - The DBI currently lacks much of the breadth required for a full
   featured API. Defining the API would duplicate much of the work
   standardised by the SQL CLI / ODBC API.

 - The DBI needs to support ODBC well for it to be widely accepted
   as the standard perl database interface. Specifically it would
   need to expose the majority of the API and associated concepts.
   A DBD::ODBC offering only the current DBI API is not sufficient.

 - A free driver manager exists (Ke Jin's iODBC) and free drivers can
   be implemented with approximately the same skill level as DBD drivers.

And finally some carrots, in case you still need them:

 - I believe that we will be able to implement ODBC drivers for
   loading into perl which are implemented as Perl scripts.

 - I also believe that it should be possible to implement ODBC
   drivers in Perl which can be loaded into non-perl applications!

 - The DBI will no longer be incomplete and undocumented!


Okay, so what's the plan? What will the new 'thing' look like?
Will my current DBI scripts still run? Questions, questions.
I'm sure you'll have many more than this.


The initial step is to carefully define a fairly formal 'perl language
binding' for the SQL CLI / ODBC API. Basically this involves some easy
decisions like "string input parameters do not need a separate length
parameter to we'll delete it for all functions" and some hard and/or
subtle ones, like how best to model handles or deal with descriptors.
(Handles will almost certainly be objects, unlike existing ODBC modules.)

There will be some tough decisions to make but I'm very keen to avoid
limiting the access to the underlying API functionality. Basically
anything that you can do in C (or COBOL!) you should be able to do in Perl.

Once that's agreed I'll implement it. It should be very straight forward.
(Much less work than I'm throwing away :-) I'll implement it over at
least one commercial driver manager and also over the free iODBC manager.
I may borrow some code from Andreas Kaiser's DB2CLI module if he's happy
for me to do that and I decide I want to do some things the same way.

Over this complete but low level API we'll layer some high level methods
that will give us our familiar DBI interface back (as far as possible).

At this point we'll have complete API useable by anyone who can
acquire an ODBC diver. Note that some (many?) database vendors are
giving away drivers.

The next stage is to develop some drivers for databases and/or platforms
where free drivers are not available. I envisage a scheme whereby I
define and implement as much support structure as possible to make it
easier for others to follow in my footsteps. Similar to DBD::Oracle.

The final component is the infrastructure for implementing drivers in perl.


It would be of *great* help to have the *active* contribution of people
who have used ODBC in real world applications. I hope Andreas Kaiser
and Ke Jin will join the mailing list if the're not already on it.
Meanwhile I suggest that everyone else start learning the SQL CLI /
ODBC API!  Many books are available from many bookstores.

I'll stop here and leave you to absorb the meaning of all this.

Feel free to comment on the above but please avoid getting into
technical issues just yet. The time for that will come.

And please note that I'm going to be very short of time till mid-Jan.
I have real-work-deliverables to deliver :-(


Tim.

(Sympathy for throwing away much of the DBI and DBD::Oracle would
 be appreciated. Merry Christmas :-)
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <03440-10@oink>;
          Tue, 12 Dec 1995 03:40:18 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818736512:06675:1; Tue, 12 Dec 95 02:48:32 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa06566;
          12 Dec 95 2:48 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA03446 for dbi-users-real; Mon, 11 Dec 1995 18:15:39 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id SAA03442 
          for <dbi-users@fugue.com>; Mon, 11 Dec 1995 18:15:37 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id msg.af25792;
          12 Dec 95 2:14 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id msg.aa14843;
          12 Dec 95 2:13 GMT
Received: from toad by oink with SMTP (PP) id <03073-0@oink>;
          Tue, 12 Dec 1995 02:13:25 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA27306;
          Tue, 12 Dec 1995 02:12:59 +0000
Date: Tue, 12 Dec 1995 02:12:59 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512120212.AA27306@toad.ig.co.uk>
To: dbi-users@fugue.com
Subject: Perl5 & informix
X-Sun-Charset: US-ASCII
content-length: 389
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Tue, 12 Dec 95 2:13:41 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Tue, 12 Dec 95 2:14:26 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 2:48:23 GMT]


----- Begin Included Message -----

Date: Mon, 11 Dec 1995 08:51:25 -0500
From: Bahram Samani <bsamani@iag.net>
To: Tim.Bunce@ig.co.uk
Subject: Perl5 & informix
X-Url: http://www.hermetica.com/technologia/DBI/

We are not able to do a complete make for perl5, informix, 
and AIX, or HPUX at Disney. 

Is there a new version of the beta?

Thanks!
Bahram

----- End Included Message -----

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04179-5@oink>;
          Tue, 12 Dec 1995 04:28:01 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818741408:08998:1; Tue, 12 Dec 95 04:10:08 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa08976;
          12 Dec 95 4:10 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id TAA03828 for dbi-announce-real; Mon, 11 Dec 1995 19:39:55 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from spica.npac.syr.edu (root@spica-gw.npac.syr.edu [128.230.14.6]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id TAA03824;
          Mon, 11 Dec 1995 19:39:52 -0800
Received: from nova.npac.syr.edu by spica.npac.syr.edu (4.1/I-1.98K) id AA06923;
          Mon, 11 Dec 95 22:39:44 EST
Received: (from gcheng@localhost) by nova.npac.syr.edu (8.7.1/8.7.1) 
          id WAA29249; Mon, 11 Dec 1995 22:39:30 -0500 (EST)
Date: Mon, 11 Dec 1995 22:39:30 -0500 (EST)
From: Gang Cheng <gcheng@npac.syr.edu>
Message-Id: <199512120339.WAA29249@nova.npac.syr.edu>
To: dbi-announce@fugue.com, dbi-users@fugue.com
Subject: DBI mailing list archive
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 4:10:08 GMT]

check URL: http://asknpac.npac.syr.edu. This archive is online (updated
in every 30 minutes). Total about 120 USENET newsgroups and mailing lists
are archived there (total ~300,000 articles up to now).

--- Gang
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04179-7@oink>;
          Tue, 12 Dec 1995 04:28:07 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818741763:11023:1; Tue, 12 Dec 95 04:16:03 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa10962;
          12 Dec 95 4:15 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id TAA03842 for dbi-users-real; Mon, 11 Dec 1995 19:41:06 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from spica.npac.syr.edu (root@spica-gw.npac.syr.edu [128.230.14.6]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id TAA03824;
          Mon, 11 Dec 1995 19:39:52 -0800
Received: from nova.npac.syr.edu by spica.npac.syr.edu (4.1/I-1.98K) id AA06923;
          Mon, 11 Dec 95 22:39:44 EST
Received: (from gcheng@localhost) by nova.npac.syr.edu (8.7.1/8.7.1) 
          id WAA29249; Mon, 11 Dec 1995 22:39:30 -0500 (EST)
Date: Mon, 11 Dec 1995 22:39:30 -0500 (EST)
From: Gang Cheng <gcheng@npac.syr.edu>
Message-Id: <199512120339.WAA29249@nova.npac.syr.edu>
To: dbi-announce@fugue.com, dbi-users@fugue.com
Subject: DBI mailing list archive
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 4:15:54 GMT]

check URL: http://asknpac.npac.syr.edu. This archive is online (updated
in every 30 minutes). Total about 120 USENET newsgroups and mailing lists
are archived there (total ~300,000 articles up to now).

--- Gang
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04179-9@oink>;
          Tue, 12 Dec 1995 04:28:13 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818741802:11294:1; Tue, 12 Dec 95 04:16:42 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa11255;
          12 Dec 95 4:16 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id TAA03837 for dbi-users-real; Mon, 11 Dec 1995 19:40:32 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id TAA03833 
          for <dbi-users@fugue.com>; Mon, 11 Dec 1995 19:40:23 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ab02843;
          12 Dec 95 3:39 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ad21596;
          12 Dec 95 3:39 GMT
Received: from toad by oink with SMTP (PP) id <03190-0@oink>;
          Tue, 12 Dec 1995 02:37:49 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA27342;
          Tue, 12 Dec 1995 02:37:23 +0000
Date: Tue, 12 Dec 1995 02:37:23 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512120237.AA27342@toad.ig.co.uk>
To: dbi-users@fugue.com, AlexLi@msmail.hsii.ccare.com
Subject: Re: HELP building DBI-0.65
X-Sun-Charset: US-ASCII
content-length: 1830
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Tue, 12 Dec 95 3:39:22 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Tue, 12 Dec 95 3:39:55 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 4:16:42 GMT]


> From: "Li, Alexander" <AlexLi@msmail.hsii.ccare.com>
> 
> Dear Perl/DBI experts,
> 
> Attached at the end is a problem log when our programmer(I'm the sys. admin)
>  try to build DBI-0.65.  This happened only *after* I recompiled perl 5
> with dynamic loading.  i.e. The first time was fine.
> 
> Our goal is to build a Perl 5 to Oracle 7 interface.  Perl 5 tested fine.
> 
> The platform is a Sun Voyager running Solaris 2.4.  Compiler is Sun's
> SPARCompiler C v3.0.
> 
> I'm relative new to this stuff and probably made a stupid mistake somewhere.

> LD_RUN_PATH="" ld -o blib/auto/DBI/DBI.none  DBI.o

The .none is a sign of a broken perl config.

> Undefined                       first referenced
>  symbol                             in file
> sv_2iv                              DBI.o
> [...]
> sv_yes                              DBI.o
> 
> ld: fatal: Symbol referencing errors. No output written to 
> blib/auto/DBI/DBI.none

> Summary of my perl5 (patchlevel 1) configuration:
> 
>   Platform:
>     osname=solaris, osver=2.4, archname=sun4-solaris
>   Compiler:
>     cc='cc', optimize='-O'
>     cppflags='-DDEBUGGING'
>     ccflags ='-DDEBUGGING'
>     ldflags =''
>     stdchar='unsigned char', d_stdstdio=, usevfork=false
>     voidflags=15, castflags=0, d_casti32=define, d_castneg=define
>     intsize=4, alignbytes=8, usemymalloc=y, randbits=15
>   Libraries:
>     so=so
>     libpth=/lib /usr/lib /usr/ccs/lib
>     libs=-lsocket -lnsl -ldl -lm -lc -lcrypt
>     libc=/usr/lib/libc.so
>   Dynamic Linking:
>     dlsrc=dl_none.xs, dlext=none, d_dlsymun=
>     cccdlflags='', ccdlflags='', lddlflags=''

You don't have dynamic loading enabled according to this config.

I recommend rebuilding perl using

	make distclean
	Configure -des
	make
	make test
	installperl    (never just copy a perl binary)

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05066-5@oink>;
          Tue, 12 Dec 1995 07:06:18 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818744559:27969:1; Tue, 12 Dec 95 05:02:39 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa27940;
          12 Dec 95 5:02 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA04145 for dbi-users-real; Mon, 11 Dec 1995 20:40:02 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mailgw.claircom.com (mailgw.claircom.com [199.5.241.51]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id UAA04138;
          Mon, 11 Dec 1995 20:40:00 -0800
Received: from nimo.claircom.com by mailgw.claircom.com 
          with smtp (Smail3.1.26.7 #2) id m0tPMVU-0004thC;
          Mon, 11 Dec 95 20:40 PST
Received: from airone.claircom.com by nimo.claircom.com 
          with smtp (Smail3.1.26.7 #2) id m0tPMVT-0005VkC;
          Mon, 11 Dec 95 20:39 PST
Received: from soc5.airone.claircom.com by airone.claircom.com (5.x/SMI-SVR4) 
          id AA28045; Mon, 11 Dec 1995 20:36:22 -0800
Received: by soc5.airone.claircom.com (4.1/SMI-4.1) id AA03096;
          Mon, 11 Dec 95 20:20:19 PST
Date: Mon, 11 Dec 95 20:20:19 PST
From: billw@airone.claircom.com (William Warner)
Message-Id: <9512120420.AA03096@soc5.airone.claircom.com>
To: dbi-announce@fugue.com, dbi-users@fugue.com, Tim.Bunce@ig.co.uk
Subject: Re: New directions for DBI - Important
Cc: ak@ananke.s.bawue.de, kejin@lithium.empress.com
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 5:02:38 GMT]

I'm lacking a little background information.

What is SQL CLI/ODBC ?


   William Warner			 billw@airone.claircom.com
   portable: 206-915-1157			home: 206-720-6414
   page:     206-986-0399			work: 206-389-8210
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05066-9@oink>;
          Tue, 12 Dec 1995 07:06:40 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818744968:00394:1; Tue, 12 Dec 95 05:09:28 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa00377;
          12 Dec 95 5:09 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA04151 for dbi-announce-real; Mon, 11 Dec 1995 20:40:16 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mailgw.claircom.com (mailgw.claircom.com [199.5.241.51]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id UAA04138;
          Mon, 11 Dec 1995 20:40:00 -0800
Received: from nimo.claircom.com by mailgw.claircom.com 
          with smtp (Smail3.1.26.7 #2) id m0tPMVU-0004thC;
          Mon, 11 Dec 95 20:40 PST
Received: from airone.claircom.com by nimo.claircom.com 
          with smtp (Smail3.1.26.7 #2) id m0tPMVT-0005VkC;
          Mon, 11 Dec 95 20:39 PST
Received: from soc5.airone.claircom.com by airone.claircom.com (5.x/SMI-SVR4) 
          id AA28045; Mon, 11 Dec 1995 20:36:22 -0800
Received: by soc5.airone.claircom.com (4.1/SMI-4.1) id AA03096;
          Mon, 11 Dec 95 20:20:19 PST
Date: Mon, 11 Dec 95 20:20:19 PST
From: billw@airone.claircom.com (William Warner)
Message-Id: <9512120420.AA03096@soc5.airone.claircom.com>
To: dbi-announce@fugue.com, dbi-users@fugue.com, Tim.Bunce@ig.co.uk
Subject: Re: New directions for DBI - Important
Cc: ak@ananke.s.bawue.de, kejin@lithium.empress.com
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 5:09:27 GMT]

I'm lacking a little background information.

What is SQL CLI/ODBC ?


   William Warner			 billw@airone.claircom.com
   portable: 206-915-1157			home: 206-720-6414
   page:     206-986-0399			work: 206-389-8210
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05066-15@oink>;
          Tue, 12 Dec 1995 07:07:18 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818745342:02558:1; Tue, 12 Dec 95 05:15:42 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa02540;
          12 Dec 95 5:15 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA04229 for dbi-users-real; Mon, 11 Dec 1995 20:49:49 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id UAA04225 
          for <dbi-users@fugue.com>; Mon, 11 Dec 1995 20:49:47 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ac08291;
          12 Dec 95 4:48 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa26909;
          12 Dec 95 4:48 GMT
Received: from toad by oink with SMTP (PP) id <04625-0@oink>;
          Tue, 12 Dec 1995 04:47:03 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA27767;
          Tue, 12 Dec 1995 04:46:33 +0000
Date: Tue, 12 Dec 1995 04:46:33 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512120446.AA27767@toad.ig.co.uk>
To: dbi-users@fugue.com, billw@airone.claircom.com
Subject: Re: New directions for DBI - Important
X-Sun-Charset: US-ASCII
content-length: 291
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Tue, 12 Dec 95 4:48:33 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Tue, 12 Dec 95 4:48:51 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 5:15:41 GMT]


> From: billw@airone.claircom.com (William Warner)
> 
> I'm lacking a little background information.
> 
> What is SQL CLI/ODBC ?

An International Standard 'Call Level Interface' for access to databases
from programs.

Basically it's a standard API. Exactly what the DBI wants to be.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <08976-13@oink>;
          Tue, 12 Dec 1995 16:56:59 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818784057:19272:0; Tue, 12 Dec 95 16:00:57 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa19266;
          12 Dec 95 16:00 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa26613;
          12 Dec 95 15:56 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id FAA06664 for dbi-users-real; Tue, 12 Dec 1995 05:47:18 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mailhost.onramp.net (mailhost.onramp.net [199.1.11.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id FAA06660 
          for <dbi-users@fugue.com>; Tue, 12 Dec 1995 05:47:15 -0800
Received: from elcaro (elcaro.com [199.1.166.62]) 
          by mailhost.onramp.net (8.6.12/8.6.5) with SMTP id HAA29897;
          Tue, 12 Dec 1995 07:47:02 -0600
Message-ID: <30CD8790.EB@hometown.com>
Date: Tue, 12 Dec 1995 05:45:52 -0800
From: Steve Livingston <mouche@hometown.com>
X-Mailer: Mozilla 2.0b3 (X11; I; SunOS 5.4 sun4m)
MIME-Version: 1.0
To: "dbi-users@fugue.com" <dbi-users@fugue.com>
CC: Tim.Bunce@ig.co.uk
Subject: Building DBD-0.27 on Solaris/Sparc
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 15:56:45 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 12 Dec 95 16:00:56 GMT]

Environment
-----------
Perl5.001n...tests and runs OK
DBI-0.65...builds and tests OK
Solaris 2.4 on Sparc 20
GCC 2.6.3
Oracle 7.3 Beta

First Problem
-------------
make Makefile.pl -> can't find proc.mk
Note: O7.3 beta is working OK

(make realclean...)

% perl Makefile.PL
 
Configuring DBD::Oracle version 0.27...
Remember to actually read the README file!
 
Using Oracle in /private/slivings/oracle/orahome
Oracle sysliblist: -lsocket -lnsl -lm -ldl -laio
Unable to locate proc.mk (use -m /path/to/proc.mk to specify)

Next Try
--------
Found proc.mk on distribution CD and copied to (OH)/proc/lib

(make realclean...)

% perl Makefile.PL
 
Configuring DBD::Oracle version 0.27...
Remember to actually read the README file!
 
Using Oracle in /private/slivings/oracle/orahome
Oracle sysliblist: -lsocket -lnsl -lm -ldl -laio
Using /private/slivings/oracle/orahome/proc/lib/proc.mk version 
System: perl5.001 sunos elcaro 5.4 generic_101945-29 sun4m sparc
sun4-solaris dl_dlopen.xs
Compiler: gcc -O -I/usr/local/include
Oracle proc.mk would have used these values but we override them:
  CC:       cc -O -xcg92
  CFLAGS:   $(INCLUDE)
 
Checking if your kit is complete...
Looks good
Warning (non-fatal): Importing of %att is depreciated [PM]
        use $self instead
Warning (non-fatal): Importing of %att is depreciated [PM]
        use $self instead
Warning (non-fatal): Importing of %att is depreciated [EXTRALIBS]
        use $self instead
Warning (non-fatal): Importing of %att is depreciated [EXTRALIBS][-laio
-L$(LIBHOME) ]
        use $self instead
          CCCMD =  gcc -c -I/usr/local/include -O   
Writing Makefile for DBD::Oracle

And Now the MAKE
----------------
% perl Makefile.PL
 
% /usr/ccs/bin/make
umask 0 && cp Oraperl.pm ../../lib/Oraperl.pm
umask 0 && cp oraperl.ph ../../lib/oraperl.ph
umask 0 && cp Oracle.pm ../../lib/DBD/Oracle.pm
../../perl -I../../lib -I../../lib ../../lib/ExtUtils/xsubpp -typemap
../../lib/ExtUtils/typemap Oracle.xs >Oracle.tc && mv Oracle.tc Oracle.c
ld -dy /private/slivings/oracle/orahome/lib/crti.o
/private/slivings/oracle/orahome/lib/crt1.o
/private/slivings/oracle/orahome/lib/__fstd.o -c  -c Oracle.c -o
Oracle.o
/usr/ccs/bin/ld: illegal option -- c
/usr/ccs/bin/ld: illegal option -- c
usage: ld [-abd:e:h:il:mo:rstu:z:B:D:F:GI:L:M:Q:R:S:VY:] file(s) ...
        [-a]            create an absolute file
        [-b]            do not do special PIC relocations in a.out
        [-d y|n]        operate in dynamic|static mode
        [-e sym]        use `sym' as entry point address
        [-h name]       use `name' as internal shared object identifier
        [-i]            ignore LD_LIBRARY_PATH setting
        [-l x]          search for libx.so or libx.a
        [-m]            print memory map
        [-o outfile]    name the output file `outfile'
        [-r]            create a relocatable object
        [-s]            strip any symbol and debugging information
        [-t]            do not warn of multiply defined symbols of
                        different sizes
        [-u sym]        create an undefined symbol `sym'
        [-z defs|nodefs]
                        disallow|allow undefined symbols
        [-z muldefs]    allow multiply defined symbols
        [-z text]       disallow output relocations against text
        [-B dynamic|static]
                        search for shared libraries|archives
        [-B symbolic]   bind external references to definitions when
                        creating shared objects
        [-D options]    print diagnostic messages
        [-F name]       specify library for which this file is a filter
        [-G]            create a shared object
        [-I interp]     use `interp' as path name of interpreter
        [-L path]       search for libraries in directory `path'
        [-M mapfile]    use processing directives contained in `mapfile'
        [-Q y|n]        do|do not place version information in output
file
        [-R path]       specify a library search path to be used at run
time
        [-V]            print version information
        [-Y P,dirlist]  use `dirlist' as a default path when searching
                        for libraries
*** Error code 1
make: Fatal error: Command failed for target `Oracle.o'

More Info
---------

% perl -e 'use Config; print Config::myconfig()'
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=solaris, osver=2.4, archname=sun4-solaris
    uname='sunos elcaro 5.4 generic_101945-29 sun4m sparc '
    hint=recommended
  Compiler:
    cc='gcc', optimize='-O'
    cppflags='-I/usr/local/include'
    ccflags ='-I/usr/local/include'
    ldflags =' -L/usr/local/lib'
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=0, d_casti32=define, d_castneg=define
    intsize=4, alignbytes=8, usemymalloc=y, randbits=15
  Libraries:
    so=so
    libpth=/usr/local/lib /lib /usr/lib /usr/ccs/lib
    libs=-lsocket -lnsl -ldl -lm -lc -lcrypt
    libc=/usr/lib/libc.so
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
    cccdlflags='-fpic', ccdlflags=' ', lddlflags='-G -L/usr/local/lib'
 
Thanks for your contributions to the Web.

Cheers,
Steve

mouche@hometown.com
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <09291-0@oink>;
          Tue, 12 Dec 1995 17:02:23 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818787444:21718:0; Tue, 12 Dec 95 16:57:24 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa21712;
          12 Dec 95 16:57 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa02449;
          12 Dec 95 16:52 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA06712 for dbi-users-real; Tue, 12 Dec 1995 06:18:00 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from sultan.hsii.ccare.com ([192.101.181.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id GAA06702 
          for <dbi-users@fugue.com>; Tue, 12 Dec 1995 06:17:55 -0800
Received: from msgw.hsii.ccare.com by SULTAN.HSII.CCARE.COM (PMDF V5.0-5 #4597) 
          id <01HYPOO5BXF40018RB@SULTAN.HSII.CCARE.COM> 
          for dbi-users@fugue.com; Tue, 12 Dec 1995 08:17:20 -0600 (CST)
Received: by msgw.hsii.ccare.com with Microsoft Mail 
          id <30CD8EF4@msgw.hsii.ccare.com>;
          Tue, 12 Dec 1995 08:17:24 -0600 (CST)
Date: Mon, 11 Dec 1995 20:03:00 -0600 (CST)
From: "Li, Alexander" <AlexLi@msmail.hsii.ccare.com>
Subject: FW: HELP building DBI-0.65
To: DBI User List <dbi-users@fugue.com>
Message-id: <30CD8EF4@msgw.hsii.ccare.com>
X-Mailer: Microsoft Mail V3.0
Content-transfer-encoding: 7BIT
Encoding: 297 TEXT
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 16:52:17 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 12 Dec 95 16:57:23 GMT]


Sorry for duplicating a post, but I'm in dire need to solve the following 
problem.

Thanks.

Alex Li
 ----------
From: owner-dbi-users
To: DBI User List
Subject: HELP building DBI-0.65
Date: Friday, December 08, 1995 12:22PM



Dear Perl/DBI experts,

Attached at the end is a problem log when our programmer(I'm the sys. admin)
 try to build DBI-0.65.  This happened only *after* I recompiled perl 5
with dynamic loading.  i.e. The first time was fine.

Our goal is to build a Perl 5 to Oracle 7 interface.  Perl 5 tested fine.


The platform is a Sun Voyager running Solaris 2.4.  Compiler is Sun's
SPARCompiler C v3.0.

I'm relative new to this stuff and probably made a stupid mistake somewhere.

Thanks for you kind help.

 ----------------------------------
Alex Li
Health Systems Integration, Inc.
ali@hsii.ccare.com
work: 612-858-7570
 ----------------------------------
Script started on Fri Dec 08 09:46:13 1995
gh753> perl Makefile.PL



    Build, TEST and INSTALL Perl 5 first. Use version 5.001m or later.



    DO NOT build the DBI under the Perl source tree.



    Use 'make test' to execute self tests.



MakeMaker (v4.16)

Checking if your kit is complete...

Looks good

        NAME => 'DBI'

        VERSION => '0.65'

Using PERL=/usr/local/bin/perl

Writing Makefile for DBI

gh753>

gh753> make

mkdir ./blib

mkdir ./blib/auto

mkdir ./blib/auto/DBI

/usr/local/bin/perl -I/usr/local/lib/perl5/sun4-solaris
 -I/usr/local/lib/perl5 /usr/local/lib/perl5/ExtUtils/xsubpp -typemap
/usr/local/lib/perl5/ExtUtils/typemap DBI.xs >DBI.tc && mv DBI.tc DBI.c

cc -c -DDEBUGGING -O  -I/usr/local/lib/perl5/sun4-solaris/CORE   DBI.c

Running Mkbootstrap for DBI ()

chmod 644 DBI.bs

LD_RUN_PATH="" ld -o blib/auto/DBI/DBI.none  DBI.o

Undefined                       first referenced

 symbol                             in file

sv_2iv                              DBI.o

sv_magic                            DBI.o

stack_sp                            DBI.o

markstack_max                       DBI.o

sv_free                             DBI.o

gv_fetchpv                          DBI.o

sv_undef                            DBI.o

av_fetch                            DBI.o

sv_2pv                              DBI.o

newSVpv                             DBI.o

sv_setiv                            DBI.o

mg_find                             DBI.o

__ctype                             DBI.o

gv_fetchmethod                      DBI.o

abort                               DBI.o

hv_fetch                            DBI.o

Xpv                                 DBI.o

sv_catpv                            DBI.o

strerror                            DBI.o

newRV                               DBI.o

newSViv                             DBI.o

newSV                               DBI.o

dirty                               DBI.o

malloc                              DBI.o

sprintf                             DBI.o

perl_destruct_level                 DBI.o

av_store                            DBI.o

newXS                               DBI.o

newSVsv                             DBI.o

runlevel                            DBI.o

sv_no                               DBI.o

sv_bless                            DBI.o

sv_2bool                            DBI.o

gv_stashpv                          DBI.o

Sv                                  DBI.o

hv_store                            DBI.o

fclose                              DBI.o

perl_call_sv                        DBI.o

sv_mortalcopy                       DBI.o

savepv                              DBI.o

sv_setsv                            DBI.o

sv_catpvn                           DBI.o

strncmp                             DBI.o

sv_backoff                          DBI.o

__iob                               DBI.o

dowantarray                         DBI.o

strcat                              DBI.o

warn                                DBI.o

sv_newmortal                        DBI.o

errno                               DBI.o

stack_base                          DBI.o

stack_max                           DBI.o

av_len                              DBI.o

sv_setpv                            DBI.o

sv_2mortal                          DBI.o

strcmp                              DBI.o

fopen                               DBI.o

memset                              DBI.o

croak                               DBI.o

strcpy                              DBI.o

markstack_grow                      DBI.o

stack_grow                          DBI.o

na                                  DBI.o

sv_dump                             DBI.o

markstack_ptr                       DBI.o

op                                  DBI.o

perl_get_sv                         DBI.o

strlen                              DBI.o

perl_call_method                    DBI.o

fprintf                             DBI.o

newAV                               DBI.o

sv_yes                              DBI.o

ld: fatal: Symbol referencing errors. No output written to
blib/auto/DBI/DBI.none

*** Error code 1

make: Fatal error: Command failed for target `blib/auto/DBI/DBI.none'

gh753>

gh753>

gh753> perl -e ` 'use Config; print Conig  fig::myconif  fig()'

Summary of my perl5 (patchlevel 1) configuration:

  Platform:

    osname=solaris, osver=2.4, archname=sun4-solaris

    uname='sunos gh753 5.4 generic_101945-10 sun4m sparc '

    hint=recommended

  Compiler:

    cc='cc', optimize='-O'

    cppflags='-DDEBUGGING'

    ccflags ='-DDEBUGGING'

    ldflags =''

    stdchar='unsigned char', d_stdstdio=, usevfork=false

    voidflags=15, castflags=0, d_casti32=define, d_castneg=define

    intsize=4, alignbytes=8, usemymalloc=y, randbits=15

  Libraries:

    so=so

    libpth=/lib /usr/lib /usr/ccs/lib

    libs=-lsocket -lnsl -ldl -lm -lc -lcrypt

    libc=/usr/lib/libc.so

  Dynamic Linking:

    dlsrc=dl_none.xs, dlext=none, d_dlsymun=

    cccdlflags='', ccdlflags='', lddlflags=''



gh753>
script done on Fri Dec 08 09:51:39 1995
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <01794-8@oink>;
          Wed, 13 Dec 1995 07:06:38 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818816457:05541:0; Wed, 13 Dec 95 01:00:57 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa05451;
          13 Dec 95 1:00 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA00124 for dbi-users-real; Tue, 12 Dec 1995 14:06:55 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from sparc20.cs.uiuc.edu (dswallow@sparc20.cs.uiuc.edu [128.174.244.30]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA08345 
          for <dbi-users@fugue.com>; Tue, 12 Dec 1995 13:13:10 -0800
From: dswallow@sparc20.cs.uiuc.edu
Received: by sparc20.cs.uiuc.edu id AA08697 (5.67b/IDA-1.5 
          for dbi-users@fugue.com); Tue, 12 Dec 1995 15:13:03 -0600
Date: Tue, 12 Dec 1995 15:13:03 -0600
Message-Id: <199512122113.AA08697@sparc20.cs.uiuc.edu>
To: dbi-users@fugue.com
Content-Length: 5046
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 13 Dec 95 1:00:52 GMT]

***** Removing old dbdimp.c *****
***** Generating new Makefile *****

Configuring DBD::Informix version 0.20pl0...
Remember to actually read the README file!

Using Informix in /usr/local/informix
Informix sysliblist: -L/usr/local/informix/lib/esql -lsql -lgen -los -lm
Warning: forced to build static not dynamic on hpux
         See README file for more information.
System: perl5.001 hp-ux hp47 a.09.05 a 9000725 2011486631 two-user license  9000/725-hpux dl_hpux.xs
Compiler: cc -O -D_HPUX_SOURCE -Aa

Writing Makefile for DBD::Informix
***** Attaching preprocessor information to Makefile *****
***** Generating MAXCURSOR information *****
	umask 0 && cp Informix.pm ./blib/DBD/Informix.pm
	umask 0 && cp mSQLtest.pl ./blib/DBD/mSQLtest.pl
	./perl -I/tmp_mnt/home/student9/marcn/dev/cs292/lib/9000/725-hpux -I/tmp_mnt/home/student9/marcn/dev/cs292/lib /tmp_mnt/home/student9/marcn/dev/cs292/lib/ExtUtils/xsubpp -typemap /tmp_mnt/home/student9/marcn/dev/cs292/lib/ExtUtils/typemap Informix.xs >Informix.tc && mv Informix.tc Informix.c
	cc -c -D_HPUX_SOURCE -Aa -O -DVERSION=\"0.20pl0\" +z -I/tmp_mnt/home/student9/marcn/dev/cs292/lib/9000/725-hpux/CORE  -I/usr/local/informix/incl -I/tmp_mnt/home/student9/marcn/dev/cs292/lib/9000/725-hpux/DBI Informix.c
cc: "Informix.c", line 133: warning 608: Illegal integer-pointer combination in assignment.
cc: "Informix.c", line 324: warning 608: Illegal integer-pointer combination in assignment.
cc: "Informix.c", line 356: warning 608: Illegal integer-pointer combination in assignment.
	esql -c -I/usr/local/informix/incl -I/tmp_mnt/home/student9/marcn/dev/cs292/lib -I/tmp_mnt/home/student9/marcn/dev/cs292/lib/9000/725-hpux -I/tmp_mnt/home/student9/marcn/dev/cs292/lib/9000/725-hpux/DBI -I/tmp_mnt/home/student9/marcn/dev/cs292/lib/9000/725-hpux/CORE dbdimp.ec
dbdimp.ec: In function `dbd_describe':
dbdimp.ec:561: warning: overflow in implicit constant conversion
gcc: /usr/local/informix/lib/esql/libsql.a: linker input file unused since linking not done
gcc: /usr/local/informix/lib/esql/libgen.a: linker input file unused since linking not done
gcc: /usr/local/informix/lib/esql/libos.a: linker input file unused since linking not done
	ar cr ./blib/9000/725-hpux/auto/DBD/Informix/Informix.a Informix.o dbdimp.o && : ./blib/9000/725-hpux/auto/DBD/Informix/Informix.a
	chmod 755 ./blib/9000/725-hpux/auto/DBD/Informix/Informix.a
install_driver(Informix) failed: Can't load './Informix.o' for module DBD::Informix: Exec format error at /tmp_mnt/home/student9/marcn/dev/cs292/lib/DynaLoader.pm line 136.

 at /tmp_mnt/home/student9/marcn/dev/cs292/lib/DBD/Informix.pm line 18
 at /tmp_mnt/home/student9/marcn/dev/cs292/lib/DBI.pm line 180
	DBI::install_driver called at ./test.pl line 12
    DBI dispatch debug level set to 2
DBI->install_driver DBI Informix at ./test.pl line 12
install_driver(Informix) failed: Can't load './Informix.o' for module DBD::Informix: Exec format error at /tmp_mnt/home/student9/marcn/dev/cs292/lib/DynaLoader.pm line 136.

 at /tmp_mnt/home/student9/marcn/dev/cs292/lib/DBD/Informix.pm line 18
 at /tmp_mnt/home/student9/marcn/dev/cs292/lib/DBI.pm line 180
	DBI::install_driver called at ./test.pl line 12
DBI::END
DBI::disconnect_all DBI
DBI::END complete
    >> DESTROY     DISPATCH (DBI::dr=HASH(0x40063498) @1 g0 a4009cd68 r0)
       (outer handle DESTROY ignored)
    >> DESTROY     DISPATCH (DBI::dr=HASH(0x4004fc38) @1 g0 a4009cd68 r0)
    dbih_clearcom 0x40074208 done
Bad free() ignored during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
Bad free() ignored during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.
Attempt to free unreferenced scalar during global destruction.


I am using perl 5.001m and esql 5.00.  Note that it was necessary to 
use gcc instead of cc in the esql compilation.


Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=hpux, osver=9, archname=9000/725-hpux
    uname='hp-ux hp47 a.09.05 a 9000725 2011486631 two-user license '
    hint=recommended
  Compiler:
    cc='cc', optimize='-O'
    cppflags='-D_HPUX_SOURCE -Aa'
    ccflags ='-D_HPUX_SOURCE -Aa'
    ldflags =' -L/usr/local/lib'
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=0, d_casti32=define, d_castneg=define
    intsize=4, alignbytes=8, usemymalloc=y, randbits=15
  Libraries:
    so=sl
    libpth=/usr/local/lib /lib/pa1.1 /lib /usr/lib
    libs=-lnet -ldld -lm -lc -lndir -lcrypt
    libc=/lib/libc.sl
  Dynamic Linking:
    dlsrc=dl_hpux.xs, dlext=sl, d_dlsymun=
    cccdlflags='+z', ccdlflags='-Wl,-E ', lddlflags='-b -L/usr/local/lib'

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <01794-11@oink>;
          Wed, 13 Dec 1995 07:07:12 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818817553:13846:0; Wed, 13 Dec 95 01:19:13 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa13821;
          13 Dec 95 1:19 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA00516 for dbi-users-real; Tue, 12 Dec 1995 15:21:33 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mailhost.onramp.net (mailhost.onramp.net [199.1.11.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA00512 
          for <dbi-users@fugue.com>; Tue, 12 Dec 1995 15:21:31 -0800
Received: from elcaro (elcaro.com [199.1.166.62]) 
          by mailhost.onramp.net (8.6.12/8.6.5) with SMTP id RAA16863;
          Tue, 12 Dec 1995 17:21:33 -0600
Message-ID: <30CE0E56.24F9@hometown.com>
Date: Tue, 12 Dec 1995 15:20:54 -0800
From: Steve Livingston <mouche@hometown.com>
X-Mailer: Mozilla 2.0b3 (X11; I; SunOS 5.4 sun4m)
MIME-Version: 1.0
To: dbi-users@fugue.com
CC: Tim.Bunce@ig.co.uk
Subject: Building DBD-0.27 on Solaris/Sparc...again
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 13 Dec 95 1:19:10 GMT]

Thanks for your suggestions...

I've installed Pro*C, and the O7beta install log says it was successful,
although I can't run the Pro*C demo program because it wants the
SUNWspro compiler with the -xcg92 flag.

I still receive the same fatal error for "perl Makefile.PL"

I looked in vain for a MakeMaker on CPAN. 

Cheers,
Steve

----------
% make realclean
rm -rf Oracle.c ./blib Makeaperlfile
../../lib/auto/DBD/Oracle/extralibs.all perlmain.c mon.out core
so_locations *~ */*~ */*/*~ *.o *.a perl.exe Oracle.bs Oracle.bso
Oracle.def Oracle.exp
mv Makefile Makefile.old 2>/dev/null
rm -rf ../../lib/auto/DBD/Oracle ../../lib/auto/DBD/Oracle
rm -f ../../lib/auto/DBD/Oracle/Oracle.so
../../lib/auto/DBD/Oracle/Oracle.bs
rm -f ../../lib/auto/DBD/Oracle/Oracle.a ../../lib/Oraperl.pm
../../lib/oraperl.ph  ../../lib/DBD/Oracle.pm
rm -rf Makefile Makefile.old

----------
elcaro% perl Makefile.PL
 
Configuring DBD::Oracle version 0.27...
Remember to actually read the README file!
 
Using Oracle in /private/slivings/oracle/orahome
Oracle sysliblist: -lsocket -lnsl -lm -ldl -laio
Using /private/slivings/oracle/orahome/proc/lib/proc.mk version 
System: perl5.001 sunos elcaro 5.4 generic_101945-29 sun4m sparc
sun4-solaris dl_dlopen.xs
Compiler: gcc -O -I/usr/local/include
Oracle proc.mk would have used these values but we override them:
  CC:       cc -O -xcg92
  CFLAGS:   $(INCLUDE)
 
Checking if your kit is complete...
Looks good
Warning (non-fatal): Importing of %att is depreciated [PM]
        use $self instead
Warning (non-fatal): Importing of %att is depreciated [PM]
        use $self instead
Warning (non-fatal): Importing of %att is depreciated [EXTRALIBS]
        use $self instead
Warning (non-fatal): Importing of %att is depreciated [EXTRALIBS][-laio
-L$(LIBHOME) ]
        use $self instead
          CCCMD =  gcc -c -I/usr/local/include -O   
Writing/make
umask 0 && cp Oraperl.pm ../../lib/Oraperl.pm
umask 0 && cp oraperl.ph ../../lib/oraperl.ph
umask 0 && cp Oracle.pm ../../lib/DBD/Oracle.pm
../../perl -I../../lib -I../../lib ../../lib/ExtUtils/xsubpp -typemap
../../lib/ExtUtils/typemap Oracle.xs >Oracle.tc && mv Oracle.tc Oracle.c
ld -dy /private/slivings/oracle/orahome/lib/crti.o
/private/slivings/oracle/orahome/lib/crt1.o
/private/slivings/oracle/orahome/lib/__fstd.o -c  -c Oracle.c -o
Oracle.o
/usr/ccs/bin/ld: illegal option -- c
/usr/ccs/bin/ld: illegal option -- c
usage: ld [-abd:e:h:il:mo:rstu:z:B:D:F:GI:L:M:Q:R:S:VY:] file(s) ...
        [-a]            create an absolute file
        [-b]            do not do special PIC relocations in a.out
        [-d y|n]        operate in dynamic|static mode
        ...

*** Error code 1
make: Fatal error: Command failed for target `Oracle.o'
 Makefile for DBD::Oracle

---------
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <01794-14@oink>;
          Wed, 13 Dec 1995 07:08:15 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818818316:18919:0; Wed, 13 Dec 95 01:31:56 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa18902;
          13 Dec 95 1:31 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA00593 for dbi-users-real; Tue, 12 Dec 1995 15:44:13 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from paul.spu.edu (Paul.spu.edu [192.190.33.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA00582;
          Tue, 12 Dec 1995 15:42:55 -0800
Received: by paul.spu.edu; (5.65/1.1.8.2/17Sep95-0400PM) id AA18304;
          Tue, 12 Dec 1995 15:39:26 -0800
Date: Tue, 12 Dec 1995 15:39:26 -0800 (PST)
From: Phil Rand <prand@paul.spu.edu>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: dbi-announce@fugue.com, dbi-users@fugue.com, ak@ananke.s.bawue.de, 
    kejin@lithium.empress.com
Subject: Re: New directions for DBI - Important
In-Reply-To: <9512120129.AA27073@toad.ig.co.uk>
Message-Id: <Pine.OSF.3.91.951212151411.16134A-100000@paul.spu.edu>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 13 Dec 95 1:31:55 GMT]

On Tue, 12 Dec 1995, Tim Bunce wrote:

> To cut a long story short I've decided that we should throw away a
> significant chunk of the work that we've done and reengineer an
> implementation based very strongly around the SQL CLI / ODBC API.

Hooray!!!!  

When will you have it done?  (Just kidding.)

I doubt whether I have the technical skills to contribute much, but I'll 
be following along as best I can.

As I recall, ODBC defines two or three different implementation levels, 
from simple to complex.  Would you expect to follow those?  Or are the 
easier ones too simple to be worth doing by themselves?

You might want to consider abstracting out, somehow, the manor in which you
interface with platform-dependent facilities.  On Win32, for example, I
believe one could go directly to platform-supplied odbc routines from c, or
one could go through an OCX (OLE control).  I assume most Unix platforms
would need a much lower-level interface to ODBC.  If the new api could
gracefully adapt to all these circumstances, that would be a big win. 

--
-- Phil Rand <prand@spu.edu> aka <postmaster@spu.edu>
-- Computer & Information Systems                  (206) 281-2428
-- Seattle Pacific University, 3307 3rd Ave W, Seattle, WA  98119
-- http://paul.spu.edu/~prand/
--

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01795-18@oink>;
          Wed, 13 Dec 1995 07:08:43 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818791956:05257:0; Tue, 12 Dec 95 18:12:36 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa05250;
          12 Dec 95 18:12 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa01963;
          12 Dec 95 16:45 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA06809 for dbi-users-real; Tue, 12 Dec 1995 07:02:13 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA06805 
          for <dbi-users@fugue.com>; Tue, 12 Dec 1995 07:02:08 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ad28990;
          12 Dec 95 15:01 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ac15832;
          12 Dec 95 15:01 GMT
Received: from toad by oink with SMTP (PP) id <08342-0@oink>;
          Tue, 12 Dec 1995 14:52:19 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA29909;
          Tue, 12 Dec 1995 14:51:51 +0000
Date: Tue, 12 Dec 1995 14:51:51 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512121451.AA29909@toad.ig.co.uk>
To: dbi-users@fugue.com, mouche@hometown.com
Subject: Re: Building DBD-0.27 on Solaris/Sparc
X-Sun-Charset: US-ASCII
content-length: 420
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Tue, 12 Dec 95 15:01:34 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Tue, 12 Dec 95 15:01:53 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 16:45:33 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 12 Dec 95 18:12:35 GMT]


> From: Steve Livingston <mouche@hometown.com>
>
> Next Try
> --------
> Found proc.mk on distribution CD and copied to (OH)/proc/lib

Don't do that! You should properly install the whole Pro*C package.

> Warning (non-fatal): Importing of %att is depreciated [PM]
>         use $self instead

Anyone who gets this message and has build problems should upgrade
to the latest MakeMaker available from a CPAN site.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01795-37@oink>;
          Wed, 13 Dec 1995 07:11:45 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818800173:27284:0; Tue, 12 Dec 95 20:29:33 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa27278;
          12 Dec 95 20:29 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa14416;
          12 Dec 95 18:30 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA07208 for dbi-users-real; Tue, 12 Dec 1995 09:12:54 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from ns2.eds.com (ns2.eds.com [199.228.142.78]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA07204 
          for <dbi-users@fugue.com>; Tue, 12 Dec 1995 09:12:53 -0800
Received: by ns2.eds.com (hello) id MAA21964; Tue, 12 Dec 1995 12:12:57 -0500
Received: by nnsp.eds.com (hello) id MAA01786; Tue, 12 Dec 1995 12:12:23 -0500
Received: from falcon (falcon.mmts.eds.com) by geronimo (5.x/SMI.SVR4) 
          id AA09877; Tue, 12 Dec 1995 11:11:06 -0600
Received: by falcon (940816.SGI.8.6.9/940406.SGI) id LAA18736;
          Tue, 12 Dec 1995 11:12:58 -0900
Date: Tue, 12 Dec 1995 11:12:58 -0900
Message-Id: <199512122012.LAA18736@falcon>
To: dbi-users@fugue.com
Subject: can DBI return rows as hashes keyed by column names?
From: Andy Cohan <afc@mmts.eds.com>
X-Attribution: AFC
X-Face: "P!:r4>2dA)dWK/L(NxSG)-Ffvhe/]5y%uxD}zzNJn{omcc&K8oU>ZXTvJQ,.&Z4C}m)m-8 
        mzKkq--xzt@CUf'FIp2^Jz(=Fj,t^rU@TfMex\1V=;+j-=o~bv$h3
Reply-To: afc@mmts.eds.com
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 18:30:31 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 12 Dec 95 20:29:33 GMT]

I'm trying to get our own perl5 DB class to use DBI for an Oracle back end
and I would like to support the Perl5 Sybase facility of optionally
returning rows as associative arrays keyed by the result column names (we
have used it extensively).

Does DBI and DBD::Oracle support this?  If not, is it planned?

AFC

P.S. Please forgive any manifest ignorance; I just started looking at this
stuff yesterday (but I did try all the doco at
http://www.hermetica.com/technologia/DBI)

Andrew F. Cohan                Senior Systems Engineer
afc@mmts.eds.com               Advanced Technology Group
A-(on its way AND LATE)        EDS Internet & New Media Services
Bones heal, Chicks dig scars, Glory is forever, so hook it in!

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01795-45@oink>;
          Wed, 13 Dec 1995 07:13:10 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818804207:07893:0; Tue, 12 Dec 95 21:36:47 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa07887;
          12 Dec 95 21:36 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id msg.aa21923;
          12 Dec 95 19:32 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA07341 for dbi-users-real; Tue, 12 Dec 1995 09:43:37 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from austin.asc.slb.com (PIGPEN-CLEAR.AUSTIN.ASC.SLB.COM [163.185.74.6]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id JAA07337 
          for <dbi-users@fugue.com>; Tue, 12 Dec 1995 09:43:34 -0800
From: guthery@austin.sar.slb.com
Received: from asterix (ASTERIX.AUSTIN.ASC.SLB.COM) 
          by austin.asc.slb.com (4.1/relay.950801a) id AA16297;
          Tue, 12 Dec 95 11:43:00 CST
Received: by asterix (4.1/client.nfs.930922a) id AA24868;
          Tue, 12 Dec 95 11:42:55 CST
Date: Tue, 12 Dec 95 11:42:55 CST
Message-Id: <9512121742.AA24868@asterix>
To: Vern.Martin@bellhow.bellhow.com
Cc: dbi-users@fugue.com, beecher@bellhow.bellhow.com, rich@bellhow.bellhow.com
In-Reply-To: <199512121350.IAA28356@bh2.bellhow.com> (message from Vern Martin on Tue, 12 Dec 1995 08:50:11 -0500 (EST))
Subject: Re: Making oraperl for Solaris
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 19:32:54 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 12 Dec 95 21:36:47 GMT]

The following makefile worked builds oraperl for me on Solaris.  Ignore the ph
stuff.  It just provides access to our ph server from inside oraperl.

# Makefile for Oraperl and Coraperl

# Change these to your ORACLE installation directory and Perl source directory
#
ORACLE_HOME	= /usr/local/oracle-7.0.16
SRC		= /home/ugr0/perl/perl-4.035

# Oracle Definitions, copied from $(ORACLE_HOME)/c/demo/proc.mk
# ALL_ORA_LIBS is the only entry that the Makefile actually uses;
# change it to whatever you need to link Pro*C programs
#
OTHERLIBS	= `cat $(ORACLE_HOME)/rdbms/lib/sysliblist`
CLIBS		= $(OTHERLIBS)
OCILIB		= -locic
NETLIBS		=  $(ORACLE_HOME)/lib/osntab.o -lsqlnet -lnetwork
ORALIBS		= -lora -lcv6 -lcore -lsqlnet -lnlsrtl -lnetwork -lcore

ALL_ORA_LIBS	= -L$(ORACLE_HOME)/lib $(CLIBS) $(OCILIB) $(NETLIBS) $(ORALIBS)

# Perl Definitions, taken from $SRC/usub/Makefile
# Don't include the curses libraries here - they go in CURSELIB
#
GLOBINCS	= 
LOCINCS		= 
LIBS		= `. $(SRC)/config.sh; echo $$libs`

# Oraperl Definition

# Set DEBUG to -DDEBUGGING, -DPERL_DEBUGGING or leave blank (see orafns.h)
# If it is not blank, uncomment the definition of DBUG_O
#
#DEBUG		= -DPERL_DEBUGGING
#DBUG_O		= dbug/dbug.o

# Curses libraries, only required if you want to build Coraperl
# You may also need -ltermlib or -ltermcap
#
CURSELIB	= -lcurses

# Row cache size for SELECT statements.
# If you want to change the default, uncomment this and set the value you want
#
#CACHE		= -DCACHE_SIZE=5

# Bind variable padding.
# If you want binding an empty string to provoke an error, uncomment this line.
#
#BIND		= -DNO_BIND_PADDING

# Some system-specific things
#
# If your system library does not include strtoul, uncomment the next line
STRTOUL	= strtoul.o
#
# If your malloc() returns anything other than a char *, set the appropriate
# type here (don't include the *)
# MALLOC_PTR_TYPE=void
#
# If you are using Perl v3 instead of v4, uncomment the next line
# STR_2MORTAL	= -Dstr_2mortal=str_2static

# Database, username and password to use for testing
#
TESTDATA	= 


#
#	Leave these blank lines so that patches to what is below
#	won't be upset by your changes to the setups above.
#


# From here on, you shouldn't need to change anything. If you do, let me know.

SRCS		= oracle.mus orafns.c getcursor.c colons.c usersub.c \
		  debug.c strtoul.c ph-slb.c ph.c fcrypt.c cryptit.c
OBJS		= oracle.o orafns.o ph-slb.o ph.o fcrypt.o cryptit.o \
                  getcursor.o colons.o debug.o $(STRTOUL)
#OOBJS		= $(OBJS) usersub.o $(DBUG_O) $(ORACLE_HOME)/rdbms/lib/kpundf.o
OOBJS		= $(OBJS) usersub.o $(DBUG_O)
COBJS		= $(OBJS) cusersub.o $(DBUG_O)
HDRS		= patchlevel.h orafns.h
DEFS		= $(STRTOL) $(PUTENV) $(STR_2MORTAL) $(DEBUG) $(CACHE) $(BIND)
CC              = cc
CFLAGS		= -I. -Idbug -I$(SRC) $(GLOBINCS) $(LOCINCS) $(DEFS) -DBUILTIN_CLEAR -DFCNTL_LOCK -DSYSV -DWAIT_INT -DPH -DI_DIRENT -DHASSTRTOK -I.  -DEMAIL_AUTH=\"1\" -DMAILDOMAIN=\"slb.com\" -DFALLBACKPORT=\"105\" -DHOST=\"ph.slb.com\" -DNSSERVICE=\"csnet-ns\" -DFALLBACKADDR=\"163.185.74.8\" 

oraperl: $(SRC)/uperl.o $(OOBJS)
	$(CC) -o oraperl $(SRC)/uperl.o $(OOBJS)			\
	      -lm $(ALL_ORA_LIBS) $(LIBS)

coraperl: $(SRC)/uperl.o $(COBJS) $(SRC)/usub/curses.o
	$(CC) -o coraperl $(SRC)/uperl.o $(COBJS) $(SRC)/usub/curses.o	\
	      -lm $(ALL_ORA_LIBS) $(LIBS) $(CURSELIB)

all:	oraperl coraperl

test:	oraperl
	@oraperl -e '&ora_version'
	@(cd testdir ;							      \
	  rm -f My-Results ;						      \
	  echo "Testing oraperl, please wait ..." ;			      \
	  for i in *.pl	; do ../oraperl $$i $(TESTDATA) ; done > My-Results ; \
	  if cmp -s Standard-Results My-Results ;			      \
	  then echo "Test successful" ;					      \
	  else echo "Test failed - compare My-Results with Standard-Results" ;\
	  fi; echo)

# We use oraperl although perl would suffice, because we know where it is!

install:	oraperl install.pl
	@./oraperl ./install.pl ${SRC}

cusersub.c:	usersub.c
	@rm -f cusersub.c
	ln usersub.c cusersub.c

cusersub.o:	cusersub.c
	$(CC) -c $(CFLAGS) -DCURSES cusersub.c

oracle.c: $(SRC)/usub/mus oracle.mus
	$(SRC)/usub/mus oracle.mus >oracle.c

$(OOBJS) $(COBJS):	$(HDRS)

dbug/dbug.o:
	(cd dbug ; $(MAKE) dbug.o)
	@echo "	(back to main directory)"

clean:
	(cd dbug ; $(MAKE) clean)
	@echo "	(back to main directory)"
	rm -f nohup.out *.o oracle.c cusersub.c
	rm -f testdir/My-Results listing tags core

realclean clobber:	clean
	(cd dbug ; $(MAKE) clobber)
	(cd doc ; $(MAKE) clobber)
	@echo "	(back to main directory)"
	rm -f oraperl coraperl

listing:
	pr -fn Makefile $(HDRS) $(SRCS) >listing

docs:
	(cd doc ; $(MAKE) docs)
	@echo "	(back to main directory)"

shar:	clean
	shar -n oraperl-v2 -a -s kstock@encore.com -F -o :Part -l 64	\
		Readme [C-Q]* Row* [S-z]*
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01928-26@oink>;
          Wed, 13 Dec 1995 07:16:35 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818811461:21110:0; Tue, 12 Dec 95 23:37:41 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa21105;
          12 Dec 95 23:37 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa12957;
          12 Dec 95 18:17 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id FAA06674 for dbi-users-real; Tue, 12 Dec 1995 05:50:48 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from bellhow.bellhow.com (bellhow.bellhow.com [198.30.176.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id FAA06670 
          for <dbi-users@fugue.com>; Tue, 12 Dec 1995 05:50:39 -0800
Received: from bh2.bellhow.com (bh2.bellhow.com [198.30.176.8]) 
          by bellhow.bellhow.com (8.7/8.7) with ESMTP id IAA09311;
          Tue, 12 Dec 1995 08:50:10 -0500 (EST)
From: Vern Martin <Vern.Martin@bellhow.bellhow.com>
Received: (from vern@localhost) by bh2.bellhow.com (8.7/8.7) id IAA28356;
          Tue, 12 Dec 1995 08:50:12 -0500 (EST)
Message-Id: <199512121350.IAA28356@bh2.bellhow.com>
Subject: making oraper for Solaris
To: dbi-users@fugue.com
Date: Tue, 12 Dec 1995 08:50:11 -0500 (EST)
Cc: Bob Beecher <beecher@bellhow.bellhow.com>, 
    Rich Woodland <rich@bellhow.bellhow.com>
X-Mailer: ELM [version 2.4 PL23]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 18:17:49 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 12 Dec 95 23:37:41 GMT]

We have not succeeded in making oraperl on Solaris. Have any of you?
If so, could you send a make file?

.................................

Thanks,

Vern 

-----------------------------------------------------------------------------
Vern.Martin@bellhow.com                              ph. 216-642-9060 x. 6216
-----------------------------------------------------------------------------



---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01928-27@oink>;
          Wed, 13 Dec 1995 07:16:48 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818811484:21345:0; Tue, 12 Dec 95 23:38:04 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa21338;
          12 Dec 95 23:38 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa11104;
          12 Dec 95 18:04 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA07036 for dbi-users-real; Tue, 12 Dec 1995 08:19:47 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from clothos.candle.com (clothos.Candle.Com [204.217.194.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id IAA07032 
          for <dbi-users@fugue.com>; Tue, 12 Dec 1995 08:19:44 -0800
Received: from phobos.Candle.Com by clothos.candle.com with SMTP 
          id AA01078 (5.67b/IDA-1.5 for <dbi-users@fugue.com>);
          Tue, 12 Dec 1995 08:19:29 -0800
Received: from smtpgwy.Candle.Com by phobos.Candle.Com with SMTP 
          id AA12943 (5.67b/IDA-1.5); Tue, 12 Dec 1995 08:19:27 -0800
Received: from ccMail by SMTPGWY.CANDLE.COM (SMTPLINK V2.10.05) id AA818785176;
          Tue, 12 Dec 95 08:12:39 PST
Date: Tue, 12 Dec 95 08:12:39 PST
From: Vendetta Black <vblack@candle.com>
Message-Id: <9511128187.AA818785176@SMTPGWY.CANDLE.COM>
To: dbi-users@fugue.com, Tim Bunce <Tim.Bunce@ig.co.uk>
Subject: Re: Perl5 & informix
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 18:04:16 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 12 Dec 95 23:38:04 GMT]

    You did not mention either the version of AIX or INFORMIX.
    
    perl5.001m compiles cleanly on AIX 3.2.5
    
    If you are using version 6.X  (and likely 7.X) of INFORMIX 
    Add the following libraries:
    
        -lbsd -lmsaa -lc -ltli  (AIX)
    
        /informix/lib/libasf.a
        /informix/lib/netlib.a
        /informix/lib/nettlistub.a

    Also change
     
        /informix/incl

    to
    
        /informix/incl/esql


    Sorry,  I am not very experienced when it comes to PERL so I had to cheat
    and modify Makefile instead of Makefile.PL. :)

      


______________________________ Reply Separator _________________________________
Subject: Perl5 & informix
Author:  Tim Bunce <Tim.Bunce@ig.co.uk> at INTERNET
Date:    12/11/95 7:34 PM


    
----- Begin Included Message -----
    
Date: Mon, 11 Dec 1995 08:51:25 -0500 
From: Bahram Samani <bsamani@iag.net> 
To: Tim.Bunce@ig.co.uk
Subject: Perl5 & informix
X-Url: http://www.hermetica.com/technologia/DBI/
    
We are not able to do a complete make for perl5, informix, 
and AIX, or HPUX at Disney. 
    
Is there a new version of the beta?
    
Thanks!
Bahram
    
----- End Included Message -----
    

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <02010-4@oink>;
          Wed, 13 Dec 1995 07:17:54 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818812313:29484:0; Tue, 12 Dec 95 23:51:53 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa29477;
          12 Dec 95 23:51 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa26493;
          12 Dec 95 20:08 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA07685 for dbi-users-real; Tue, 12 Dec 1995 10:52:20 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from colossus.cse.psu.edu (root@colossus.cse.psu.edu [130.203.1.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id KAA07681 
          for <dbi-users@fugue.com>; Tue, 12 Dec 1995 10:52:15 -0800
Received: from localhost by colossus.cse.psu.edu with SMTP id <78374>;
          Tue, 12 Dec 1995 13:52:05 -0500
X-Mailer: exmh version 1.6.1 5/23/95
To: "Li, Alexander" <AlexLi@msmail.hsii.ccare.com>
cc: DBI User List <dbi-users@fugue.com>
Subject: Re: FW: HELP building DBI-0.65
In-reply-to: Your message of "Mon, 11 Dec 1995 21:03:00 EST." <30CD8EF4@msgw.hsii.ccare.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Tue, 12 Dec 1995 13:51:20 -0500
From: John D Groenveld <groenvel@cse.psu.edu>
Message-Id: <95Dec12.135205est.78374@colossus.cse.psu.edu>
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 12 Dec 95 20:08:10 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 12 Dec 95 23:51:53 GMT]

Perhaps, you should be using perl5.001n and gcc2.7.2?
John
groenvel@cse.psu.edu
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01795-81@oink>;
          Wed, 13 Dec 1995 07:23:33 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818819572:08148:0; Wed, 13 Dec 95 01:52:52 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa07945;
          13 Dec 95 1:52 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Wed, 13 Dec 1995 01:51:35 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA00586 for dbi-announce-real; Tue, 12 Dec 1995 15:42:57 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from paul.spu.edu (Paul.spu.edu [192.190.33.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA00582;
          Tue, 12 Dec 1995 15:42:55 -0800
Received: by paul.spu.edu; (5.65/1.1.8.2/17Sep95-0400PM) id AA18304;
          Tue, 12 Dec 1995 15:39:26 -0800
Date: Tue, 12 Dec 1995 15:39:26 -0800 (PST)
From: Phil Rand <prand@paul.spu.edu>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: dbi-announce@fugue.com, dbi-users@fugue.com, ak@ananke.s.bawue.de, 
    kejin@lithium.empress.com
Subject: Re: New directions for DBI - Important
In-Reply-To: <9512120129.AA27073@toad.ig.co.uk>
Message-Id: <Pine.OSF.3.91.951212151411.16134A-100000@paul.spu.edu>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Wed, 13 Dec 95 1:52:24 GMT]

On Tue, 12 Dec 1995, Tim Bunce wrote:

> To cut a long story short I've decided that we should throw away a
> significant chunk of the work that we've done and reengineer an
> implementation based very strongly around the SQL CLI / ODBC API.

Hooray!!!!  

When will you have it done?  (Just kidding.)

I doubt whether I have the technical skills to contribute much, but I'll 
be following along as best I can.

As I recall, ODBC defines two or three different implementation levels, 
from simple to complex.  Would you expect to follow those?  Or are the 
easier ones too simple to be worth doing by themselves?

You might want to consider abstracting out, somehow, the manor in which you
interface with platform-dependent facilities.  On Win32, for example, I
believe one could go directly to platform-supplied odbc routines from c, or
one could go through an OCX (OLE control).  I assume most Unix platforms
would need a much lower-level interface to ODBC.  If the new api could
gracefully adapt to all these circumstances, that would be a big win. 

--
-- Phil Rand <prand@spu.edu> aka <postmaster@spu.edu>
-- Computer & Information Systems                  (206) 281-2428
-- Seattle Pacific University, 3307 3rd Ave W, Seattle, WA  98119
-- http://paul.spu.edu/~prand/
--

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <02080-5@oink>;
          Wed, 13 Dec 1995 07:25:08 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818826611:29300:0; Wed, 13 Dec 95 03:50:11 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa29297;
          13 Dec 95 3:50 GMT
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id sg.ab01777;
          13 Dec 95 3:20 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Wed, 13 Dec 1995 01:51:35 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA00586 for dbi-announce-real; Tue, 12 Dec 1995 15:42:57 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from paul.spu.edu (Paul.spu.edu [192.190.33.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA00582;
          Tue, 12 Dec 1995 15:42:55 -0800
Received: by paul.spu.edu; (5.65/1.1.8.2/17Sep95-0400PM) id AA18304;
          Tue, 12 Dec 1995 15:39:26 -0800
Date: Tue, 12 Dec 1995 15:39:26 -0800 (PST)
From: Phil Rand <prand@paul.spu.edu>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: dbi-announce@fugue.com, dbi-users@fugue.com, ak@ananke.s.bawue.de, 
    kejin@lithium.empress.com
Subject: Re: New directions for DBI - Important
In-Reply-To: <9512120129.AA27073@toad.ig.co.uk>
Message-Id: <Pine.OSF.3.91.951212151411.16134A-100000@paul.spu.edu>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Wed, 13 Dec 95 3:20:54 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Wed, 13 Dec 95 3:50:10 GMT]

On Tue, 12 Dec 1995, Tim Bunce wrote:

> To cut a long story short I've decided that we should throw away a
> significant chunk of the work that we've done and reengineer an
> implementation based very strongly around the SQL CLI / ODBC API.

Hooray!!!!  

When will you have it done?  (Just kidding.)

I doubt whether I have the technical skills to contribute much, but I'll 
be following along as best I can.

As I recall, ODBC defines two or three different implementation levels, 
from simple to complex.  Would you expect to follow those?  Or are the 
easier ones too simple to be worth doing by themselves?

You might want to consider abstracting out, somehow, the manor in which you
interface with platform-dependent facilities.  On Win32, for example, I
believe one could go directly to platform-supplied odbc routines from c, or
one could go through an OCX (OLE control).  I assume most Unix platforms
would need a much lower-level interface to ODBC.  If the new api could
gracefully adapt to all these circumstances, that would be a big win. 

--
-- Phil Rand <prand@spu.edu> aka <postmaster@spu.edu>
-- Computer & Information Systems                  (206) 281-2428
-- Seattle Pacific University, 3307 3rd Ave W, Seattle, WA  98119
-- http://paul.spu.edu/~prand/
--

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <06541-1@oink>;
          Wed, 13 Dec 1995 13:46:08 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818850387:08639:0; Wed, 13 Dec 95 10:26:27 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id aa08598;
          13 Dec 95 10:26 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Wed, 13 Dec 1995 05:51:22 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA02173 for dbi-users-real; Tue, 12 Dec 1995 20:04:41 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from colossus.cse.psu.edu (root@colossus.cse.psu.edu [130.203.1.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id UAA02169 
          for <dbi-users@fugue.com>; Tue, 12 Dec 1995 20:04:39 -0800
Received: by colossus.cse.psu.edu id <78398>; Tue, 12 Dec 1995 23:04:32 -0500
From: John D Groenveld <groenvel@cse.psu.edu>
To: mouche@hometown.com
Subject: Re: Building DBD-0.27 on Solaris/Sparc...again
Cc: dbi-users@fugue.com
Message-Id: <95Dec12.230432est.78398@colossus.cse.psu.edu>
Date: Tue, 12 Dec 1995 23:04:27 -0500
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Wed, 13 Dec 95 10:26:27 GMT]

I believe there's a note in the package to use gcc instead of ld. Try
make LD=gcc ?
I may be reaching into the fragmented slice of my brain however.
John
groenvel@cse.psu.edu
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <06569-0@oink>;
          Wed, 13 Dec 1995 13:48:31 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818861662:23485:2; Wed, 13 Dec 95 13:34:22 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa23165;
          13 Dec 95 13:33 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id DAA04264 for dbi-users-real; Wed, 13 Dec 1995 03:28:51 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mailhost.onramp.net (mailhost.onramp.net [199.1.11.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id DAA04260 
          for <dbi-users@fugue.com>; Wed, 13 Dec 1995 03:28:49 -0800
Received: from elcaro (elcaro.com [199.1.166.62]) 
          by mailhost.onramp.net (8.6.12/8.6.5) with SMTP id FAA24525;
          Wed, 13 Dec 1995 05:28:52 -0600
Message-ID: <30CEB8D3.414@hometown.com>
Date: Wed, 13 Dec 1995 05:28:19 -0600
From: Steve Livingston <mouche@hometown.com>
X-Mailer: Mozilla 2.0b3 (X11; I; SunOS 5.4 sun4m)
MIME-Version: 1.0
To: dbi-users@fugue.com
CC: Tim.Bunce@ig.co.uk
Subject: Building DBD-0.27 on Solaris 2.4...more
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 13 Dec 95 13:33:37 GMT]

My make (with a new version of ld) for DBD-027 shows:

umask 0 && cp Oraperl.pm ../../lib/Oraperl.pm
umask 0 && cp oraperl.ph ../../lib/oraperl.ph
umask 0 && cp Oracle.pm ../../lib/DBD/Oracle.pm
../../perl -I../../lib -I../../lib ../../lib/ExtUtils/xsubpp -typemap
../../lib/ExtUtils/typemap Oracle.xs >Oracle.tc && mv Oracle.tc Oracle.c
ld -dy /private/slivings/oracle/orahome/lib/crti.o
/private/slivings/oracle/orahome/lib/crt1.o
/private/slivings/oracle/orahome/lib/__fstd.o 
-c  -c Oracle.c -o Oracle.o

ld: cannot open linker script file -c: No such file or directory

Hmm.. looks like "-c  -c Oracle.c" is offensive.  Removing that string
gives undefined references in crt1.o

Any ideas?

Cheers,
Steve
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13872-1@oink>;
          Thu, 14 Dec 1995 12:21:15 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818895841:24634:1; Wed, 13 Dec 95 23:04:01 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa23942;
          13 Dec 95 23:03 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA04728 for dbi-users-real; Wed, 13 Dec 1995 11:22:43 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id LAA04724 
          for <dbi-users@fugue.com>; Wed, 13 Dec 1995 11:22:17 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ab06580;
          13 Dec 95 18:57 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa23714;
          13 Dec 95 18:57 GMT
Received: from toad by oink with SMTP (PP) id <10229-0@oink>;
          Wed, 13 Dec 1995 18:56:47 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA04916;
          Wed, 13 Dec 1995 18:56:21 +0000
Date: Wed, 13 Dec 1995 18:56:21 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512131856.AA04916@toad.ig.co.uk>
To: prand@paul.spu.edu
Subject: Re: New directions for DBI - Important
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 355
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Wed, 13 Dec 95 18:57:04 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Wed, 13 Dec 95 18:57:43 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 13 Dec 95 23:03:14 GMT]


> From: Phil Rand <prand@paul.spu.edu>
> 
> As I recall, ODBC defines two or three different implementation levels, 
> from simple to complex.  Would you expect to follow those?  Or are the 
> easier ones too simple to be worth doing by themselves?

Initially it'll be the API defined by the standard. Other M$ specifics
can be added easily later.

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <13875-3@oink>;
          Thu, 14 Dec 1995 12:22:09 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818896125:26704:1; Wed, 13 Dec 95 23:08:45 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa26395;
          13 Dec 95 23:08 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA04718 for dbi-users-real; Wed, 13 Dec 1995 11:18:30 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id LAA04708 
          for <dbi-users@fugue.com>; Wed, 13 Dec 1995 11:18:07 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ai07454;
          13 Dec 95 19:06 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa26186;
          13 Dec 95 19:05 GMT
Received: from toad by oink with SMTP (PP) id <10322-0@oink>;
          Wed, 13 Dec 1995 19:05:32 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA04939;
          Wed, 13 Dec 1995 19:05:05 +0000
Date: Wed, 13 Dec 1995 19:05:05 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512131905.AA04939@toad.ig.co.uk>
To: dbi-users@fugue.com, afc@mmts.eds.com
Subject: Re: can DBI return rows as hashes keyed by column names?
X-Sun-Charset: US-ASCII
content-length: 448
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Wed, 13 Dec 95 19:05:50 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Wed, 13 Dec 95 19:06:16 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Wed, 13 Dec 95 23:08:12 GMT]


> From: Andy Cohan <afc@mmts.eds.com>
> 
> I'm trying to get our own perl5 DB class to use DBI for an Oracle back end
> and I would like to support the Perl5 Sybase facility of optionally
> returning rows as associative arrays keyed by the result column names (we
> have used it extensively).
> 
> Does DBI and DBD::Oracle support this?  If not, is it planned?


	@fieldnames = (...);

	while(@hash{@fieldnames} = $sth->fetchrow) {
		...
	}

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13872-33@oink>;
          Thu, 14 Dec 1995 12:24:27 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818908932:25699:1; Thu, 14 Dec 95 02:42:12 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa25583;
          14 Dec 95 2:41 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA00788 for dbi-users-real; Wed, 13 Dec 1995 16:47:28 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from CHILD.PRODIGY.CS.CMU.EDU (CHILD.PRODIGY.CS.CMU.EDU [128.2.242.220]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id QAA00784 
          for <dbi-users@fugue.com>; Wed, 13 Dec 1995 16:47:26 -0800
Received: from [127.0.0.1] by CHILD.PRODIGY.CS.CMU.EDU id aa27486;
          13 Dec 95 19:47 EST
Reply-To: desilva+@cmu.edu
To: dbi-users@fugue.com
Subject: Oraperl: Updating LONG RAWs
Date: Wed, 13 Dec 1995 19:47:13 -0500
Message-ID: <27484.818902033@CHILD.PRODIGY.CS.CMU.EDU>
From: Rujith de Silva <Rujith_S_DeSilva@CHILD.PRODIGY.CS.CMU.EDU>
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 14 Dec 95 2:41:53 GMT]

-----BEGIN PGP SIGNED MESSAGE-----

How does one insert or update LONG RAWs using Oraperl?  I've found a way to
do it by converting the data into a hex string, but that only works if the
hex string doesn't come out longer than 2000 characters.  There's got to be
a better way.

What I've found so far:

$ora_long = 500000;             # Dunno if this has any effect on UPDATEs.

if ($types[0] == 24)            # LONG RAW data
{
    my $newdata = "";
    foreach (unpack ('C*', $data)) # Convert it to hex format.
    {
        $newdata .= sprintf ("%2.2x", $_); # Ain't Perl great!
    }
    $data = $newdata;
}

my $stmt = "UPDATE $table_name SET $field_name = :1";
$stmt .= " WHERE $where_clause" if $where_clause;

$csr = ora_open ($lda, $stmt);
ora_bind ($csr, $data);
ora_close ($csr);

All information appreciated.

Later,
Rujith.

Rujith de Silva.  1-(412) 268-3620.  desilva+@cmu.edu
http://www.cs.cmu.edu/~desilva/
PGP public key available by finger.

-----BEGIN PGP SIGNATURE-----
Version: 2.6.2

iQCUAwUBMM90CokharavxuYRAQFytwP1GPjI51wW0FctqMzUfhj6KUjMDYoelQR3
Bt61+JWB4GDh94eFkhF6xLAJ7UQ3nMWx1+WOSKRh1k94tZo32xIpOI8GjQN+1+kz
Qdu1///+qAbDOg3e5PO3HZ5U3F4+uc8EhJJmFvNIDRwIDOa6ZULZUxv/Ucu6Z/wu
Uuov+sS3GQ==
=cb5e
-----END PGP SIGNATURE-----
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13872-39@oink>;
          Thu, 14 Dec 1995 12:24:55 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818911028:07751:0; Thu, 14 Dec 95 03:17:08 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa07273;
          14 Dec 95 3:16 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA00932 for dbi-users-real; Wed, 13 Dec 1995 17:59:33 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from metronet.com (root@mail.metronet.com [192.245.137.6]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id RAA00928 
          for <dbi-users@fugue.com>; Wed, 13 Dec 1995 17:59:30 -0800
Received: from hometown.com by metronet.com with SMTP 
          id AA19589 (5.67a/IDA1.5hp for <dbi-users@fugue.com>);
          Wed, 13 Dec 1995 19:59:16 -0600
Message-Id: <199512140159.AA19589@metronet.com>
X-Sender: mouche@mail.metronet.com
X-Mailer: Windows Eudora Version 2.1
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Wed, 13 Dec 1995 19:55:17 -0600
To: dbi-users@fugue.com
From: Steve Livingston <mouche@hometown.com>
Subject: Re: Building DBD-0.27 on Solaris/Sparc
Cc: Tim.Bunce@ig.co.uk
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 14 Dec 95 3:16:09 GMT]

Well...I've started from scratch:
       Fresh install of Oracle 7 beta (including Pro*C)
       Installed SUNWspro compiler (no longer using gcc)
       Fresh install of perl5.001n with cc
       Re-built DBI-0.65

When installing DBD-0.27:
       make realclean
       perl Makefile.PL
       make (?)

The make, shown below, gives up on the same ld statement as before.

I've had folks with more Unix skills than I look at:
        Makefile
        proc.mk
        env_precomp.mk
        ...and everything else

They say that this ld statement is odd, and perhaps it should be a cc...but
to ask you folks.

Ideas?  Has anyone installed DBD-0.27 with O7beta?

Cheers,
Steve

--------------
elcaro% make
umask 0 && cp Oraperl.pm ../../lib/Oraperl.pm
umask 0 && cp oraperl.ph ../../lib/oraperl.ph
umask 0 && cp Oracle.pm ../../lib/DBD/Oracle.pm
../../perl -I../../lib -I../../lib ../../lib/ExtUtils/xsubpp -typemap
../../lib/ExtUtils/typemap Oracle.xs >Oracle.tc && mv Oracle.tc Oracle.c
ld -dy /private/slivings/oracle/orahome/lib/crti.o
/private/slivings/oracle/orahome/lib/crt1.o
/private/slivings/oracle/orahome/lib/__fstd.o -c  -c Oracle.c -o Oracle.o
ld: illegal option -- c
ld: illegal option -- c
usage: ld [-abd:e:h:il:mo:rstu:z:B:D:F:GI:L:M:Q:R:S:VY:] file(s) ...
        [-a]            create an absolute file
        [-b]            do not do special PIC relocations in a.out
        [-d y|n]        operate in dynamic|static mode
        ...
make: *** [Oracle.o] Error 1
---------------

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <14113-3@oink>;
          Thu, 14 Dec 1995 12:28:09 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818922307:09326:0; Thu, 14 Dec 95 06:25:07 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa09193;
          14 Dec 95 6:24 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA01379 for dbi-users-real; Wed, 13 Dec 1995 20:42:13 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id UAA01375 
          for <dbi-users@fugue.com>; Wed, 13 Dec 1995 20:42:11 -0800
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.86.169]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id WAA54463;
          Wed, 13 Dec 1995 22:42:13 -0600
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for prand@paul.spu.edu at austin.ibm.com; id AA23918;
          Wed, 13 Dec 1995 22:42:10 -0600
Message-Id: <9512140442.AA23918@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: prand@paul.spu.edu, dbi-users@fugue.com
Subject: Re: New directions for DBI - Important
In-Reply-To: Your message of Wed, 13 Dec 95 18:56:21 +0000. <9512131856.AA04916@toad.ig.co.uk>
Date: Wed, 13 Dec 95 22:42:10 -0600
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 14 Dec 95 6:24:38 GMT]


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|>> From: Phil Rand <prand@paul.spu.edu>
|>> 
|>> As I recall, ODBC defines two or three different implementation levels, 
|>> from simple to complex.  Would you expect to follow those?  Or are the 
|>> easier ones too simple to be worth doing by themselves?
|>
|>Initially it'll be the API defined by the standard. Other M$ specifics
|>can be added easily later.
|>

I would suggest mimicking the SQL CLI standard which has a Core level,
Level 1, and Level 2 compliance.  This would give a nice level of 
flexibility to the end user, as he would only have to "use" the 
level sufficient to get his desired functionality.

Mike
mhm@austin.ibm.com
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <13872-63@oink>;
          Thu, 14 Dec 1995 12:29:06 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818934618:29896:4; Thu, 14 Dec 95 09:50:18 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa29722;
          14 Dec 95 9:49 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id XAA01724 for dbi-users-real; Wed, 13 Dec 1995 23:36:36 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from auspex-gw.auspex.com (auspex-gw.auspex.com [144.48.1.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id XAA01720 
          for <dbi-users@fugue.com>; Wed, 13 Dec 1995 23:36:34 -0800
Received: from auspex.Auspex.com (auspex-e6.auspex.com [144.48.8.10]) 
          by auspex-gw.auspex.com (8.6.12/8.6.12) with SMTP id XAA06043;
          Wed, 13 Dec 1995 23:36:40 -0800
Received: from alpha1 by auspex.Auspex.com (4.1/SMI-4.1) id AA15221;
          Wed, 13 Dec 95 23:36:39 PST
Date: Wed, 13 Dec 95 23:36:39 PST
From: kstock@auspex.com (Kevin Stock)
Message-Id: <9512140736.AA15221@auspex.Auspex.com>
Reply-To: kstock@auspex.com
To: dbi-users@fugue.com
Subject: Re: Oraperl: Updating LONG RAWs
Cc: Rujith_S_DeSilva@CHILD.PRODIGY.CS.CMU.EDU
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 14 Dec 95 9:49:45 GMT]

> How does one insert or update LONG RAWs using Oraperl?  I've found a way to
> do it by converting the data into a hex string, but that only works if the
> hex string doesn't come out longer than 2000 characters.  There's got to be
> a better way.

I hate to admit it, but the 'better way' is to fix Oraperl. As I never
used RAW data, I didn't test Oraperl with it, and just assumed (that
terrible word) that the conversion to string would work. Someone did
send me some patches to make Oraperl work with RAW data, but as I don't
have access to Oracle any more, I'm not in a position to make a new
release.

If someone wants to develop and release patches for this, I'd be more
than happy to offer any help I can.

	Kevin

P.S.: 
> $ora_long = 500000;             # Dunno if this has any effect on UPDATEs.

It hasn't. $ora_long is only used to allocate a buffer for fetching
data.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <18521-18@oink>;
          Thu, 14 Dec 1995 19:31:08 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818965774:22792:0; Thu, 14 Dec 95 18:29:34 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa22303;
          14 Dec 95 18:28 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id msg.aa07905;
          14 Dec 95 18:00 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA03559 for dbi-users-real; Thu, 14 Dec 1995 06:42:18 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id GAA03555 
          for <dbi-users@fugue.com>; Thu, 14 Dec 1995 06:42:12 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id msg.aa13542;
          14 Dec 95 14:38 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ad05647;
          14 Dec 95 14:37 GMT
Received: from toad by oink with SMTP (PP) id <16030-0@oink>;
          Thu, 14 Dec 1995 14:23:56 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA08814;
          Thu, 14 Dec 1995 14:23:29 +0000
Date: Thu, 14 Dec 1995 14:23:29 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512141423.AA08814@toad.ig.co.uk>
To: dbi-users@fugue.com, desilva+@cmu.edu
Subject: Re: Oraperl: Updating LONG RAWs
X-Sun-Charset: US-ASCII
content-length: 649
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Thu, 14 Dec 95 14:37:47 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Thu, 14 Dec 95 14:38:26 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 14 Dec 95 18:00:47 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Thu, 14 Dec 95 18:28:32 GMT]


> From: Rujith de Silva <Rujith_S_DeSilva@CHILD.PRODIGY.CS.CMU.EDU>
> 
> -----BEGIN PGP SIGNED MESSAGE-----
> 
> How does one insert or update LONG RAWs using Oraperl?  I've found a way to
> do it by converting the data into a hex string, but that only works if the
> hex string doesn't come out longer than 2000 characters.  There's got to be
> a better way.

Recent versions of DBD::Oracle may help.

>     foreach (unpack ('C*', $data)) # Convert it to hex format.
>     {
>         $newdata .= sprintf ("%2.2x", $_); # Ain't Perl great!
>     }

Using push and a later join or a s/(.)/sprintf("%2.2x",$1)/e
would probably be faster here.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <19660-0@oink>;
          Thu, 14 Dec 1995 20:12:22 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818969771:25780:2; Thu, 14 Dec 95 19:36:11 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa25683;
          14 Dec 95 19:35 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id sg.aa12362;
          14 Dec 95 19:02 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA03592 for dbi-users-real; Thu, 14 Dec 1995 07:03:01 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA03588 
          for <dbi-users@fugue.com>; Thu, 14 Dec 1995 07:02:41 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id g.af13523;
          14 Dec 95 14:38 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ac05647;
          14 Dec 95 14:37 GMT
Received: from toad by oink with SMTP (PP) id <16021-0@oink>;
          Thu, 14 Dec 1995 14:21:23 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA08808;
          Thu, 14 Dec 1995 14:20:56 +0000
Date: Thu, 14 Dec 1995 14:20:56 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512141420.AA08808@toad.ig.co.uk>
To: dbi-users@fugue.com, mouche@hometown.com
Subject: Re: Building DBD-0.27 on Solaris/Sparc
X-Sun-Charset: US-ASCII
content-length: 415
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Thu, 14 Dec 95 14:37:45 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Thu, 14 Dec 95 14:38:28 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 14 Dec 95 19:02:20 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Thu, 14 Dec 95 19:35:49 GMT]


> From: Steve Livingston <mouche@hometown.com>
> 
> The make, shown below, gives up on the same ld statement as before.
> 
> They say that this ld statement is odd, and perhaps it should be a cc...but
> to ask you folks.
> 
> Ideas?  Has anyone installed DBD-0.27 with O7beta?

I'd guess that the very early proc.mk is causing the problem.
Perhaps you'll need to upgrade  - the beta had many other problems.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <20271-3@oink>;
          Thu, 14 Dec 1995 20:40:05 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818973076:22584:0; Thu, 14 Dec 95 20:31:16 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa22199;
          14 Dec 95 20:30 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA04035 for dbi-dev-real; Thu, 14 Dec 1995 10:16:12 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from emerald.empress.com (emerald.empress.com [192.43.219.6]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA04031;
          Thu, 14 Dec 1995 10:16:07 -0800
Received: (from fjones@localhost) by emerald.empress.com (8.6.11/8.6.9) 
          id NAA08386; Thu, 14 Dec 1995 13:17:40 -0500
From: Francis Jones <fjones@empress.com>
Message-Id: <199512141817.NAA08386@emerald.empress.com>
Subject: Re: New directions for DBI - Important
To: dbi-dev@fugue.com
Date: Thu, 14 Dec 1995 13:17:38 -0500 (EST)
Cc: dvi-users@fugue.com
In-Reply-To: <9512140442.AA23918@dax.austin.ibm.com> from "mhm@austin.ibm.com" at Dec 13, 95 10:42:10 pm
X-Mailer: ELM [version 2.4 PL24]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 3650
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 14 Dec 95 20:30:36 GMT]

Hello all, here are my thoughts on the proposed ODBC project:

ODBC offers "core", "level 1" and "level 2" compliance levels, and
these offer increasingly more complex functionality.  As far as a
perl interface is concerned, my feeling is that if you are going to
call the new interface 'ODBC', then you should offer complete packages
at successive levels.  i.e., you can offer the core, core + level 1, etc.
packages. These can be developed over time, with 'core' coming first.
I don't think it is reasonable to detract from or augment the standard
set of "ODBC" calls.  After all, they are a well-defined standard which many
people are becoming proficient with, and which (unlike the current perl
DB interface) offers a well-defined response even to 'unsupported'
features of any particular DB engine.   So, for this part of the work,
it looks pretty straight-forward.  Just offer _all_ the ODBC calls in
whichever levels it is desired to support.  There is no further work
needed to support any particular DB vendor, since they will have already
created their own ODBC drivers which handle all the various ODBC calls
in whatever fashion is appropriate for them.

But, this doesn't mean that we shouldn't _also_ offer some sort of 
composite functionality.  This is more difficult, since it involves
trying to establish consensus amongst the perl user community.  But,
we could start with the perl DB interface document which seems to have 
been floating around for some time now, and then hash it out from there.

The underlying code would contain ODBC calls to do the low level DB
operations.  The technical difficulty with this is that, even though a 
given DB vendor may be listed as 'Level 1' compliant, and even if the
level of compliance can be determined by one of these composite routines,
the problem is that lots of ODBC calls have lots of options.  These
options refine the requests for information, actions, etc., and may not
be possible with one DB vs. another DB.  However, in all cases the
DB driver must respond with a message indicating things like "Operations
unsupported", "Operation failed", "Operation succeeded", "Operation
succeeded but with parameters other than those supplied; look in the
standard place for further information", ...  and so on.  All of these
responses are fixed in the ODBC standard.  

So, while the ODBC calls themselves are straight-forward to implement,
and should be a universal set of functions, the 'composite' functionality 
akin to the existing perl DB  interface might be difficult to develop
if a too-ambitious set of composite functions were attempted.  It would
be highly desirable to have, for each 'composite' DB function, a routine
which called ODBC underneath, and which was aware of the different
characteristics of ODBC implementations by different vendors, and which
handled all the exceptional responses from the ODBC servers in a sane
manner.  I do _not_ advocate having a different routine (e.g.,
to do a high-level 'fetch') tuned for each DB vendor, since this will
probably not lead to the universality that ODBC is aimed at.

In my opinion, the current DB interface suffers somewhat from
the fact that the interfaces for the various DB vendors currently
on offer have different sets of interface routines which
are maintained in different source trees.  These seem to have
deviated from the published standard somewhat (either by omission,
addition, or quirks in DB vendor functionality), so that perl programs 
written for one DB engine can't be guaranteed to work with another.  
This needs to be considered carefully.

So, there's _my_ $0.02 worth.

Cheers,

Francis Jones

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <21186-10@oink>;
          Thu, 14 Dec 1995 23:40:49 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818976242:18208:0; Thu, 14 Dec 95 21:24:02 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa17779;
          14 Dec 95 21:23 GMT
Received: from toccata.fugue.com by relay-1.mail.demon.net id g.aa22886;
          14 Dec 95 21:18 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA04100 for dbi-users-real; Thu, 14 Dec 1995 10:48:11 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from emerald.empress.com (emerald.empress.com [192.43.219.6]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA04096 
          for <dbi-users@fugue.com>; Thu, 14 Dec 1995 10:48:06 -0800
Received: (from fjones@localhost) by emerald.empress.com (8.6.11/8.6.9) 
          id NAA08459 for dbi-users@fugue.com; Thu, 14 Dec 1995 13:49:44 -0500
From: Francis Jones <fjones@empress.com>
Message-Id: <199512141849.NAA08459@emerald.empress.com>
Subject: Re: New directions for DBI - Important
To: dbi-users@fugue.com
Date: Thu, 14 Dec 1995 13:49:43 -0500 (EST)
X-Mailer: ELM [version 2.4 PL24]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 3696
X-SMTP-Posting-Host: toccata.fugue.com [Thu, 14 Dec 95 21:18:36 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Thu, 14 Dec 95 21:23:06 GMT]

Hello all, 

here are my thoughts on the proposed ODBC project:

ODBC offers "core", "level 1" and "level 2" compliance levels, and
these offer increasingly more complex functionality.  As far as a
perl interface is concerned, my feeling is that if you are going to
call the new interface 'ODBC', then you should offer complete packages
at successive levels.  i.e., you can offer the core, core + level 1, etc.
packages. These can be developed over time, with 'core' coming first.
I don't think it is reasonable to detract from or augment the standard
set of "ODBC" calls.  After all, they are a well-defined standard which many
people are becoming proficient with, and which (unlike the current perl
DB interface) offers a well-defined response even to 'unsupported'
features of any particular DB engine.   So, for this part of the work,
it looks pretty straight-forward.  Just offer _all_ the ODBC calls in
whichever levels it is desired to support.  There is no further work
needed to support any particular DB vendor, since they will have already
created their own ODBC drivers which handle all the various ODBC calls
in whatever fashion is appropriate for them.

But, this doesn't mean that we shouldn't _also_ offer some sort of 
composite functionality.  This is more difficult, since it involves
trying to establish consensus amongst the perl user community.  But,
we could start with the perl DB interface document which seems to have 
been floating around for some time now, and then hash it out from there.

The underlying code would contain ODBC calls to do the low level DB
operations.  The technical difficulty with this is that, even though a 
given DB vendor may be listed as 'Level 1' compliant, and even if the
level of compliance can be determined by one of these composite routines,
the problem is that lots of ODBC calls have lots of options.  These
options refine the requests for information, actions, etc., and may not
be possible with one DB vs. another DB.  However, in all cases the
DB driver must respond with a message indicating things like "Operations
unsupported", "Operation failed", "Operation succeeded", "Operation
succeeded but with parameters other than those supplied; look in the
standard place for further information", ...  and so on.  All of these
responses are fixed in the ODBC standard.  

So, while the ODBC calls themselves are straight-forward to implement,
and should be a universal set of functions, the 'composite' functionality 
akin to the existing perl DB  interface might be difficult to develop
if a too-ambitious set of composite functions were attempted.  It would
be highly desirable to have, for each 'composite' DB function, a routine
which called ODBC underneath, and which was aware of the different
characteristics of ODBC implementations by different vendors, and which
handled all the exceptional responses from the ODBC servers in a sane
manner.  I do _not_ advocate having a different routine (e.g.,
to do a high-level 'fetch') tuned for each DB vendor, since this will
probably not lead to the universality that ODBC is aimed at.

In my opinion, the current DB interface suffers somewhat from
the fact that the interfaces for the various DB vendors currently
on offer have different sets of interface routines which
are maintained in different source trees.  These seem to have
deviated from the published standard somewhat (either by omission,
addition, or quirks in DB vendor functionality), so that perl programs 
written for one DB engine can't be guaranteed to work with another.  
This needs to be considered carefully.

So, there's _my_ $0.02 worth.

Cheers,

Francis Jones


--NAA08388.818965121/emerald.empress.com--
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <21185-17@oink>;
          Thu, 14 Dec 1995 23:41:37 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 818983537:10165:0; Thu, 14 Dec 95 23:25:37 GMT
Received: from frigate.doc.ic.ac.uk by punt-2.mail.demon.net id ai09447;
          14 Dec 95 23:24 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Thu, 14 Dec 1995 22:29:08 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA04394 for dbi-users-real; Thu, 14 Dec 1995 12:13:00 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mail.crl.com (mail.crl.com [165.113.1.22]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id MAA04389 
          for <dbi-users@fugue.com>; Thu, 14 Dec 1995 12:12:58 -0800
Received: from [205.149.164.200] (rmdudley.vip.best.com) by mail.crl.com 
          with SMTP id AA00589 (5.65c/IDA-1.5 for <dbi-users@fugue.com>);
          Thu, 14 Dec 1995 12:10:42 -0800
Date: Thu, 14 Dec 1995 12:10:42 -0800
X-Sender: mrlizard@mail.crl.com
Message-Id: <acf5c1b8000210047b2d@[205.149.164.200]>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
To: dbi-users@fugue.com
From: mrlizard@crl.com (Brian Valente)
Subject: DBD core dumping
Cc: descarte@hermetica.com
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Thu, 14 Dec 95 23:24:45 GMT]

If there's still anyone out there who can help-

I've run into unfortunate problems with DBI 0.65, DBD mSQL 0.18, and perl5.001n.

Here's the setup


  ---Machine 1---               ---Machine 2---
   SGI/IRIX 5.3                   FreeBSD 2.2
  msqld running                DBD/DBI->msql installed
  fine on machine              web server running here

Here's the situation:

Machine #1 - msqld running fine - can use msql monitor to access server no
problem.  DBD/DBI->msql libraries installed as test, and test script runs
fine (both mine and the supplied one).

Machine #2 - can use msql monitor to connect to machine #1 fine. Everything
works okay.  Ran test script for DBD/DBI->msql installation - everything's
fine.

However, when I run my own test script (same one that works fine on machine
#1),  I get a perl5.001 core dump:

[ output from error checking code, so I know driver is installed okay ]

$drh after install driver is DBI::dr=HASH(0xa6bdc)



[my own error output ]

Sorry, an Error Occured
For some reason, your request failed.
The error code reported was:
Couldn't connect to db ctiregistry
DBD internal error codes are:
IOT trap (core dumped)


Here is a code fragment from my script:

        $drh = DBI->install_driver($driver);
        &HandleError("Couldn't install driver $driver") unless $drh;
        print $OUTPUT "\$drh after install driver is $drh\n" if $DEBUG;

#        DBI->internal->{DebugDispatch} = 0; (commented out the debug stuff)
#        DBI->internal->debug(2);

DEATH   $dbh = $drh->connect( $hostname, $db );
        &HandleError("Couldn't connect to db $db") unless $dbh;
        print $OUTPUT "\$dbh after connect is $dbh\n" if $DEBUG;


I am running version 1.0.10 of msqld
Version 0.65 of DBD
Version p.018 of mSQL driver.

If there is a god, please help me!  I have the core dump if someone needs it.

Thanks,

Brian Valente

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

Brian Valente                   | brian_valente@rmdudley.com
R.M. Dudley Corporation         | mrlizard@crl.com
1799 Old Bayshore Suite 200     | http://www.rmdudley.com
Burlingame, CA 94010            | 415-697-1650 tel. 415-697-1816 fax.
===========================================================================



---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <23887-28@oink>;
          Fri, 15 Dec 1995 07:09:40 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819002690:16438:0; Fri, 15 Dec 95 04:44:50 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa16102;
          15 Dec 95 4:43 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id TAA06341 for dbi-users-real; Thu, 14 Dec 1995 19:00:50 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from grctechs.va.grci.com (grctechs.va.grci.com [192.246.37.10]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id TAA06337 
          for <dbi-users@fugue.com>; Thu, 14 Dec 1995 19:00:42 -0800
Received: by grctechs.va.grci.com (5.65/25-eef) id AA26807;
          Thu, 14 Dec 95 21:37:29 -0500
My-Date: Thu, 14 Dec 1995 21:37:28 -0500 (EST)
My-From: Greg Gerber <ggerber@grctechs.va.grci.com>
X-Full-Name: Greg Gerber
Date: Thu, 14 Dec 1995 21:37:28 -0500 (EST)
From: Greg Gerber <ggerber@grctechs.va.grci.com>
To: Kevin Stock <kstock@auspex.com>
Cc: dbi-users@fugue.com, Rujith_S_DeSilva@CHILD.PRODIGY.CS.CMU.EDU
Subject: Re: Oraperl: Updating LONG RAWs
In-Reply-To: <9512140736.AA15221@auspex.Auspex.com>
Message-Id: <Pine.SCO.3.91.951214213219.26798C-100000@grctechs.va.grci.com>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-SMTP-Posting-Host: toccata.fugue.com [Fri, 15 Dec 95 4:44:26 GMT]



On Wed, 13 Dec 1995, Kevin Stock wrote:

> > How does one insert or update LONG RAWs using Oraperl?  I've found a way to
> > do it by converting the data into a hex string, but that only works if the
> > hex string doesn't come out longer than 2000 characters.  There's got to be
> > a better way.
> 
> I hate to admit it, but the 'better way' is to fix Oraperl. As I never
> used RAW data, I didn't test Oraperl with it, and just assumed (that
> terrible word) that the conversion to string would work. Someone did
> send me some patches to make Oraperl work with RAW data, but as I don't
> have access to Oracle any more, I'm not in a position to make a new
> release.
> 
> If someone wants to develop and release patches for this, I'd be more
> than happy to offer any help I can.
> 

Don't know if this is what Kevin is refering to, but I did send him patches
for long raws several weeks ago, that version had a small bug and I have
a new version.  I'll release it (here and to comp.lang.perl I guess) as
soon as I have a chance to wrap it up.  All I need is just a little more 
time ... :(

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <29897-6@oink>;
          Fri, 15 Dec 1995 19:33:52 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819053345:26546:3; Fri, 15 Dec 95 18:49:05 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa26353;
          15 Dec 95 18:48 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA09320 for dbi-users-real; Fri, 15 Dec 1995 09:40:39 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id JAA09316 
          for <dbi-users@fugue.com>; Fri, 15 Dec 1995 09:40:08 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.aj13293;
          15 Dec 95 17:03 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id msg.ab00102;
          15 Dec 95 17:01 GMT
Received: from toad by oink with SMTP (PP) id <27423-0@oink>;
          Fri, 15 Dec 1995 14:45:12 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA17786;
          Fri, 15 Dec 1995 14:44:41 +0000
Date: Fri, 15 Dec 1995 14:44:41 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512151444.AA17786@toad.ig.co.uk>
To: kstock@auspex.com, ggerber@grctechs.va.grci.com
Subject: Re: Oraperl: Updating LONG RAWs
Cc: dbi-users@fugue.com, Rujith_S_DeSilva@child.prodigy.cs.cmu.edu
X-Sun-Charset: US-ASCII
content-length: 1329
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Fri, 15 Dec 95 17:01:18 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Fri, 15 Dec 95 17:03:18 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Fri, 15 Dec 95 18:48:36 GMT]


> From: Greg Gerber <ggerber@grctechs.va.grci.com>
> 
> On Wed, 13 Dec 1995, Kevin Stock wrote:
> 
> > > How does one insert or update LONG RAWs using Oraperl?  I've found a way to
> > > do it by converting the data into a hex string, but that only works if the
> > > hex string doesn't come out longer than 2000 characters.  There's got to be
> > > a better way.
> > 
> > I hate to admit it, but the 'better way' is to fix Oraperl. As I never
> > used RAW data, I didn't test Oraperl with it, and just assumed (that
> > terrible word) that the conversion to string would work. Someone did
> > send me some patches to make Oraperl work with RAW data, but as I don't
> > have access to Oracle any more, I'm not in a position to make a new
> > release.
> > 
> > If someone wants to develop and release patches for this, I'd be more
> > than happy to offer any help I can.
> > 
> 
> Don't know if this is what Kevin is refering to, but I did send him patches
> for long raws several weeks ago, that version had a small bug and I have
> a new version.  I'll release it (here and to comp.lang.perl I guess) as
> soon as I have a chance to wrap it up.  All I need is just a little more 
> time ... :(

You could send it to me and I'll add it to the oraperl archive on
ftp.demon.co.uk (which is back now and soon to be updated).

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <02860-2@oink>;
          Sat, 16 Dec 1995 01:21:42 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819072650:10255:0; Sat, 16 Dec 95 00:10:50 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa09906;
          16 Dec 95 0:10 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA10164 for dbi-users-real; Fri, 15 Dec 1995 14:25:56 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from monge.brunel.ac.uk (pp@monge.brunel.ac.uk [134.83.72.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id OAA10160 
          for <dbi-users@fugue.com>; Fri, 15 Dec 1995 14:25:51 -0800
From: cs92bbm@brunel.ac.uk
Received: from ccsp-28.brunel.ac.uk by monge.brunel.ac.uk with SMTP (PP) 
          id <17769-0@monge.brunel.ac.uk>; Fri, 15 Dec 1995 22:25:29 +0000
Message-Id: <8496.9512152225@ccsp-28.brunel.ac.uk>
Subject: mSQL-1.0.10, DBI-0.65, DBD-0.60pl8
To: dbi-users@fugue.com
Date: Fri, 15 Dec 1995 22:25:27 +0000 (GMT)
X-Mailer: ELM [version 2.4 PL24]
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
X-SMTP-Posting-Host: toccata.fugue.com [Sat, 16 Dec 95 0:10:13 GMT]

Hello...

I am getting a number of spurrious errors, but they are not stopping
fuctionality... presumaeably I can simply ignore them?

disconnect(DBI::db=HASH(0x314a00)) invalidates 1 associated cursor(s) at ...
Statement handle DBI::st=HASH(0x314b8c) destroyed without finish() at ...

Any ideas?

Ben

[ Ben Middleton            cs92bbm@brunel.ac.uk ]
[     Interact with global communication at     ]
[ http://www.brunel.ac.uk:8080/~cs92bbm/gc.html ]

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <03299-0@oink>;
          Sat, 16 Dec 1995 01:41:15 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819077391:15198:0; Sat, 16 Dec 95 01:29:51 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa14886;
          16 Dec 95 1:29 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA10308 for dbi-users-real; Fri, 15 Dec 1995 15:46:49 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from lancelot.st.nepean.uws.edu.au (lancelot.st.nepean.uws.EDU.AU [137.154.148.30]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA10302 
          for <dbi-users@fugue.com>; Fri, 15 Dec 1995 15:46:29 -0800
Received: from arthur.st.nepean.uws.edu.au (arthur) 
          by lancelot.st.nepean.uws.edu.au with SMTP id AA25569 (5.65c/IDA-1.5 
          for <dbi-users@fugue.com>); Sat, 16 Dec 1995 10:45:52 +1100
Received: by arthur.st.nepean.uws.edu.au id AA20240 (5.65c/IDA-1.4.4);
          Sat, 16 Dec 1995 10:45:29 +1100
Date: Sat, 16 Dec 1995 10:45:29 +1100 (EST)
From: David Begley <dbegley@st.nepean.uws.edu.au>
X-Sender: dbegley@arthur
To: cs92bbm@brunel.ac.uk
Cc: dbi-users@fugue.com
Subject: Re: mSQL-1.0.10, DBI-0.65, DBD-0.60pl8
In-Reply-To: <8496.9512152225@ccsp-28.brunel.ac.uk>
Message-Id: <Pine.ULT.3.91.951216104321.20192B-100000@arthur>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-SMTP-Posting-Host: toccata.fugue.com [Sat, 16 Dec 95 1:29:02 GMT]

On Fri, 15 Dec 1995 cs92bbm@brunel.ac.uk wrote:

> I am getting a number of spurrious errors, but they are not stopping
> fuctionality... presumaeably I can simply ignore them?

Similarly, I'm getting "Bad free ignored..." whenever &ora_logoff is 
called in the Oraperl emulation module;  ideas?


dave
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <03299-1@oink>;
          Sat, 16 Dec 1995 01:41:18 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819077394:15202:1; Sat, 16 Dec 95 01:29:54 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa15012;
          16 Dec 95 1:29 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA10419 for dbi-users-real; Fri, 15 Dec 1995 16:14:40 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id QAA10415 
          for <dbi-users@fugue.com>; Fri, 15 Dec 1995 16:14:38 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id AAA06420; Sat, 16 Dec 1995 00:08:40 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199512160008.AAA06420@fruitbat.mcqueen.com>
Subject: Re: mSQL-1.0.10, DBI-0.65, DBD-0.60pl8
To: dbegley@st.nepean.uws.edu.au (David Begley)
Date: Sat, 16 Dec 1995 00:08:39 +0000 (GMT)
Cc: dbi-users@fugue.com
In-Reply-To: <Pine.ULT.3.91.951216104321.20192B-100000@arthur> from "David Begley" at Dec 16, 95 10:45:29 am
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 831
X-SMTP-Posting-Host: toccata.fugue.com [Sat, 16 Dec 95 1:29:13 GMT]


> > I am getting a number of spurrious errors, but they are not stopping
> > fuctionality... presumaeably I can simply ignore them?
> 
> Similarly, I'm getting "Bad free ignored..." whenever &ora_logoff is 
> called in the Oraperl emulation module;  ideas?

The first problem of 'disconnect' gibberish is ignorable. If you do:

	undef <whatever_your_cursor_is_called>;

after 'finish'ing each cursor, it'll stop the problem. It won't stop the
problem on 'do' statements, though.......

The 'bad free' thing is a different issue entirely and doesn't relate to
the DBD::mSQL module at all. It relates to DBI. I think there was some
reasoning about it wrt some issue with perl itself, but I don't recall
the details.

> dave

-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04305-0@oink>;
          Sat, 16 Dec 1995 02:59:16 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819082604:19541:0; Sat, 16 Dec 95 02:56:44 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa19304;
          16 Dec 95 2:55 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA10833 for dbi-users-real; Fri, 15 Dec 1995 17:45:14 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id RAA10829 
          for <dbi-users@fugue.com>; Fri, 15 Dec 1995 17:45:12 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id sg.ac19228;
          16 Dec 95 1:44 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.aa26395;
          16 Dec 95 1:44 GMT
Received: from toad by oink with SMTP (PP) id <03387-0@oink>;
          Sat, 16 Dec 1995 01:43:41 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA20823;
          Sat, 16 Dec 1995 01:43:08 +0000
Date: Sat, 16 Dec 1995 01:43:08 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512160143.AA20823@toad.ig.co.uk>
To: cs92bbm@brunel.ac.uk, dbegley@st.nepean.uws.edu.au
Subject: Re: mSQL-1.0.10, DBI-0.65, DBD-0.60pl8
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 444
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Sat, 16 Dec 95 1:44:07 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Sat, 16 Dec 95 1:44:52 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Sat, 16 Dec 95 2:55:57 GMT]


> From: David Begley <dbegley@st.nepean.uws.edu.au>
> 
> On Fri, 15 Dec 1995 cs92bbm@brunel.ac.uk wrote:
> 
> > I am getting a number of spurrious errors, but they are not stopping
> > fuctionality... presumaeably I can simply ignore them?
> 
> Similarly, I'm getting "Bad free ignored..." whenever &ora_logoff is 
> called in the Oraperl emulation module;  ideas?

Complain to Oracle. I've not yet found one that wasn't Oracle's fault.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04305-2@oink>;
          Sat, 16 Dec 1995 02:59:24 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819082609:19511:2; Sat, 16 Dec 95 02:56:49 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa19427;
          16 Dec 95 2:56 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA10811 for dbi-users-real; Fri, 15 Dec 1995 17:43:25 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id RAA10807 
          for <dbi-users@fugue.com>; Fri, 15 Dec 1995 17:43:19 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id msg.aa19023;
          16 Dec 95 1:43 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.ag25977;
          16 Dec 95 1:41 GMT
Received: from toad by oink with SMTP (PP) id <03285-0@oink>;
          Sat, 16 Dec 1995 01:40:45 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA20802;
          Sat, 16 Dec 1995 01:40:19 +0000
Date: Sat, 16 Dec 1995 01:40:19 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512160140.AA20802@toad.ig.co.uk>
To: dbi-users@fugue.com, cs92bbm@brunel.ac.uk
Subject: Re: mSQL-1.0.10, DBI-0.65, DBD-0.60pl8
X-Sun-Charset: US-ASCII
content-length: 686
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Sat, 16 Dec 95 1:41:44 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Sat, 16 Dec 95 1:43:06 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Sat, 16 Dec 95 2:56:30 GMT]


> From: cs92bbm@brunel.ac.uk
> 
> Hello...
> 
> I am getting a number of spurrious errors, but they are not stopping
> fuctionality... presumaeably I can simply ignore them?
> 
> disconnect(DBI::db=HASH(0x314a00)) invalidates 1 associated cursor(s) at ...
> Statement handle DBI::st=HASH(0x314b8c) destroyed without finish() at ...

Also, they're not really spurious. It's saying "You are disconnecting
from a database on which you have an active cursor. That's probably
an error (or lazyness) so I'm going to warn you about it".

Here's a workaround I forgot to give in the other message:
You could explicitly destroy the $sth before disconnecting.
undef $sth; would work fine.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04510-1@oink>;
          Sat, 16 Dec 1995 03:04:52 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819082748:20289:1; Sat, 16 Dec 95 02:59:08 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa20091;
          16 Dec 95 2:58 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA10817 for dbi-users-real; Fri, 15 Dec 1995 17:43:58 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id RAA10813 
          for <dbi-users@fugue.com>; Fri, 15 Dec 1995 17:43:54 -0800
Received: from post.demon.co.uk by relay-4.mail.demon.net id msg.aa18971;
          16 Dec 95 1:43 GMT
Received: from ignite.demon.co.uk by relay-3.mail.demon.net id sg.af25977;
          16 Dec 95 1:41 GMT
Received: from toad by oink with SMTP (PP) id <03266-0@oink>;
          Sat, 16 Dec 1995 01:35:54 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA20795;
          Sat, 16 Dec 1995 01:35:27 +0000
Date: Sat, 16 Dec 1995 01:35:27 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512160135.AA20795@toad.ig.co.uk>
To: cs92bbm@brunel.ac.uk
Subject: Re: mSQL-1.0.10, DBI-0.65, DBD-0.60pl8
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 494
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424
X-SMTP-Posting-Host: ignite.demon.co.uk [Sat, 16 Dec 95 1:41:42 GMT]
X-SMTP-Posting-Host: post.demon.co.uk [Sat, 16 Dec 95 1:43:06 GMT]
X-SMTP-Posting-Host: toccata.fugue.com [Sat, 16 Dec 95 2:58:30 GMT]


> From: cs92bbm@brunel.ac.uk
> 
> Hello...
> 
> I am getting a number of spurrious errors, but they are not stopping
> fuctionality... presumaeably I can simply ignore them?
> 
> disconnect(DBI::db=HASH(0x314a00)) invalidates 1 associated cursor(s) at ...
> Statement handle DBI::st=HASH(0x314b8c) destroyed without finish() at ...
> 
> Any ideas?

The mSQL driver hasn't been updated yet to use the new DBIc_ACTIVE_on
and DBIc_ACTIVE_off macros.

Complain (gently) to your 'vendor' :-)

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12772-70@oink>;
          Mon, 18 Dec 1995 21:02:23 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819232479:08969:1; Sun, 17 Dec 95 20:34:39 GMT
Received: from toccata.fugue.com by punt-1.mail.demon.net id aa08725;
          17 Dec 95 20:33 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA16547 for dbi-users-real; Sun, 17 Dec 1995 11:04:37 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id LAA16543 
          for <dbi-users@fugue.com>; Sun, 17 Dec 1995 11:04:34 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id SAA11254; Sun, 17 Dec 1995 18:59:31 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199512171859.SAA11254@fruitbat.mcqueen.com>
Subject: Re: Perl 5 & informix( DBI, DBD )
To: bsamani@iag.net (Bahram Samani)
Date: Sun, 17 Dec 1995 18:59:29 +0000 (GMT)
Cc: dbi-users@fugue.com
In-Reply-To: <30D3BDB6.6222@iag.net> from "Bahram Samani" at Dec 17, 95 01:50:30 am
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 513
X-SMTP-Posting-Host: toccata.fugue.com [Sun, 17 Dec 95 20:33:59 GMT]


> We are trying to get DBI, and the DBD working for informix, and 
> perl5 on HPUX, and IBM AIX 3.2.5. We have problems with the DBD, 
> and DBI compiling. Do you have a new version?

Can you get the DBI module to compile, install and test correctly?

Also, please subscribe to the DBI mailing lists if you haven't already done so.
See:

	http://www.fugue.com/dbi

for more details.

Regards.

> Bahram


-- 
Alligator Descartes	| PGP key available on request!
descarte@hermetica.com	| http://www.hermetica.com 
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <19211-2@oink>;
          Tue, 19 Dec 1995 07:06:11 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819341339:02725:0; Tue, 19 Dec 95 02:48:59 GMT
Received: from toccata.fugue.com by punt-2.mail.demon.net id aa02511;
          19 Dec 95 2:48 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA22390 for dbi-users-real; Mon, 18 Dec 1995 13:46:47 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from metronet.com (root@mail.metronet.com [192.245.137.6]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA22386 
          for <dbi-users@fugue.com>; Mon, 18 Dec 1995 13:46:44 -0800
Received: from hometown.com by metronet.com with SMTP 
          id AA29857 (5.67a/IDA1.5hp); Mon, 18 Dec 1995 15:35:39 -0600
Message-Id: <199512182135.AA29857@metronet.com>
X-Sender: mouche@mail.metronet.com
X-Mailer: Windows Eudora Version 2.1
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Mon, 18 Dec 1995 15:31:26 -0600
To: dbi-users@fugue.com
From: Steve Livingston <mouche@hometown.com>
Subject: Installing DBD-0.27 on Sparc/Solaris
Cc: Tim.Bunce@ig.co.uk
X-SMTP-Posting-Host: toccata.fugue.com [Tue, 19 Dec 95 2:48:13 GMT]

(I have abandoned Oracle 7.3 beta and installed Oracle 7.2.2.)

Installed DBI-0.65...tests OK

Using:  perl5.001n
        solaris 2.4

Shown below:    (1) perl -e 'use Config; print Config::myconfig()'
            OK- (2) make realclean
            OK- (3) perl Makefile.PL
            OK- (4) make
            OK- (5) make test
       (failed) (6) make installed

The "make install" fails with:
        sh: /usr/local/lib/perl5/sun4-solaris/auto/DBD/Oracle/.packlist:
cannot create
        *** Error code 1

Prizes will be awarded for prompt response.

Cheers,
Steve

-----------
(1) perl -e 'use Config; print Config::myconfig()'

elcaro% perl -e 'use Config; print Config::myconfig()'
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=solaris, osver=2.4, archname=sun4-solaris
    uname='sunos elcaro 5.4 generic_101945-29 sun4m sparc '
    hint=recommended
  Compiler:
    cc='cc', optimize='-O'
    cppflags='-I/usr/local/include'
    ccflags ='-I/usr/local/include'
    ldflags =' -L/usr/local/lib'
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=0, d_casti32=define, d_castneg=define
    intsize=4, alignbytes=8, usemymalloc=y, randbits=15
  Libraries:
    so=so
    libpth=/usr/local/lib /lib /usr/lib /usr/ccs/lib
    libs=-lsocket -lnsl -ldl -lm -lc -lcrypt
    libc=/usr/lib/libc.so
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
    cccdlflags='-Kpic', ccdlflags=' ', lddlflags='-G -L/usr/local/lib'
 
-----------
(2) make realclean

elcaro% make realclean
rm -rf Oracle.c ./blib Makeaperlfile ../../lib/auto/DBD/Oracle/extralibs.all
perlmain.c mon.out core so_locations *~ */*~ */*/*~ *.o *.a perl.exe
Oracle.bs Oracle.bso Oracle.def Oracle.exp
mv Makefile Makefile.old 2>/dev/null
rm -rf ../../lib/auto/DBD/Oracle ../../lib/auto/DBD/Oracle
rm -f ../../lib/auto/DBD/Oracle/Oracle.so ../../lib/auto/DBD/Oracle/Oracle.bs
rm -f ../../lib/auto/DBD/Oracle/Oracle.a ../../lib/Oraperl.pm
../../lib/oraperl.ph  ../../lib/DBD/Oracle.pm
rm -rf Makefile Makefile.old
elcaro% 

-----------
(3) perl Makefile.PL

elcaro% perl Makefile.PL
 
Configuring DBD::Oracle version 0.27...
Remember to actually read the README file!
 
Using Oracle in /private/slivings/oracle/orahome
Oracle sysliblist: -lsocket -lnsl -lm -ldl -laio -lposix4
Using /private/slivings/oracle/orahome/proc/lib/proc.mk version 1.6
System: perl5.001 sunos elcaro 5.4 generic_101945-29 sun4m sparc
sun4-solaris dl_dlopen.xs
Compiler: cc -O -I/usr/local/include
Oracle proc.mk would have used these values but we override them:
  CC:       ld -dy $(COMPOBJS) $(LDSTRING)
  LDFLAGS:  -L$(LIBHOME)
  LDSTRING: -R /opt/SUNWcluster/lib -Y
P,$(LD_LIBRARY_PATH):/opt/SUNWcluster/lib:/usr/ccs/lib:/usr/lib -Qy -lc
$(COMPOBJ)/crtn.o
See README notes about SPARCompiler on Solaris
 
Checking if your kit is complete...
Looks good
CONFIG key 'ar' does not exist in Config.pm
CONFIG key 'lib_ext' does not exist in Config.pm
CONFIG key 'obj_ext' does not exist in Config.pm
Warning (non-fatal): Importing of %att is deprecated [PM]
        use $self instead
Warning (non-fatal): Importing of %att is deprecated [PM]
        use $self instead
Warning (non-fatal): Importing of %att is deprecated [EXTRALIBS]
        use $self instead
Warning (non-fatal): Importing of %att is deprecated [EXTRALIBS][-lsocket
-lnsl -lm -ldl -laio -lposix4 -L$(LIBHOME) $(LLIBOCIC) $(TTLIBS)]
        use $self instead
Writing Makefile for DBD::Oracle
elcaro% 

-----------
(4) make

elcaro% make
umask 0 && cp Oraperl.pm ../../lib/Oraperl.pm
umask 0 && cp oraperl.ph ../../lib/oraperl.ph
umask 0 && cp Oracle.pm ../../lib/DBD/Oracle.pm
../../perl -I../../lib -I../../lib ../../lib/ExtUtils/xsubpp  -typemap
../../lib/ExtUtils/typemap Oracle.xs >Oracle.tc && mv Oracle.tc Oracle.c
cc -c -I/private/slivings/oracle/orahome/rdbms/demo
-I/usr/local/lib/perl5/sun4-solaris/DBI -I/usr/local/include -O
-DVERSION=\"0.27\"  -Kpic -I../..  Oracle.c
cc -c -I/private/slivings/oracle/orahome/rdbms/demo
-I/usr/local/lib/perl5/sun4-solaris/DBI -I/usr/local/include -O
-DVERSION=\"0.27\"  -Kpic -I../..  dbdimp.c
Running Mkbootstrap for DBD::Oracle ()
chmod 644 Oracle.bs
LD_RUN_PATH="/lib" cc -o ../../lib/auto/DBD/Oracle/Oracle.so -G
-L/usr/local/lib Oracle.o  dbdimp.o -L/private/slivings/oracle/orahome/lib
/private/slivings/oracle/orahome/lib/__fstd.o -locic
/private/slivings/oracle/orahome/lib/osntab.o -lsqlnet -lora -lsqlnet -lora
-lnlsrtl3 -lc3v6 -lcore3 -lnlsrtl3   -lcore3  `cat
/private/slivings/oracle/orahome/rdbms/lib/sysliblist`   -lsocket -lnsl -lm
-ldl -laio -lposix4  
chmod 755 ../../lib/auto/DBD/Oracle/Oracle.so
cp Oracle.bs ../../lib/auto/DBD/Oracle/Oracle.bs
chmod 644 ../../lib/auto/DBD/Oracle/Oracle.bs
Installing ./blib/man/man3/DBD::Oraperl.3
elcaro%

-----------
(5) make test

elcaro% make test
PERL_DL_NONLAZY=1 ../../perl -I../../lib -I../../lib -I../../lib -I../../lib
-e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/base..............ok
t/main..............Identifier "DBI::PERL_ENDING" used only once: possible
typo at ../../lib/DBI.pm line 124.
Identifier "DBD::Switch::dr::imp_data_size" used only once: possible typo at
../../lib/DBI.pm line 382.
ok
All tests successful.
Files=2,  Tests=6,  1 secs ( 0.56 cusr  0.18 csys =  0.74 cpu)
PERL_DL_NONLAZY=1 ../../perl -I../../lib -I../../lib -I../../lib -I../../lib
test.pl
Oraperl test application $Revision: 1.19 $
 
Oraperl Emulation Interface version 1.23 
Oracle Driver 1.21 
DBI Switch by Tim Bunce, version 1.48 
 
 
Connecting
 to '' (from command line, else uses ORACLE_SID/TWO_TASK)
 as 'ctx1user/demo1' (via ORACLE_USERID environment var or default)
Fields:  4
Names:   'NUM_T',       'DATE_T',       'CHAR_T',       'NULL_T'
Lengths: '40',  '75',   '30',   '0'
Types:   '2',   '12',   '1',    '1'
Data rows:
    fetch: 79.2 18-DEC-95 CTX1USER NULL
 
csr reassigned (forces destruction)...
Fetch list of tables:
Fetched: DUAL
Fetched: SYSTEM_PRIVILEGE_MAP
Fetched: TABLE_PRIVILEGE_MAP
Fetched: STMT_AUDIT_OPTION_MAP
Test ora_do with harmless non-select statement (set transaction read only)
Expect error message:
ora_do: 1453: ORA-01453: SET TRANSACTION must be first statement of
transaction (DBD: oexec error)
csr out of scope...
ora_logoff...
lda out of scope...
 
Testing repetitive connect/open/close/disconnect:
Expect sequence of digits, no other messages:
1 2 3 4 5 
 
Test interaction of explicit close/logoff and implicit DESTROYs
Expect just 'done.', no other messages:
done.
 
Test complete (2 seconds).
elcaro% 

-----------
(6) make install


elcaro% make install
make INST_LIB=/usr/local/lib/perl5
INST_ARCHLIB=/usr/local/lib/perl5/sun4-solaris INST_EXE=/usr/local/bin
INST_MAN1DIR=/usr/local/man/man1 INST_MAN3DIR=/usr/local/lib/perl5/man/man3 all
umask 0 && cp Oraperl.pm /usr/local/lib/perl5/Oraperl.pm
sh: /usr/local/lib/perl5/sun4-solaris/auto/DBD/Oracle/.packlist: cannot create
*** Error code 1
make: Fatal error: Command failed for target `/usr/local/lib/perl5/Oraperl.pm'
Current working directory /private/slivings/perl5.001n/ext/DBD-Oracle-0.27
*** Error code 1
make: Fatal error: Command failed for target `pure_install'
elcaro%

-----------                

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <19560-8@oink>;
          Tue, 19 Dec 1995 07:13:20 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819347157:19348:1; Tue, 19 Dec 95 04:25:57 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa19224;
          19 Dec 95 4:25 GMT
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id sg.aa25694;
          19 Dec 95 4:25 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Mon, 18 Dec 1995 20:17:33 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA20315 for dbi-users-real; Mon, 18 Dec 1995 10:01:47 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fox.earthweb.com (fox.earthweb.com [206.152.10.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA20311 
          for <dbi-users@fugue.com>; Mon, 18 Dec 1995 10:01:40 -0800
Received: (from patricia@localhost) by fox.earthweb.com (8.6.12/8.6.10) 
          id MAA16897; Mon, 18 Dec 1995 12:58:28 -0500
Date: Mon, 18 Dec 1995 12:58:27 -0500 (EST)
From: Patricia Ju <patricia@earthweb.com>
To: dbi-users@fugue.com
Subject: DBD::Oracle 'make test' fails
Message-ID: <Pine.SOL.3.91.951218125541.16793A-100000@fox.earthweb.com>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Tue, 19 Dec 95 4:25:28 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 19 Dec 95 4:25:40 GMT]


Hi all.

I recently compiled and installed perl 5.001n and DBI 0.63.  I was 
successful in compiling and installing DBD::mSQL.  Compiling DBD::Oracle
seemed to be okay as well.  However, when running 'make test' I get
the following errors.

Please help.  I've got live scripts that are hurting due to the lack
of Oracle..


Thanks.

Patricia

---------- Forwarded message ----------
Date: Mon, 18 Dec 1995 12:54:03 -0500
From: patricia@fox.earthweb.com
To: patricia@fox.earthweb.com

PERL_DL_NONLAZY=1 /usr/local/bin/perl -I./blib/sun4-solaris -I./blib
-I/usr/local/lib/perl5/sun4-solaris -I/usr/local/lib/perl5 -e 'use
Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/base..............install_driver(Oracle) failed: Can't load
'./blib/sun4-solaris/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle:
ld.so.1: /usr/local/bin/perl: fatal: relocation error: symbol not found:
DBIc_ACTIVE_KIDS: referenced in
./blib/sun4-solaris/auto/DBD/Oracle/Oracle.so at
/usr/local/lib/perl5/DynaLoader.pm line 136. 

 at blib/DBD/Oracle.pm line 18
 at /usr/local/lib/perl5/DBI.pm line 167
	DBI::install_driver called at t/base.t line 16 FAILED on test 4
t/main..............ok Failed 1 test, 50.00% okay. Files=2, Tests=6, 2
secs ( 0.75 cusr 0.30 csys = 1.05 cpu) PERL_DL_NONLAZY=1
/usr/local/bin/perl -I./blib/sun4-solaris -I./blib
-I/usr/local/lib/perl5/sun4-solaris -I/usr/local/lib/perl5 test.pl Oraperl
test application $Revision: 1.19 $ install_driver(Oracle) failed: Can't
load './blib/sun4-solaris/auto/DBD/Oracle/Oracle.so' for module
DBD::Oracle: ld.so.1: /usr/local/bin/perl: fatal: relocation error: symbol
not found: DBIc_ACTIVE_KIDS: referenced in
./blib/sun4-solaris/auto/DBD/Oracle/Oracle.so at
/usr/local/lib/perl5/DynaLoader.pm line 136. 

 at blib/DBD/Oracle.pm line 18
 at /usr/local/lib/perl5/DBI.pm line 167
	DBI::install_driver called at blib/Oraperl.pm line 50
	(eval) called at (eval 2) line 1
	main::BEGIN called at /usr/local/lib/perl5/DBI.pm line 0
	(eval) called at /usr/local/lib/perl5/DBI.pm line 0
	(eval) called at test.pl line 28
BEGIN failed--compilation aborted at (eval 2) line 1.
make: *** [test_dynamic] Error 2

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <19560-22@oink>;
          Tue, 19 Dec 1995 07:15:52 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819347693:22339:0; Tue, 19 Dec 95 04:34:53 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa21931;
          19 Dec 95 4:33 GMT
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id msg.ab26759;
          19 Dec 95 4:33 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Tue, 19 Dec 1995 03:07:48 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA22917 for dbi-users-real; Mon, 18 Dec 1995 15:48:10 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from pilot.njin.net (pilot.njin.net [128.6.7.38]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA22913 
          for <dbi-users@fugue.com>; Mon, 18 Dec 1995 15:48:08 -0800
Received: from localhost (phj@localhost) 
          by pilot.njin.net (8.6.12+bestmx+oldruq+newsunq+grosshack/8.6.12) 
          with ESMTP id SAA26011; Mon, 18 Dec 1995 18:48:08 -0500
Message-Id: <199512182348.SAA26011@pilot.njin.net>
To: Steve Livingston <mouche@hometown.com>
cc: dbi-users@fugue.com
Subject: Re: Installing DBD-0.27 on Sparc/Solaris
In-reply-to: Your message of "Mon, 18 Dec 1995 15:31:26 CST." <199512182135.AA29857@metronet.com>
Date: Mon, 18 Dec 1995 18:48:07 -0500
From: "Patricia H. Ju" <phj@pilot.njin.net>
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Tue, 19 Dec 95 4:33:12 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 19 Dec 95 4:33:40 GMT]

On Mon, 18 Dec 1995 15:31:26 CST Steve Livingston <mouche@hometown.com>  wrote:
|       (failed) (6) make installed
|
|The "make install" fails with:
|        sh: /usr/local/lib/perl5/sun4-solaris/auto/DBD/Oracle/.packlist:
|cannot create
|        *** Error code 1

Do you have permissions to install ?  (Probably need root.)


Patricia
.............
Who needs patience when you've got force ?
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <19741-1@oink>;
          Tue, 19 Dec 1995 07:17:07 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819347774:22729:2; Tue, 19 Dec 95 04:36:14 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa22574;
          19 Dec 95 4:35 GMT
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id sg.ac26759;
          19 Dec 95 4:35 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Tue, 19 Dec 1995 03:59:16 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA23316 for dbi-users-real; Mon, 18 Dec 1995 17:45:09 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from sultan.hsii.ccare.com ([192.101.181.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id RAA23312 
          for <dbi-users@fugue.com>; Mon, 18 Dec 1995 17:45:07 -0800
Received: from msgw.hsii.ccare.com by SULTAN.HSII.CCARE.COM (PMDF V5.0-5 #4597) 
          id <01HYYQAIMJHS0005RP@SULTAN.HSII.CCARE.COM>;
          Mon, 18 Dec 1995 19:40:45 -0600 (CST)
Received: by msgw.hsii.ccare.com with Microsoft Mail 
          id <30D61826@msgw.hsii.ccare.com>;
          Mon, 18 Dec 1995 19:40:54 -0600 (CST)
Date: Mon, 18 Dec 1995 19:36:00 -0600 (CST)
From: "Li, Alexander" <AlexLi@msmail.hsii.ccare.com>
Subject: Trying to install DBD::Oracle
To: DBI User List <dbi-users@fugue.com>
Cc: Tim Bunce <tim.bunce@ig.co.uk>
Message-id: <30D61826@msgw.hsii.ccare.com>
X-Mailer: Microsoft Mail V3.0
Content-transfer-encoding: 7BIT
Encoding: 57 TEXT
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Tue, 19 Dec 95 4:35:05 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 19 Dec 95 4:35:27 GMT]


Hello all,

I have Perl 5 and DBI-0.65 installed and  attemping  to install DBD::Oracle.

 -----
gh753> perl Makefile.PL

Configuring DBD::Oracle version 0.21...
Remember to actually read the README file!

Using Oracle in /usr/local/oracle
Warning: OCI (Pro*C) does not appear to be installed.
Oracle sysliblist: -lsocket -lnsl -lm -ldl -laio -lposix4
Unable to locate proc.mk (use -m /path/to/proc.mk to specify)
 ----

Ok, I don't have OCI (Pro*C), which is correct.  Now, do I need *all* the 
Oracle
components installed or just the OCI (Pro*C) module will do?

Here's my config. info:

 ----
gh753> perl -e 'use Config; print Config::myconfig()'
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=solaris, osver=2.4, archname=sun4-solaris
    uname='sunos gh753 5.4 generic_101945-10 sun4m sparc '
    hint=recommended
  Compiler:
    cc='cc', optimize='-O'
    cppflags='-DDEBUGGING'
    ccflags ='-DDEBUGGING'
    ldflags =''
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=0, d_casti32=define, d_castneg=define
    intsize=4, alignbytes=8, usemymalloc=y, randbits=15
  Libraries:
    so=so
    libpth=/lib /usr/lib /usr/ccs/lib /usr/local/lib
    libs=-lsocket -lnsl -ldl -lm -lc -lcrypt
    libc=/usr/lib/libc.so
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
    cccdlflags='-Kpic', ccdlflags=' ', lddlflags='-G'
 ------

Thanks for any help.

ps: Tim, the DBI-0.65 build just fine after I rebuild Perl 5.  Thanks.

 --------------------------------
Alex Li
Sys. Admin
Health Systems Integration, Inc.
 --------------------------------
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <19560-28@oink>;
          Tue, 19 Dec 1995 07:17:08 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819347775:22797:0; Tue, 19 Dec 95 04:36:15 GMT
Received: from relay-1.mail.demon.net by punt-1.mail.demon.net id aa22605;
          19 Dec 95 4:35 GMT
Received: from frigate.doc.ic.ac.uk by relay-1.mail.demon.net id sg.ae26759;
          19 Dec 95 4:35 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Tue, 19 Dec 1995 04:02:12 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA22835 for dbi-users-real; Mon, 18 Dec 1995 15:17:49 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from metronet.com (root@mail.metronet.com [192.245.137.6]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id PAA22831 
          for <dbi-users@fugue.com>; Mon, 18 Dec 1995 15:17:47 -0800
Received: from hometown.com by metronet.com with SMTP 
          id AA00696 (5.67a/IDA1.5hp for <dbi-users@fugue.com>);
          Mon, 18 Dec 1995 17:17:37 -0600
Message-Id: <199512182317.AA00696@metronet.com>
X-Sender: mouche@mail.metronet.com
X-Mailer: Windows Eudora Version 2.1
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Mon, 18 Dec 1995 17:13:25 -0600
To: dbi-users@fugue.com
From: Steve Livingston <mouche@hometown.com>
Subject: Installing DBD-0.27 on Sparc/Solaris
Cc: Tim.Bunce@ig.co.uk
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Tue, 19 Dec 95 4:35:26 GMT]
X-SMTP-Posting-Host: relay-1.mail.demon.net [Tue, 19 Dec 95 4:35:36 GMT]

Thanks to those who replied about checking permissions.

The solution was along those lines:
  I had write permission to the directory, but...
  .packlist had been created in a previous installation attempt, and...
  .packlist was read-only to the user/owner.

Deleting the old .packlist gave me a clean "make install"

Thanks to all who replied.

Cheers,
Steve

>
>The "make install" fails with:
>        sh: /usr/local/lib/perl5/sun4-solaris/auto/DBD/Oracle/.packlist:
cannot create
>        *** Error code 1

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <19741-16@oink>;
          Tue, 19 Dec 1995 07:21:08 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819356399:10611:4; Tue, 19 Dec 95 06:59:59 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id au09945;
          19 Dec 95 6:59 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Tue, 19 Dec 1995 05:43:42 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA23891 for dbi-announce-real; Mon, 18 Dec 1995 20:02:58 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from srvr7.engin.umich.edu (root@srvr7.engin.umich.edu [141.212.2.69]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id UAA23887;
          Mon, 18 Dec 1995 20:02:55 -0800
Received: from srvr5.engin.umich.edu (srvr5.engin.umich.edu [141.212.2.89]) 
          by srvr7.engin.umich.edu (8.6.12/8.6.4) with ESMTP id WAA09469;
          Mon, 18 Dec 1995 22:51:05 -0500
Received: from zaphod (pm035-27.dialip.mich.net [141.211.7.38]) 
          by srvr5.engin.umich.edu (8.6.12/8.6.4) with SMTP id WAA19432;
          Mon, 18 Dec 1995 22:48:00 -0500
Message-ID: <30D636F2.5B21@umich.edu>
Date: Mon, 18 Dec 1995 22:52:18 -0500
From: Dan DeMaggio <dmag@umich.edu>
Organization: Completely Disorganized
X-Mailer: Mozilla 2.0b3 (WinNT; I)
MIME-Version: 1.0
To: William Warner <billw@airone.claircom.com>
CC: dbi-announce@fugue.com, dbi-users@fugue.com, Tim.Bunce@ig.co.uk, 
    ak@ananke.s.bawue.de, kejin@lithium.empress.com
Subject: Re: New directions for DBI - Important
References: <9512120420.AA03096@soc5.airone.claircom.com>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Tue, 19 Dec 95 6:59:34 GMT]

William Warner wrote:
> What is SQL CLI/ODBC ?

ODBC is a 'standard' API for talking to databases. It is similar to Winsock
or POSIX in that it replaced a mish-mash of propritary APIs with just ONE.
On the windows platform, it is quite good now (inital drivers were slow
and buggy). In fact, Micro$oft has stated that their next SQL Server will
talk ODBC 'natively' and they will use ODBC for benchmarking.

ODBC allows multiple connections (even at the same time) to multiple data
sources.  It is deeply rooted in MS Windows, but has been ported Unix by 3rd
parties. Mac ODBC is also in the works.

To the user, it's pretty slick. First, you buy a database package that comes
with ODBC Drivers (FoxPro, Access, Paradox, Oracle, Etc.) which you
install on your client. Then take any application (Excel, Word, Crystal
Reports, etc. etc.) that can use ODBC.  In the app, you can browse your
datasources, tables, fields, etc. and Import or Export data.

 Most PC databases come with an ODBC driver. The non-PC-centric ones may
have 3rd party ($$) drivers avaliable. (i.e. big mainframe type databases)
There is even a company selling ODBC middleware so you don't have to install
all the drivers for all your datasources on all your clients.

To the developer, ODBC Works like this:

Application -> Driver Manager (DLL) -> DBMS Driver (DLL) -> Data

Your application makes calls to the ODBC API thru the ODBC Driver Manager
DLL (Dynamic Link Library). You ask to driver manager to enumerate datasources
or to connect to a particular data source. The Driver Manager loads the
appropriate DBMS driver. You can make calls to the driver manager to see what
functions the driver supports (there are several levels of conformance). You
can then establish a connection to a database, and create statement handles,
do queries, get results, get information ABOUT results (i.e. data types of
the columns) and such.

I count 56 ODBC API functions, (not including the ODBC Install functions,
ODBC translation functions, etc.).

Defining a standard based on ODBC would make a simple 'select' take several
lines of Perl. And if you care about column lengths, etc. then you will add
quite a few more lines.  And then there's the asynchronus stuff.

On the other hand, if you only care about getting (mostly) text in and out
of the database, you don't want to be bogged down with a lot of useless
hand-waving calls. [i.e. in ODBC, the first thing you do is allocate an
'enviroment' from the driver manager before you even tell it what driver
you want to talk to. Total waste of CPU cycles, if you ask me, but you
didn't.]

I am not an expert in ODBC by anymeans (I just have MSVC).  But I'm sure I
don't want to write Perl programs that make all those Messy calls.  Maybe
the perl database packages should all implement ODBC, and we can write a
GENERIC database class that will make the nasty calls for us. That way,
we know we have the full ODBC functionality (i.e. full database functionality)
but only if we need it... 

 What do you think?

-- 
Dan DeMaggio (dmag@umich.edu)
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <19741-17@oink>;
          Tue, 19 Dec 1995 07:21:23 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819356401:10658:2; Tue, 19 Dec 95 07:00:01 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id av09945;
          19 Dec 95 6:59 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Tue, 19 Dec 1995 05:45:46 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA23913 for dbi-users-real; Mon, 18 Dec 1995 20:06:52 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from srvr7.engin.umich.edu (root@srvr7.engin.umich.edu [141.212.2.69]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id UAA23887;
          Mon, 18 Dec 1995 20:02:55 -0800
Received: from srvr5.engin.umich.edu (srvr5.engin.umich.edu [141.212.2.89]) 
          by srvr7.engin.umich.edu (8.6.12/8.6.4) with ESMTP id WAA09469;
          Mon, 18 Dec 1995 22:51:05 -0500
Received: from zaphod (pm035-27.dialip.mich.net [141.211.7.38]) 
          by srvr5.engin.umich.edu (8.6.12/8.6.4) with SMTP id WAA19432;
          Mon, 18 Dec 1995 22:48:00 -0500
Message-ID: <30D636F2.5B21@umich.edu>
Date: Mon, 18 Dec 1995 22:52:18 -0500
From: Dan DeMaggio <dmag@umich.edu>
Organization: Completely Disorganized
X-Mailer: Mozilla 2.0b3 (WinNT; I)
MIME-Version: 1.0
To: William Warner <billw@airone.claircom.com>
CC: dbi-announce@fugue.com, dbi-users@fugue.com, Tim.Bunce@ig.co.uk, 
    ak@ananke.s.bawue.de, kejin@lithium.empress.com
Subject: Re: New directions for DBI - Important
References: <9512120420.AA03096@soc5.airone.claircom.com>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Tue, 19 Dec 95 6:59:36 GMT]

William Warner wrote:
> What is SQL CLI/ODBC ?

ODBC is a 'standard' API for talking to databases. It is similar to Winsock
or POSIX in that it replaced a mish-mash of propritary APIs with just ONE.
On the windows platform, it is quite good now (inital drivers were slow
and buggy). In fact, Micro$oft has stated that their next SQL Server will
talk ODBC 'natively' and they will use ODBC for benchmarking.

ODBC allows multiple connections (even at the same time) to multiple data
sources.  It is deeply rooted in MS Windows, but has been ported Unix by 3rd
parties. Mac ODBC is also in the works.

To the user, it's pretty slick. First, you buy a database package that comes
with ODBC Drivers (FoxPro, Access, Paradox, Oracle, Etc.) which you
install on your client. Then take any application (Excel, Word, Crystal
Reports, etc. etc.) that can use ODBC.  In the app, you can browse your
datasources, tables, fields, etc. and Import or Export data.

 Most PC databases come with an ODBC driver. The non-PC-centric ones may
have 3rd party ($$) drivers avaliable. (i.e. big mainframe type databases)
There is even a company selling ODBC middleware so you don't have to install
all the drivers for all your datasources on all your clients.

To the developer, ODBC Works like this:

Application -> Driver Manager (DLL) -> DBMS Driver (DLL) -> Data

Your application makes calls to the ODBC API thru the ODBC Driver Manager
DLL (Dynamic Link Library). You ask to driver manager to enumerate datasources
or to connect to a particular data source. The Driver Manager loads the
appropriate DBMS driver. You can make calls to the driver manager to see what
functions the driver supports (there are several levels of conformance). You
can then establish a connection to a database, and create statement handles,
do queries, get results, get information ABOUT results (i.e. data types of
the columns) and such.

I count 56 ODBC API functions, (not including the ODBC Install functions,
ODBC translation functions, etc.).

Defining a standard based on ODBC would make a simple 'select' take several
lines of Perl. And if you care about column lengths, etc. then you will add
quite a few more lines.  And then there's the asynchronus stuff.

On the other hand, if you only care about getting (mostly) text in and out
of the database, you don't want to be bogged down with a lot of useless
hand-waving calls. [i.e. in ODBC, the first thing you do is allocate an
'enviroment' from the driver manager before you even tell it what driver
you want to talk to. Total waste of CPU cycles, if you ask me, but you
didn't.]

I am not an expert in ODBC by anymeans (I just have MSVC).  But I'm sure I
don't want to write Perl programs that make all those Messy calls.  Maybe
the perl database packages should all implement ODBC, and we can write a
GENERIC database class that will make the nasty calls for us. That way,
we know we have the full ODBC functionality (i.e. full database functionality)
but only if we need it... 

 What do you think?

-- 
Dan DeMaggio (dmag@umich.edu)
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <19210-85@oink>;
          Tue, 19 Dec 1995 07:21:31 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819356475:11174:0; Tue, 19 Dec 95 07:01:15 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id ax09945;
          19 Dec 95 6:59 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Tue, 19 Dec 1995 06:07:04 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA24063 for dbi-users-real; Mon, 18 Dec 1995 20:40:43 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mailgw.claircom.com (mailgw.claircom.com [199.5.241.51]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id UAA24042;
          Mon, 18 Dec 1995 20:39:04 -0800
Received: from nimo.claircom.com by mailgw.claircom.com 
          with smtp (Smail3.1.26.7 #2) id m0tRtpQ-0004tpC;
          Mon, 18 Dec 95 20:39 PST
Received: from airone.claircom.com by nimo.claircom.com 
          with smtp (Smail3.1.26.7 #2) id m0tRtpP-0005VkC;
          Mon, 18 Dec 95 20:39 PST
Received: from soc4.airone.claircom.com by airone.claircom.com (5.x/SMI-SVR4) 
          id AA14395; Mon, 18 Dec 1995 20:35:21 -0800
Received: by soc4.airone.claircom.com (4.1/SMI-4.1) id AA10131;
          Mon, 18 Dec 95 20:11:31 PST
Date: Mon, 18 Dec 95 20:11:31 PST
From: billw@airone.claircom.com (William Warner)
Message-Id: <9512190411.AA10131@soc4.airone.claircom.com>
To: billw@airone.claircom.com, dmag@umich.edu
Subject: Re: New directions for DBI - Important
Cc: dbi-announce@fugue.com, dbi-users@fugue.com, Tim.Bunce@ig.co.uk, 
    ak@ananke.s.bawue.de, kejin@lithium.empress.com
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Tue, 19 Dec 95 6:59:41 GMT]

Very informative! Thank you!

My two cents: DBI's first priority should be to conform to useful, accepted
standards, because Perl is such good "glue" for patching disparate 
data/applications together. Perl needs to conform to those standards where
market forces and myopic planning cannot.

DBI's second priority should be to reduce the first priority to a one-liner.

   ww

----- Begin Included Message -----

From dmag@umich.edu Mon Dec 18 19:59 PST 1995
Date: Mon, 18 Dec 1995 22:52:18 -0500
From: Dan DeMaggio <dmag@umich.edu>
Organization: Completely Disorganized
X-Mailer: Mozilla 2.0b3 (WinNT; I)
Mime-Version: 1.0
To: William Warner <billw@airone.claircom.com>
Cc: dbi-announce@fugue.com, dbi-users@fugue.com, Tim.Bunce@ig.co.uk,
        ak@ananke.s.bawue.de, kejin@lithium.empress.com
Subject: Re: New directions for DBI - Important
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=us-ascii
Content-Length: 3059

William Warner wrote:
> What is SQL CLI/ODBC ?

ODBC is a 'standard' API for talking to databases. It is similar to Winsock
or POSIX in that it replaced a mish-mash of propritary APIs with just ONE.
On the windows platform, it is quite good now (inital drivers were slow
and buggy). In fact, Micro$oft has stated that their next SQL Server will
talk ODBC 'natively' and they will use ODBC for benchmarking.

ODBC allows multiple connections (even at the same time) to multiple data
sources.  It is deeply rooted in MS Windows, but has been ported Unix by 3rd
parties. Mac ODBC is also in the works.

To the user, it's pretty slick. First, you buy a database package that comes
with ODBC Drivers (FoxPro, Access, Paradox, Oracle, Etc.) which you
install on your client. Then take any application (Excel, Word, Crystal
Reports, etc. etc.) that can use ODBC.  In the app, you can browse your
datasources, tables, fields, etc. and Import or Export data.

 Most PC databases come with an ODBC driver. The non-PC-centric ones may
have 3rd party ($$) drivers avaliable. (i.e. big mainframe type databases)
There is even a company selling ODBC middleware so you don't have to install
all the drivers for all your datasources on all your clients.

To the developer, ODBC Works like this:

Application -> Driver Manager (DLL) -> DBMS Driver (DLL) -> Data

Your application makes calls to the ODBC API thru the ODBC Driver Manager
DLL (Dynamic Link Library). You ask to driver manager to enumerate datasources
or to connect to a particular data source. The Driver Manager loads the
appropriate DBMS driver. You can make calls to the driver manager to see what
functions the driver supports (there are several levels of conformance). You
can then establish a connection to a database, and create statement handles,
do queries, get results, get information ABOUT results (i.e. data types of
the columns) and such.

I count 56 ODBC API functions, (not including the ODBC Install functions,
ODBC translation functions, etc.).

Defining a standard based on ODBC would make a simple 'select' take several
lines of Perl. And if you care about column lengths, etc. then you will add
quite a few more lines.  And then there's the asynchronus stuff.

On the other hand, if you only care about getting (mostly) text in and out
of the database, you don't want to be bogged down with a lot of useless
hand-waving calls. [i.e. in ODBC, the first thing you do is allocate an
'enviroment' from the driver manager before you even tell it what driver
you want to talk to. Total waste of CPU cycles, if you ask me, but you
didn't.]

I am not an expert in ODBC by anymeans (I just have MSVC).  But I'm sure I
don't want to write Perl programs that make all those Messy calls.  Maybe
the perl database packages should all implement ODBC, and we can write a
GENERIC database class that will make the nasty calls for us. That way,
we know we have the full ODBC functionality (i.e. full database functionality)
but only if we need it... 

 What do you think?

-- 
Dan DeMaggio (dmag@umich.edu)


----- End Included Message -----


---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <19741-18@oink>;
          Tue, 19 Dec 1995 07:21:37 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819356472:11226:0; Tue, 19 Dec 95 07:01:12 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id bb09945;
          19 Dec 95 7:00 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Tue, 19 Dec 1995 06:44:06 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id VAA24260 for dbi-users-real; Mon, 18 Dec 1995 21:10:40 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from srvr7.engin.umich.edu (root@srvr7.engin.umich.edu [141.212.2.69]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id VAA24240;
          Mon, 18 Dec 1995 21:08:10 -0800
Received: from srvr5.engin.umich.edu (srvr5.engin.umich.edu [141.212.2.89]) 
          by srvr7.engin.umich.edu (8.6.12/8.6.4) with ESMTP id AAA10206;
          Tue, 19 Dec 1995 00:00:56 -0500
Received: from zaphod (pm035-27.dialip.mich.net [141.211.7.38]) 
          by srvr5.engin.umich.edu (8.6.12/8.6.4) with SMTP id XAA22502;
          Mon, 18 Dec 1995 23:58:00 -0500
Message-ID: <30D64759.7D1A@umich.edu>
Date: Tue, 19 Dec 1995 00:02:17 -0500
From: Dan DeMaggio <dmag@umich.edu>
Organization: Completely Disorganized
X-Mailer: Mozilla 2.0b3 (WinNT; I)
MIME-Version: 1.0
To: William Warner <billw@airone.claircom.com>
CC: dbi-announce@fugue.com, dbi-users@fugue.com, Tim.Bunce@ig.co.uk, 
    ak@ananke.s.bawue.de, kejin@lithium.empress.com
Subject: Re: New directions for DBI - Important
References: <9512190411.AA10131@soc4.airone.claircom.com>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Tue, 19 Dec 95 7:00:27 GMT]

William Warner wrote:
> DBI's second priority should be to reduce the first priority to a one-liner.

Couldn't have said it better myself. I've been learning Java the past few
months. It's better than C (no pointers!), but it shares a commom property
with C: A lot of your code turns out to be detailed housekeeping. Even when
you understand something and have written it a million times, it still takes
a lot of code. There's no compressing it to a smaller program.

In Perl, the language allows experienced programmers to take 'shortcuts'
(and hence, compress your program.)  To me, the Database interface must be
usable in 4 or 5 calls (open database, send SQL, fetch results, close database).
On the otherhand, this ignores fancy things like "will my 5 MB string fit into
that fixed-length database field?".  This requires a full-featured DB interface
like ODBC.


> ----- Begin Included Message -----
> >From dmag@umich.edu Mon Dec 18 19:59 PST 1995    [gratitutious article quoting deleted to keep the Internet from collapsing]
> ----- End Included Message -----

-- 
Dan DeMaggio (dmag@umich.edu)
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <19560-48@oink>;
          Tue, 19 Dec 1995 07:21:41 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819356472:11216:0; Tue, 19 Dec 95 07:01:12 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id az09945;
          19 Dec 95 7:00 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Tue, 19 Dec 1995 06:14:14 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA24046 for dbi-announce-real; Mon, 18 Dec 1995 20:39:09 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mailgw.claircom.com (mailgw.claircom.com [199.5.241.51]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id UAA24042;
          Mon, 18 Dec 1995 20:39:04 -0800
Received: from nimo.claircom.com by mailgw.claircom.com 
          with smtp (Smail3.1.26.7 #2) id m0tRtpQ-0004tpC;
          Mon, 18 Dec 95 20:39 PST
Received: from airone.claircom.com by nimo.claircom.com 
          with smtp (Smail3.1.26.7 #2) id m0tRtpP-0005VkC;
          Mon, 18 Dec 95 20:39 PST
Received: from soc4.airone.claircom.com by airone.claircom.com (5.x/SMI-SVR4) 
          id AA14395; Mon, 18 Dec 1995 20:35:21 -0800
Received: by soc4.airone.claircom.com (4.1/SMI-4.1) id AA10131;
          Mon, 18 Dec 95 20:11:31 PST
Date: Mon, 18 Dec 95 20:11:31 PST
From: billw@airone.claircom.com (William Warner)
Message-Id: <9512190411.AA10131@soc4.airone.claircom.com>
To: billw@airone.claircom.com, dmag@umich.edu
Subject: Re: New directions for DBI - Important
Cc: dbi-announce@fugue.com, dbi-users@fugue.com, Tim.Bunce@ig.co.uk, 
    ak@ananke.s.bawue.de, kejin@lithium.empress.com
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Tue, 19 Dec 95 7:00:24 GMT]

Very informative! Thank you!

My two cents: DBI's first priority should be to conform to useful, accepted
standards, because Perl is such good "glue" for patching disparate 
data/applications together. Perl needs to conform to those standards where
market forces and myopic planning cannot.

DBI's second priority should be to reduce the first priority to a one-liner.

   ww

----- Begin Included Message -----

From dmag@umich.edu Mon Dec 18 19:59 PST 1995
Date: Mon, 18 Dec 1995 22:52:18 -0500
From: Dan DeMaggio <dmag@umich.edu>
Organization: Completely Disorganized
X-Mailer: Mozilla 2.0b3 (WinNT; I)
Mime-Version: 1.0
To: William Warner <billw@airone.claircom.com>
Cc: dbi-announce@fugue.com, dbi-users@fugue.com, Tim.Bunce@ig.co.uk,
        ak@ananke.s.bawue.de, kejin@lithium.empress.com
Subject: Re: New directions for DBI - Important
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=us-ascii
Content-Length: 3059

William Warner wrote:
> What is SQL CLI/ODBC ?

ODBC is a 'standard' API for talking to databases. It is similar to Winsock
or POSIX in that it replaced a mish-mash of propritary APIs with just ONE.
On the windows platform, it is quite good now (inital drivers were slow
and buggy). In fact, Micro$oft has stated that their next SQL Server will
talk ODBC 'natively' and they will use ODBC for benchmarking.

ODBC allows multiple connections (even at the same time) to multiple data
sources.  It is deeply rooted in MS Windows, but has been ported Unix by 3rd
parties. Mac ODBC is also in the works.

To the user, it's pretty slick. First, you buy a database package that comes
with ODBC Drivers (FoxPro, Access, Paradox, Oracle, Etc.) which you
install on your client. Then take any application (Excel, Word, Crystal
Reports, etc. etc.) that can use ODBC.  In the app, you can browse your
datasources, tables, fields, etc. and Import or Export data.

 Most PC databases come with an ODBC driver. The non-PC-centric ones may
have 3rd party ($$) drivers avaliable. (i.e. big mainframe type databases)
There is even a company selling ODBC middleware so you don't have to install
all the drivers for all your datasources on all your clients.

To the developer, ODBC Works like this:

Application -> Driver Manager (DLL) -> DBMS Driver (DLL) -> Data

Your application makes calls to the ODBC API thru the ODBC Driver Manager
DLL (Dynamic Link Library). You ask to driver manager to enumerate datasources
or to connect to a particular data source. The Driver Manager loads the
appropriate DBMS driver. You can make calls to the driver manager to see what
functions the driver supports (there are several levels of conformance). You
can then establish a connection to a database, and create statement handles,
do queries, get results, get information ABOUT results (i.e. data types of
the columns) and such.

I count 56 ODBC API functions, (not including the ODBC Install functions,
ODBC translation functions, etc.).

Defining a standard based on ODBC would make a simple 'select' take several
lines of Perl. And if you care about column lengths, etc. then you will add
quite a few more lines.  And then there's the asynchronus stuff.

On the other hand, if you only care about getting (mostly) text in and out
of the database, you don't want to be bogged down with a lot of useless
hand-waving calls. [i.e. in ODBC, the first thing you do is allocate an
'enviroment' from the driver manager before you even tell it what driver
you want to talk to. Total waste of CPU cycles, if you ask me, but you
didn't.]

I am not an expert in ODBC by anymeans (I just have MSVC).  But I'm sure I
don't want to write Perl programs that make all those Messy calls.  Maybe
the perl database packages should all implement ODBC, and we can write a
GENERIC database class that will make the nasty calls for us. That way,
we know we have the full ODBC functionality (i.e. full database functionality)
but only if we need it... 

 What do you think?

-- 
Dan DeMaggio (dmag@umich.edu)


----- End Included Message -----


---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <23154-0@oink>;
          Tue, 19 Dec 1995 12:54:38 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819377323:22421:2; Tue, 19 Dec 95 12:48:43 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa22197;
          19 Dec 95 12:48 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Tue, 19 Dec 1995 07:15:49 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id VAA24260 for dbi-users-real; Mon, 18 Dec 1995 21:10:40 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from srvr7.engin.umich.edu (root@srvr7.engin.umich.edu [141.212.2.69]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id VAA24240;
          Mon, 18 Dec 1995 21:08:10 -0800
Received: from srvr5.engin.umich.edu (srvr5.engin.umich.edu [141.212.2.89]) 
          by srvr7.engin.umich.edu (8.6.12/8.6.4) with ESMTP id AAA10206;
          Tue, 19 Dec 1995 00:00:56 -0500
Received: from zaphod (pm035-27.dialip.mich.net [141.211.7.38]) 
          by srvr5.engin.umich.edu (8.6.12/8.6.4) with SMTP id XAA22502;
          Mon, 18 Dec 1995 23:58:00 -0500
Message-ID: <30D64759.7D1A@umich.edu>
Date: Tue, 19 Dec 1995 00:02:17 -0500
From: Dan DeMaggio <dmag@umich.edu>
Organization: Completely Disorganized
X-Mailer: Mozilla 2.0b3 (WinNT; I)
MIME-Version: 1.0
To: William Warner <billw@airone.claircom.com>
CC: dbi-announce@fugue.com, dbi-users@fugue.com, Tim.Bunce@ig.co.uk, 
    ak@ananke.s.bawue.de, kejin@lithium.empress.com
Subject: Re: New directions for DBI - Important
References: <9512190411.AA10131@soc4.airone.claircom.com>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Tue, 19 Dec 95 12:48:08 GMT]

William Warner wrote:
> DBI's second priority should be to reduce the first priority to a one-liner.

Couldn't have said it better myself. I've been learning Java the past few
months. It's better than C (no pointers!), but it shares a commom property
with C: A lot of your code turns out to be detailed housekeeping. Even when
you understand something and have written it a million times, it still takes
a lot of code. There's no compressing it to a smaller program.

In Perl, the language allows experienced programmers to take 'shortcuts'
(and hence, compress your program.)  To me, the Database interface must be
usable in 4 or 5 calls (open database, send SQL, fetch results, close database).
On the otherhand, this ignores fancy things like "will my 5 MB string fit into
that fixed-length database field?".  This requires a full-featured DB interface
like ODBC.


> ----- Begin Included Message -----
> >From dmag@umich.edu Mon Dec 18 19:59 PST 1995    [gratitutious article quoting deleted to keep the Internet from collapsing]
> ----- End Included Message -----

-- 
Dan DeMaggio (dmag@umich.edu)
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <23154-11@oink>;
          Tue, 19 Dec 1995 12:55:32 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819377328:22410:4; Tue, 19 Dec 95 12:48:48 GMT
Received: from frigate.doc.ic.ac.uk by punt-1.mail.demon.net id aa22280;
          19 Dec 95 12:48 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Tue, 19 Dec 1995 07:27:52 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id VAA24244 for dbi-announce-real; Mon, 18 Dec 1995 21:08:12 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from srvr7.engin.umich.edu (root@srvr7.engin.umich.edu [141.212.2.69]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id VAA24240;
          Mon, 18 Dec 1995 21:08:10 -0800
Received: from srvr5.engin.umich.edu (srvr5.engin.umich.edu [141.212.2.89]) 
          by srvr7.engin.umich.edu (8.6.12/8.6.4) with ESMTP id AAA10206;
          Tue, 19 Dec 1995 00:00:56 -0500
Received: from zaphod (pm035-27.dialip.mich.net [141.211.7.38]) 
          by srvr5.engin.umich.edu (8.6.12/8.6.4) with SMTP id XAA22502;
          Mon, 18 Dec 1995 23:58:00 -0500
Message-ID: <30D64759.7D1A@umich.edu>
Date: Tue, 19 Dec 1995 00:02:17 -0500
From: Dan DeMaggio <dmag@umich.edu>
Organization: Completely Disorganized
X-Mailer: Mozilla 2.0b3 (WinNT; I)
MIME-Version: 1.0
To: William Warner <billw@airone.claircom.com>
CC: dbi-announce@fugue.com, dbi-users@fugue.com, Tim.Bunce@ig.co.uk, 
    ak@ananke.s.bawue.de, kejin@lithium.empress.com
Subject: Re: New directions for DBI - Important
References: <9512190411.AA10131@soc4.airone.claircom.com>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-SMTP-Posting-Host: frigate.doc.ic.ac.uk [Tue, 19 Dec 95 12:48:15 GMT]

William Warner wrote:
> DBI's second priority should be to reduce the first priority to a one-liner.

Couldn't have said it better myself. I've been learning Java the past few
months. It's better than C (no pointers!), but it shares a commom property
with C: A lot of your code turns out to be detailed housekeeping. Even when
you understand something and have written it a million times, it still takes
a lot of code. There's no compressing it to a smaller program.

In Perl, the language allows experienced programmers to take 'shortcuts'
(and hence, compress your program.)  To me, the Database interface must be
usable in 4 or 5 calls (open database, send SQL, fetch results, close database).
On the otherhand, this ignores fancy things like "will my 5 MB string fit into
that fixed-length database field?".  This requires a full-featured DB interface
like ODBC.


> ----- Begin Included Message -----
> >From dmag@umich.edu Mon Dec 18 19:59 PST 1995    [gratitutious article quoting deleted to keep the Internet from collapsing]
> ----- End Included Message -----

-- 
Dan DeMaggio (dmag@umich.edu)
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <27201-3@oink>;
          Tue, 19 Dec 1995 17:15:04 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819393073:00799:4; Tue, 19 Dec 95 17:11:13 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa00497; 19 Dec 95 17:10 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA02726 for dbi-users-real; Tue, 19 Dec 1995 08:17:31 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id IAA02722 
          for <dbi-users@fugue.com>; Tue, 19 Dec 1995 08:17:27 -0800
Received: from post.demon.co.uk ([158.152.1.72]) by relay-4.mail.demon.net 
          id af08935; 19 Dec 95 16:13 GMT
Received: from ignite.demon.co.uk ([158.152.8.99]) by relay-3.mail.demon.net 
          id aa02182; 19 Dec 95 16:10 GMT
Received: from toad by oink with SMTP (PP) id <24815-0@oink>;
          Tue, 19 Dec 1995 14:46:34 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA28679;
          Tue, 19 Dec 1995 14:46:07 +0000
Date: Tue, 19 Dec 1995 14:46:07 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512191446.AA28679@toad.ig.co.uk>
To: dmag@umich.edu
Subject: Re: New directions for DBI - Important
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 765
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Dan DeMaggio <dmag@umich.edu>
> 
> I am not an expert in ODBC by anymeans (I just have MSVC).  But I'm sure I
> don't want to write Perl programs that make all those Messy calls.  Maybe
> the perl database packages should all implement ODBC, and we can write a
> GENERIC database class that will make the nasty calls for us. That way,
> we know we have the full ODBC functionality (i.e. full database functionality)
> but only if we need it... 
> 
>  What do you think?

Let me assure you that while the new DBI will include access to all ODBC
functions you will almost always be able to use high-level utility
methods, including the familiar:

	$sth => $dbh->prepare("...");
	$sth->execute;
	@row = $sth->fetchrow;

Native ODBC is ugly and verbose.

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <27720-0@oink>;
          Tue, 19 Dec 1995 17:48:03 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819395049:02545:1; Tue, 19 Dec 95 17:44:09 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-2.mail.demon.net 
          id aa02155; 19 Dec 95 17:43 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA02877 for dbi-announce-real; Tue, 19 Dec 1995 08:52:15 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from proxy.netlabs.com (ns.netlabs.com [192.94.48.47]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id IAA02866;
          Tue, 19 Dec 1995 08:52:02 -0800
Received: by proxy.netlabs.com (4.1/SMI-4.1) id AA06854;
          Tue, 19 Dec 95 08:57:23 PST
Received: from vaccine-bb.sems.com(192.190.199.1) by proxy.netlabs.com 
          via smap (V1.3) id sma006852; Tue Dec 19 08:57:11 1995
Received: from scalpel (scalpel.netlabs.com) by netlabs.com (4.1/SMI-4.1) 
          id AA08317; Tue, 19 Dec 95 08:54:27 PST
Received: from localhost.netlabs.com by scalpel (4.1/SMI-4.1) id AA05876;
          Tue, 19 Dec 95 08:54:25 PST
Message-Id: <9512191654.AA05876@scalpel>
To: dmag@umich.edu (Dan DeMaggio)
Cc: William Warner <billw@airone.claircom.com>, dbi-announce@fugue.com, 
    dbi-users@fugue.com, Tim.Bunce@ig.co.uk, ak@ananke.s.bawue.de, 
    kejin@lithium.empress.com
Subject: Re: New directions for DBI - Important
In-Reply-To: Your message of "Tue, 19 Dec 95 00:02:17 EST." <30D64759.7D1A@umich.edu>
Date: Tue, 19 Dec 95 08:54:25 -0800
From: Larry Wall <lwall@scalpel.netlabs.com>

: William Warner wrote:
: > DBI's second priority should be to reduce the first priority to a one-liner.
: 
: Couldn't have said it better myself. I've been learning Java the past few
: months. It's better than C (no pointers!), but it shares a commom property
: with C: A lot of your code turns out to be detailed housekeeping. Even when
: you understand something and have written it a million times, it still takes
: a lot of code. There's no compressing it to a smaller program.
: 
: In Perl, the language allows experienced programmers to take 'shortcuts'
: (and hence, compress your program.)  To me, the Database interface must be
: usable in 4 or 5 calls (open database, send SQL, fetch results, close database).
: On the otherhand, this ignores fancy things like "will my 5 MB string fit into
: that fixed-length database field?".  This requires a full-featured DB interface
: like ODBC.

Easy things should be easy.  Hard things should be possible.  Most computer
languages fail on one or the other of these counts.

Larry
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <27772-2@oink>;
          Tue, 19 Dec 1995 17:50:04 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819393789:06540:3; Tue, 19 Dec 95 17:23:09 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa04878; 19 Dec 95 17:20 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA02697 for dbi-users-real; Tue, 19 Dec 1995 08:05:35 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from eol1 (eol1.eo.lu [193.93.48.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id IAA02693 
          for <dbi-users@fugue.com>; Tue, 19 Dec 1995 08:05:21 -0800
Received: from [193.93.48.253] by eol1 with smtp (Smail3.1.28.1 #4) 
          id m0tS4XG-000bKRC; Tue, 19 Dec 95 17:05 MET
Message-Id: <m0tS4XG-000bKRC@eol1>
To: "dbi-users@fugue.com" <dbi-users@fugue.com>
Subject: Re: Trying to install DBD::Oracle
Date: Tue, 19 Dec 95 17:02:29 --0100
From: Massimo Balestra <mbalestra@flower.it>
X-Mailer: E-Mail Connection v2.5.03
CC: "Li, Alexander" <AlexLi@msmail.hsii.ccare.com>

-- [ From: Massimo Balestra * EMC.Ver #2.5.02 ] --


-------- REPLY, Original message follows --------

> Date: Monday, 18-Dec-95 07:36 PM
> 
> From: Li, Alexander            \ Internet:    (alexli@msmail.hsii.ccare.
com)
> To:   dbi-users@fugue.com      \ Internet:    (dbi-users@fugue.com)
> cc:   Tim Bunce                \ Internet:    (tim.bunce@ig.co.uk)
> 
> Subject: Trying to install DBD::Oracle
> 
> Hello all,
> 
> I have Perl 5 and DBI-0.65 installed and  attemping  to install DBD::
Oracle.
> 
>  -----
> gh753> perl Makefile.PL
> 
> Configuring DBD::Oracle version 0.21...
> Remember to actually read the README file!
> 
> Using Oracle in /usr/local/oracle
> Warning: OCI (Pro*C) does not appear to be installed.
> Oracle sysliblist: -lsocket -lnsl -lm -ldl -laio -lposix4
> Unable to locate proc.mk (use -m /path/to/proc.mk to specify)
>  ----
> 
> Ok, I don't have OCI (Pro*C), which is correct.  Now, do I need *all* the 
> Oracle
> components installed or just the OCI (Pro*C) module will do?
> 
> Here's my config. info:

.............



>  --------------------------------
> Alex Li
> Sys. Admin
> Health Systems Integration, Inc.
>  --------------------------------
> 

-------- REPLY, End of original message --------
Hi,

I don't have ProC installed too but taking a look at the Makefile.PL file I
found that we have to tell the installation to use oracle.mk instead of proc
.mk.
To do this you have only to pass the following parameter: -m /path/to/oracle
.mk to the makefile maker.
The complete command I type is:
perl Makefile.PL -m path/to/oracle.mk

Then I Install all the rest in the standard way.

On my machine it works. 

Try and let me know.

Bye
        Massimo



--
__________________________________________________________________

  o    _______________ 
 /\_  _|             |             Massimo Balestra
_\__`[_______________|         Email mbalestra@flower.it
] [ \, ][         ][ 
__________________________________________________________________

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <28481-0@oink>;
          Tue, 19 Dec 1995 19:15:36 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819396156:11529:2; Tue, 19 Dec 95 18:02:36 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-2.mail.demon.net 
          id aa11113; 19 Dec 95 18:02 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id IAA02870 for dbi-users-real; Tue, 19 Dec 1995 08:52:04 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from proxy.netlabs.com (ns.netlabs.com [192.94.48.47]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id IAA02866;
          Tue, 19 Dec 1995 08:52:02 -0800
Received: by proxy.netlabs.com (4.1/SMI-4.1) id AA06854;
          Tue, 19 Dec 95 08:57:23 PST
Received: from vaccine-bb.sems.com(192.190.199.1) by proxy.netlabs.com 
          via smap (V1.3) id sma006852; Tue Dec 19 08:57:11 1995
Received: from scalpel (scalpel.netlabs.com) by netlabs.com (4.1/SMI-4.1) 
          id AA08317; Tue, 19 Dec 95 08:54:27 PST
Received: from localhost.netlabs.com by scalpel (4.1/SMI-4.1) id AA05876;
          Tue, 19 Dec 95 08:54:25 PST
Message-Id: <9512191654.AA05876@scalpel>
To: dmag@umich.edu (Dan DeMaggio)
Cc: William Warner <billw@airone.claircom.com>, dbi-announce@fugue.com, 
    dbi-users@fugue.com, Tim.Bunce@ig.co.uk, ak@ananke.s.bawue.de, 
    kejin@lithium.empress.com
Subject: Re: New directions for DBI - Important
In-Reply-To: Your message of "Tue, 19 Dec 95 00:02:17 EST." <30D64759.7D1A@umich.edu>
Date: Tue, 19 Dec 95 08:54:25 -0800
From: Larry Wall <lwall@scalpel.netlabs.com>

: William Warner wrote:
: > DBI's second priority should be to reduce the first priority to a one-liner.
: 
: Couldn't have said it better myself. I've been learning Java the past few
: months. It's better than C (no pointers!), but it shares a commom property
: with C: A lot of your code turns out to be detailed housekeeping. Even when
: you understand something and have written it a million times, it still takes
: a lot of code. There's no compressing it to a smaller program.
: 
: In Perl, the language allows experienced programmers to take 'shortcuts'
: (and hence, compress your program.)  To me, the Database interface must be
: usable in 4 or 5 calls (open database, send SQL, fetch results, close database).
: On the otherhand, this ignores fancy things like "will my 5 MB string fit into
: that fixed-length database field?".  This requires a full-featured DB interface
: like ODBC.

Easy things should be easy.  Hard things should be possible.  Most computer
languages fail on one or the other of these counts.

Larry
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <28481-15@oink>;
          Tue, 19 Dec 1995 19:17:00 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819398901:07280:1; Tue, 19 Dec 95 18:48:21 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-2.mail.demon.net 
          id aa06178; 19 Dec 95 18:47 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA03125 for dbi-dev-real; Tue, 19 Dec 1995 10:05:17 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay.inferentia.it (dns.inferentia.it [151.99.220.4]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA03114;
          Tue, 19 Dec 1995 10:04:26 -0800
Received: from yquem.inferentia.it (yquem.inferentia.it [194.184.62.17]) 
          by relay.inferentia.it (8.6.12/8.6.12) with SMTP id TAA22686;
          Tue, 19 Dec 1995 19:03:33 +0100
Posted-Date: Tue, 19 Dec 1995 19:03:33 +0100
Received: by yquem.inferentia.it with Microsoft Mail 
          id <01BACE46.5CF1E820@yquem.inferentia.it>;
          Tue, 19 Dec 1995 19:15:30 +-100
Message-ID: <01BACE46.5CF1E820@yquem.inferentia.it>
From: Davide Migliavacca <Davide.Migliavacca@inferentia.it>
To: "'dbi-users@fugue.com'" <dbi-users@fugue.com>
Cc: "'dbi-dev@fugue.com'" <dbi-dev@fugue.com>
Subject: RE: Trying to install DBD::Oracle
Date: Tue, 19 Dec 1995 19:15:28 +-100
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

It seems Massimo is right.
I have looked and the .map files for the various products. The libocic.a =
library is part of ocommon, so it should be necessary to install Pro*C =
in order to compile DBD.
Tested with Oracle 7.1.6 on both AIX 3.2.5 and DEC OSF/1 3.2.=20
Fair warning: I have NOT disinstalled Pro*C to test it completely.
I think it is worth a look since it seems people starts using DBI from =
scratch instead of slowly substituing Pro*C...

On marted=EC 19 dicembre 1995 18.02, Massimo =
Balestra[SMTP:mbalestra@flower.it] wrote:
> -- [ From: Massimo Balestra * EMC.Ver #2.5.02 ] --
[...]
> To do this you have only to pass the following parameter: -m =
/path/to/oracle.mk to the makefile maker.
[...]
> Then I Install all the rest in the standard way.
>=20
> On my machine it works.=20
>=20
> Try and let me know.
>=20
> Bye
>         Massimo

----------------------------------------
Davide Migliavacca - Inferentia (Milano, IT)
Phone +39 (2) 59928.1 FAX .221
*** opinions above are (you guess!) mine ***
----------------------------------------

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <28481-22@oink>;
          Tue, 19 Dec 1995 19:17:34 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819399670:14178:2; Tue, 19 Dec 95 19:01:10 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-2.mail.demon.net 
          id aa13785; 19 Dec 95 19:00 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA03118 for dbi-users-real; Tue, 19 Dec 1995 10:04:33 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay.inferentia.it (dns.inferentia.it [151.99.220.4]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA03114;
          Tue, 19 Dec 1995 10:04:26 -0800
Received: from yquem.inferentia.it (yquem.inferentia.it [194.184.62.17]) 
          by relay.inferentia.it (8.6.12/8.6.12) with SMTP id TAA22686;
          Tue, 19 Dec 1995 19:03:33 +0100
Posted-Date: Tue, 19 Dec 1995 19:03:33 +0100
Received: by yquem.inferentia.it with Microsoft Mail 
          id <01BACE46.5CF1E820@yquem.inferentia.it>;
          Tue, 19 Dec 1995 19:15:30 +-100
Message-ID: <01BACE46.5CF1E820@yquem.inferentia.it>
From: Davide Migliavacca <Davide.Migliavacca@inferentia.it>
To: "'dbi-users@fugue.com'" <dbi-users@fugue.com>
Cc: "'dbi-dev@fugue.com'" <dbi-dev@fugue.com>
Subject: RE: Trying to install DBD::Oracle
Date: Tue, 19 Dec 1995 19:15:28 +-100
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

It seems Massimo is right.
I have looked and the .map files for the various products. The libocic.a =
library is part of ocommon, so it should be necessary to install Pro*C =
in order to compile DBD.
Tested with Oracle 7.1.6 on both AIX 3.2.5 and DEC OSF/1 3.2.=20
Fair warning: I have NOT disinstalled Pro*C to test it completely.
I think it is worth a look since it seems people starts using DBI from =
scratch instead of slowly substituing Pro*C...

On marted=EC 19 dicembre 1995 18.02, Massimo =
Balestra[SMTP:mbalestra@flower.it] wrote:
> -- [ From: Massimo Balestra * EMC.Ver #2.5.02 ] --
[...]
> To do this you have only to pass the following parameter: -m =
/path/to/oracle.mk to the makefile maker.
[...]
> Then I Install all the rest in the standard way.
>=20
> On my machine it works.=20
>=20
> Try and let me know.
>=20
> Bye
>         Massimo

----------------------------------------
Davide Migliavacca - Inferentia (Milano, IT)
Phone +39 (2) 59928.1 FAX .221
*** opinions above are (you guess!) mine ***
----------------------------------------

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <29955-34@oink>;
          Tue, 19 Dec 1995 20:31:55 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819404259:07815:2; Tue, 19 Dec 95 20:17:39 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa07382; 19 Dec 95 20:16 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA03971 for dbi-users-real; Tue, 19 Dec 1995 11:46:25 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from localhost (mellon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          with SMTP id LAA03955; Tue, 19 Dec 1995 11:45:52 -0800
Message-Id: <199512191945.LAA03955@toccata.fugue.com>
To: dbi-announce@fugue.com, dbi-users@fugue.com
Subject: Re: New directions for DBI - Important
In-reply-to: Your message of "Tue, 19 Dec 1995 08:54:25 PST." <9512191654.AA05876@scalpel>
Date: Tue, 19 Dec 1995 11:45:51 -0800
From: Ted Lemon <mellon@fugue.com>


I've noticed that this discussion has been going on for a long time,
Cc'd to both dbi-users and dbi-announce.  Unfortunately, dbi-announce
is not moderated, which means that this entire discussion has been
going on on dbi-announce as well as dbi-users.  It's clearly not an
announcement, and is therefore not appropriate for dbi-announce.  I
wish I had some mechanical means of resolving this, but for now could
people please remember not to direct replies to dbi-announce?

Thanks!

			       _MelloN_
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <29955-35@oink>;
          Tue, 19 Dec 1995 20:31:59 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819404260:07850:1; Tue, 19 Dec 95 20:17:40 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa07332; 19 Dec 95 20:16 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA03960 for dbi-announce-real; Tue, 19 Dec 1995 11:45:53 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from localhost (mellon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          with SMTP id LAA03955; Tue, 19 Dec 1995 11:45:52 -0800
Message-Id: <199512191945.LAA03955@toccata.fugue.com>
To: dbi-announce@fugue.com, dbi-users@fugue.com
Subject: Re: New directions for DBI - Important
In-reply-to: Your message of "Tue, 19 Dec 1995 08:54:25 PST." <9512191654.AA05876@scalpel>
Date: Tue, 19 Dec 1995 11:45:51 -0800
From: Ted Lemon <mellon@fugue.com>


I've noticed that this discussion has been going on for a long time,
Cc'd to both dbi-users and dbi-announce.  Unfortunately, dbi-announce
is not moderated, which means that this entire discussion has been
going on on dbi-announce as well as dbi-users.  It's clearly not an
announcement, and is therefore not appropriate for dbi-announce.  I
wish I had some mechanical means of resolving this, but for now could
people please remember not to direct replies to dbi-announce?

Thanks!

			       _MelloN_
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01303-0@oink>;
          Tue, 19 Dec 1995 21:18:55 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819406938:00651:3; Tue, 19 Dec 95 21:02:18 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa00353; 19 Dec 95 21:01 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id MAA04350 for dbi-users-real; Tue, 19 Dec 1995 12:20:30 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from ns2.eds.com (ns2.eds.com [199.228.142.78]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id MAA04346 
          for <dbi-users@fugue.com>; Tue, 19 Dec 1995 12:20:28 -0800
Received: by ns2.eds.com (hello) id PAA32222; Tue, 19 Dec 1995 15:20:39 -0500
Received: by nnsp.eds.com (hello) id PAA09192; Tue, 19 Dec 1995 15:20:08 -0500
Received: from falcon (falcon.mmts.eds.com) by geronimo (5.x/SMI.SVR4) 
          id AA12666; Tue, 19 Dec 1995 14:18:49 -0600
Received: by falcon (940816.SGI.8.6.9/940406.SGI) id OAA00651;
          Tue, 19 Dec 1995 14:20:32 -0900
Date: Tue, 19 Dec 1995 14:20:32 -0900
Message-Id: <199512192320.OAA00651@falcon>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: dbi-users@fugue.com, mpeppler@itf.CH
Subject: Re: can DBI return rows as hashes keyed by column names?
In-Reply-To: <9512131905.AA04939@toad.ig.co.uk>
References: <9512131905.AA04939@toad.ig.co.uk>
Reply-To: afc@mmts.eds.com
From: afc@mmts.eds.com (Andy Cohan)
X-Attribution: AFC
X-Face: "P!:r4>2dA)dWK/L(NxSG)-Ffvhe/]5y%uxD}zzNJn{omcc&K8oU>ZXTvJQ,.&Z4C}m)m-8 
        mzKkq--xzt@CUf'FIp2^Jz(=Fj,t^rU@TfMex\1V=;+j-=o~bv$h3


  >> From: Andy Cohan <afc@mmts.eds.com>
  >> 
  >> I'm trying to get our own perl5 DB class to use DBI for an Oracle back end
  >> and I would like to support the Perl5 Sybase facility of optionally
  >> returning rows as associative arrays keyed by the result column names (we
  >> have used it extensively).
  >> 
  >> Does DBI and DBD::Oracle support this?  If not, is it planned?

>>>>> "Tim" == Tim Bunce <Tim.Bunce@ig.co.uk> writes:
  Tim> 	@fieldnames = (...);

  Tim> 	while(@hash{@fieldnames} = $sth->fetchrow) {
  Tim> 		...
  Tim> 	}
Thanks!  This is *definitely* helpful.  Now, if the query is something like
"SELECT * FROM one_table, two_table ...", how can I know what order the
columns are coming back in so that I can set up the fieldnames array?

AFC
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <01680-13@oink>;
          Tue, 19 Dec 1995 22:34:32 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819412201:16353:0; Tue, 19 Dec 95 22:30:01 GMT
Received: from relay-1.mail.demon.net ([158.152.1.140]) 
          by punt-1.mail.demon.net id aa15716; 19 Dec 95 22:28 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by relay-1.mail.demon.net 
          id aa23836; 19 Dec 95 22:28 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA04783 for dbi-users-real; Tue, 19 Dec 1995 13:37:50 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netmail.austin.ibm.com (netmail.austin.ibm.com [129.35.208.98]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id NAA04779 
          for <dbi-users@fugue.com>; Tue, 19 Dec 1995 13:37:48 -0800
From: mhm@austin.ibm.com
Received: from dax.austin.ibm.com (dax.austin.ibm.com [129.35.86.169]) 
          by netmail.austin.ibm.com (8.6.12/8.6.11) with SMTP id PAA58201;
          Tue, 19 Dec 1995 15:37:47 -0600
Received: by dax.austin.ibm.com (AIX 4.1/UCB 5.64/4.03-client-2.6) 
          for dmag@umich.edu at austin.ibm.com; id AA20074;
          Tue, 19 Dec 1995 15:37:45 -0600
Message-Id: <9512192137.AA20074@dax.austin.ibm.com>
To: Tim Bunce <Tim.Bunce@ig.co.uk>
Cc: dmag@umich.edu, dbi-users@fugue.com
Subject: Re: New directions for DBI - Important
In-Reply-To: Your message of Tue, 19 Dec 95 14:46:07 +0000. <9512191446.AA28679@toad.ig.co.uk>
Date: Tue, 19 Dec 95 15:37:44 -0600


Tim Bunce <Tim.Bunce@ig.co.uk>  writes:
|> Let me assure you that while the new DBI will include access to all ODBC
|> functions you will almost always be able to use high-level utility
|> methods, including the familiar:
|> 
|> 	$sth => $dbh->prepare("...");
|> 	$sth->execute;
|> 	@row = $sth->fetchrow;
|> 
|> Native ODBC is ugly and verbose.
|> 

Reminds me of COBOL  :-(

Mike
mhm@austin.ibm.com

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <02194-2@oink>;
          Tue, 19 Dec 1995 23:02:48 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819413952:19812:1; Tue, 19 Dec 95 22:59:12 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-2.mail.demon.net 
          id aa18647; 19 Dec 95 22:57 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id OAA05043 for dbi-dev-real; Tue, 19 Dec 1995 14:24:20 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from coffee.stanford.edu (coffee.Stanford.EDU [36.60.0.11]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id OAA05039 
          for <dbi-dev@fugue.com>; Tue, 19 Dec 1995 14:24:19 -0800
Received: from isl.Stanford.EDU (isl [36.60.0.10]) 
          by coffee.stanford.edu (8.7.1/8.7.1) with ESMTP id OAA03410;
          Tue, 19 Dec 1995 14:24:29 -0800 (PST)
From: "Sanford M. Dickert" <ncc1701a@isl.stanford.edu>
Received: (from ncc1701a@localhost) by isl.Stanford.EDU (8.7.1/8.7.1) 
          id OAA02872; Tue, 19 Dec 1995 14:24:29 -0800 (PST)
Date: Tue, 19 Dec 1995 14:24:29 -0800 (PST)
Message-Id: <199512192224.OAA02872@isl.Stanford.EDU>
To: Davide.Migliavacca@inferentia.it
Subject: RE: Trying to install DBD::Oracle
Cc: dbi-dev@fugue.com

Question - I utilized Massimo's suggestion (thanks again) but I found
another error in the make when I compiled.  The error is as follows:

------------------------------------------------------------------------
LD_RUN_PATH="" gcc -o blib/auto/DBD/Oracle/Oracle.so -G Oracle.o dbdimp.o -L/opt/oracle/v7.1.6/lib /opt/oracle/v7.1.6/lib/__fstd.o /opt/oracle/v7.1.6/lib/libocic.a /opt/oracle/v7.1.6/lib/osntab.o -lsqlnet -lora  -lsqlnet  -lora -lnlsrtl -lcv6 -lcore -lnlsrtl -lcv6           -lcore  `cat /opt/oracle/v7.1.6/rdbms/lib/sysliblist`  -R /opt/SUNWcluster/lib -Y P,/opt/SUNWspro/lib:/usr/openwin/lib:/opt/SUNWcluster/lib:/usr/ccs/lib:/usr/lib -Qy -lc /opt/oracle/v7.1.6/lib/crtn.o -lcore  -lsocket -lnsl -lm -ldl -laio
gcc: P,/opt/SUNWspro/lib:/usr/openwin/lib:/opt/SUNWcluster/lib:/usr/ccs/lib:/usr/lib: No such file or directory
gcc: unrecognized option `-Y'
make: *** [blib/auto/DBD/Oracle/Oracle.so] Error 1

------------------------------------------------------------------------

On line 250 of the Makefile, it reads:

LDSTRING= -R /opt/SUNWcluster/lib -Y P,$(LD_LIBRARY_PATH):/opt/SUNWcluster/lib:/usr/ccs/lib:/usr/lib -Qy -lc $(COMPOBJ)/crtn.o

Is this correct?

Sanford Dickert

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <02743-7@oink>;
          Wed, 20 Dec 1995 00:06:54 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819417921:05228:3; Wed, 20 Dec 95 00:05:21 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa04909; 20 Dec 95 0:04 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id PAA05491 for dbi-users-real; Tue, 19 Dec 1995 15:33:17 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from sultan.hsii.ccare.com ([192.101.181.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id PAA05486 
          for <dbi-users@fugue.com>; Tue, 19 Dec 1995 15:33:13 -0800
Received: from msgw.hsii.ccare.com by SULTAN.HSII.CCARE.COM (PMDF V5.0-5 #4597) 
          id <01HZ004G0U6O00069W@SULTAN.HSII.CCARE.COM> 
          for dbi-users@fugue.com; Tue, 19 Dec 1995 17:32:58 -0600 (CST)
Received: by msgw.hsii.ccare.com with Microsoft Mail 
          id <30D74BB3@msgw.hsii.ccare.com>;
          Tue, 19 Dec 1995 17:33:07 -0600 (CST)
Date: Tue, 19 Dec 1995 17:33:00 -0600 (CST)
From: "Li, Alexander" <AlexLi@msmail.hsii.ccare.com>
Subject: Where is "imp_fbh_t" defined?
To: DBI User List <dbi-users@fugue.com>
Message-id: <30D74BB3@msgw.hsii.ccare.com>
X-Mailer: Microsoft Mail V3.0
Content-transfer-encoding: 7BIT
Encoding: 23 TEXT


Hello,

Anyone know where is "imp_fbh_t" defined?  I got this when I try to make 
DBD::Oracle:

 ---
gh753> make
cc -c -DDEBUGGING -O -Kpic -I/usr/local/lib/perl5/sun4-solaris/CORE 
 -I/sparcy/o
racle/rdbms/demo  -I/sparcy/oracle/rdbms/demo 
 -I/usr/local/lib/perl5/sun4-solari
s/DBI Oracle.c
"./dbdimp.h", line 47: syntax error before or at: imp_fbh_t
"./dbdimp.h", line 47: cannot recover from previous errors
cc: acomp failed for Oracle.c
*** Error code 2
make: Fatal error: Command failed for target `Oracle.o'
gh753>
 ----

Thanks again.

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <04104-0@oink>;
          Wed, 20 Dec 1995 07:08:02 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819421059:16064:1; Wed, 20 Dec 95 00:57:39 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-2.mail.demon.net 
          id aa15832; 20 Dec 95 0:57 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA05740 for dbi-users-real; Tue, 19 Dec 1995 16:25:25 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id QAA05736 
          for <dbi-users@fugue.com>; Tue, 19 Dec 1995 16:25:20 -0800
Received: from post.demon.co.uk ([158.152.1.72]) by relay-4.mail.demon.net 
          id aa16078; 20 Dec 95 0:09 GMT
Received: from ignite.demon.co.uk ([158.152.8.99]) by relay-3.mail.demon.net 
          id ac12171; 20 Dec 95 0:05 GMT
Received: from toad by oink with SMTP (PP) id <02685-0@oink>;
          Tue, 19 Dec 1995 23:53:04 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA03089;
          Tue, 19 Dec 1995 23:52:37 +0000
Date: Tue, 19 Dec 1995 23:52:37 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512192352.AA03089@toad.ig.co.uk>
To: afc@mmts.eds.com
Subject: Re: can DBI return rows as hashes keyed by column names?
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 977
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: afc@mmts.eds.com (Andy Cohan)
> 
>   >> From: Andy Cohan <afc@mmts.eds.com>
>   >> 
>   >> I'm trying to get our own perl5 DB class to use DBI for an Oracle back end
>   >> and I would like to support the Perl5 Sybase facility of optionally
>   >> returning rows as associative arrays keyed by the result column names (we
>   >> have used it extensively).
>   >> 
>   >> Does DBI and DBD::Oracle support this?  If not, is it planned?
> 
> >>>>> "Tim" == Tim Bunce <Tim.Bunce@ig.co.uk> writes:
>   Tim> 	@fieldnames = (...);
> 
>   Tim> 	while(@hash{@fieldnames} = $sth->fetchrow) {
>   Tim> 		...
>   Tim> 	}
> Thanks!  This is *definitely* helpful.  Now, if the query is something like
> "SELECT * FROM one_table, two_table ...", how can I know what order the
> columns are coming back in so that I can set up the fieldnames array?

If you don't know the names in advance why bother sticking them in a hash?

Never mind. Use:

	@fieldnames = @{$sth->{'NAME'}};

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04108-6@oink>;
          Wed, 20 Dec 1995 07:09:24 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819420759:26609:1; Wed, 20 Dec 95 00:52:39 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa26254; 20 Dec 95 0:51 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA05771 for dbi-dev-real; Tue, 19 Dec 1995 16:30:56 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id QAA05767 
          for <dbi-dev@fugue.com>; Tue, 19 Dec 1995 16:30:51 -0800
Received: from post.demon.co.uk ([158.152.1.72]) by relay-4.mail.demon.net 
          id aa17584; 20 Dec 95 0:20 GMT
Received: from ignite.demon.co.uk ([158.152.8.99]) by relay-3.mail.demon.net 
          id aa14434; 20 Dec 95 0:16 GMT
Received: from toad by oink with SMTP (PP) id <03074-0@oink>;
          Wed, 20 Dec 1995 00:16:32 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA03173;
          Wed, 20 Dec 1995 00:16:05 +0000
Date: Wed, 20 Dec 1995 00:16:05 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512200016.AA03173@toad.ig.co.uk>
To: ncc1701a@isl.stanford.edu
Subject: Re: New directions for DBI - Important
Cc: dbi-dev@fugue.com
X-Sun-Charset: US-ASCII
content-length: 309
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: "Sanford M. Dickert" <ncc1701a@ISL.Stanford.EDU>
> 
> Tim - check out my last message - I think you have a typo on that particular line.  I fixed it myself (changing -Y P, to -YP,).
> 
> Sanford

The typo is not mine but Oracle's (as usual).

Makefile.PL reads that line from Oracle's proc.mk.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <04107-19@oink>;
          Wed, 20 Dec 1995 07:10:31 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819427969:14939:2; Wed, 20 Dec 95 02:52:49 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa14883; 20 Dec 95 2:52 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA06364 for dbi-users-real; Tue, 19 Dec 1995 18:23:35 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from sultan.hsii.ccare.com ([192.101.181.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id SAA06360 
          for <dbi-users@fugue.com>; Tue, 19 Dec 1995 18:23:33 -0800
Received: from msgw.hsii.ccare.com by SULTAN.HSII.CCARE.COM (PMDF V5.0-5 #4597) 
          id <01HZ062EANJK0007DB@SULTAN.HSII.CCARE.COM>;
          Tue, 19 Dec 1995 20:23:07 -0600 (CST)
Received: by msgw.hsii.ccare.com with Microsoft Mail 
          id <30D77396@msgw.hsii.ccare.com>;
          Tue, 19 Dec 1995 20:23:18 -0600 (CST)
Date: Tue, 19 Dec 1995 20:20:00 -0600 (CST)
From: "Li, Alexander" <AlexLi@msmail.hsii.ccare.com>
Subject: DBD::Oracle failed on make test -- ora_login fail
To: DBI User List <dbi-users@fugue.com>
Cc: Tim Bunce <tim.bunce@ig.co.uk>
Message-id: <30D77396@msgw.hsii.ccare.com>
X-Mailer: Microsoft Mail V3.0
Content-transfer-encoding: 7BIT
Encoding: 78 TEXT


Here's a little twist about my install process:

I don't have enough disk space on the same machine for both Oracle and the 
works.
So I NFS mounted a Oracle directory during the install.  But I need Pro*C 
stuff ( I tried
making using oracle.mk, didn't work, I still owe M. Balestra a reply).  When 
Pro*C
is installed and before relinking all the Oracle executables, I ran out of 
space on
that machine too.

Would this *twist* have any effect on the following problem?

Anyway, I pass the make stage (w/ proc.mk) 'make test' give me this:

 ----
gh753> make test
/usr/local/bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/sun4-solaris 
 -I/ust
t/base..............ok
t/main..............ok
All tests successful.
Files=2,  Tests=6,  3 secs ( 1.63 cusr  0.45 csys =  2.08 cpu)
/usr/local/bin/perl -I./blib -I./blib -I/usr/local/lib/perl5/sun4-solaris 
 -I/usl
Oraperl test application $Revision: 1.19 $

Oraperl Emulation Interface version 1.23
Oracle Driver 1.21
DBI Switch by Tim Bunce, version 1.48


Connecting
 to 'v718' (from command line, else uses ORACLE_SID/TWO_TASK)
 as 'next/nextstep' (via ORACLE_USERID environment var or default)
ora_login: 1034: ORA-01034: ORACLE not available (DBD: login failed)

ORACLE_SID or TWO_TASK possibly not right, or server not running.

Could not connect to database. Test aborted.
*** Error code 2
make: Fatal error: Command failed for target `test_dynamic'
 ---------

I'm able to connect to 'v718' using the same user/passwd via SQLPlus.

My config looks like:

 --------
gh753> perl -e 'use Config; print Config::myconfig()'
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=solaris, osver=2.4, archname=sun4-solaris
    uname='sunos gh753 5.4 generic_101945-10 sun4m sparc '
    hint=recommended
  Compiler:
    cc='cc', optimize='-O'
    cppflags='-DDEBUGGING'
    ccflags ='-DDEBUGGING'
    ldflags =''
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    voidflags=15, castflags=0, d_casti32=define, d_castneg=define
    intsize=4, alignbytes=8, usemymalloc=y, randbits=15
  Libraries:
    so=so
    libpth=/lib /usr/lib /usr/ccs/lib /usr/local/lib
    libs=-lsocket -lnsl -ldl -lm -lc -lcrypt
    libc=/usr/lib/libc.so
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=
    cccdlflags='-Kpic', ccdlflags=' ', lddlflags='-G'
 ----------

Thanks again.

Alex Li
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <09131-14@oink>;
          Wed, 20 Dec 1995 16:52:10 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819477276:22200:2; Wed, 20 Dec 95 16:34:36 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa21946; 20 Dec 95 16:34 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA09208 for dbi-users-real; Wed, 20 Dec 1995 07:09:09 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id HAA09204 
          for <dbi-users@fugue.com>; Wed, 20 Dec 1995 07:08:49 -0800
Received: from post.demon.co.uk ([158.152.1.72]) by relay-4.mail.demon.net 
          id ac20935; 20 Dec 95 15:04 GMT
Received: from ignite.demon.co.uk ([158.152.8.99]) by relay-3.mail.demon.net 
          id aa23616; 20 Dec 95 15:01 GMT
Received: from toad by oink with SMTP (PP) id <08245-0@oink>;
          Wed, 20 Dec 1995 14:40:14 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA05001;
          Wed, 20 Dec 1995 14:39:47 +0000
Date: Wed, 20 Dec 1995 14:39:47 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512201439.AA05001@toad.ig.co.uk>
To: dbi-users@fugue.com, AlexLi@msmail.hsii.ccare.com
Subject: Re: DBD::Oracle failed on make test -- ora_login fail
X-Sun-Charset: US-ASCII
content-length: 670
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: "Li, Alexander" <AlexLi@msmail.hsii.ccare.com>
> 
> 
> Connecting
>  to 'v718' (from command line, else uses ORACLE_SID/TWO_TASK)
>  as 'next/nextstep' (via ORACLE_USERID environment var or default)
> ora_login: 1034: ORA-01034: ORACLE not available (DBD: login failed)
> 
> ORACLE_SID or TWO_TASK possibly not right, or server not running.
> 
> I'm able to connect to 'v718' using the same user/passwd via SQLPlus.

Try not specifying v718 on the command line, i.e., let DBD::Oracle use
the env vars in the same way that SQLplus does.

I'd guess that v718 is an Sql*NET alias - which don't work currently
since DBD::Oracle can't tell that it's an alias.

Tim.
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <12069-15@oink>;
          Thu, 21 Dec 1995 07:08:21 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819493693:28882:0; Wed, 20 Dec 95 21:08:13 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-2.mail.demon.net 
          id aa28103; 20 Dec 95 21:07 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA09860 for dbi-users-real; Wed, 20 Dec 1995 10:53:04 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from sultan.hsii.ccare.com ([192.101.181.3]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id KAA09856 
          for <dbi-users@fugue.com>; Wed, 20 Dec 1995 10:53:01 -0800
Received: from msgw.hsii.ccare.com by SULTAN.HSII.CCARE.COM (PMDF V5.0-5 #4597) 
          id <01HZ14M6NIJK00078Y@SULTAN.HSII.CCARE.COM>;
          Wed, 20 Dec 1995 12:52:36 -0600 (CST)
Received: by msgw.hsii.ccare.com with Microsoft Mail 
          id <30D85B78@msgw.hsii.ccare.com>;
          Wed, 20 Dec 1995 12:52:40 -0600 (CST)
Date: Wed, 20 Dec 1995 12:51:00 -0600 (CST)
From: "Li, Alexander" <AlexLi@msmail.hsii.ccare.com>
Subject: Re: DBD::Oracle failed on make test -- ora_login fail
To: "Sanford M. Dickert" <ncc1701a@isl.stanford.edu>
Cc: DBI User List <dbi-users@fugue.com>, Tim Bunce <tim.bunce@ig.co.uk>
Message-id: <30D85B78@msgw.hsii.ccare.com>
X-Mailer: Microsoft Mail V3.0
Content-transfer-encoding: 7BIT
Encoding: 31 TEXT


I just realize one thing that I'm doing is *very* different from everyone 
else.  That is
I'm running on a true Oracle client machine.  i.e. I have no Oracle server 
installed
on the client machine.  Thanks to Tim, I found out sqlplus works only like

     sqlplus next/next@v718

but never just "sqlplus" even my ORACLE_SID is set.  After talking to 
someone who
is more an expert in Oracle, you cannot run sqlplus on a client machine w/o
a "fully qualified" name and connect string.

I'm going to move all the tools to the Oracle server box for now.  But is 
there anyone
out there tried running the DBD tool on a client machine?

Thanks for all who have help and responed to my messages.
 ----------
From: Sanford M. Dickert
To: AlexLi
Subject: Re:  DBD::Oracle failed on make test -- ora_login fail
Date: Wednesday, December 20, 1995 9:25AM

Question - I had the same problem but it was solved once I used the
correct database SID.  Also, do you have the server running? (I know - silly 

question, but I didn't the first time I ran Tim's script).

Sanford
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12068-16@oink>;
          Thu, 21 Dec 1995 07:08:25 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819483178:09918:2; Wed, 20 Dec 95 18:12:58 GMT
Received: from relay-1.mail.demon.net ([158.152.1.140]) 
          by punt-1.mail.demon.net id aa09856; 20 Dec 95 18:12 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by relay-1.mail.demon.net 
          id aa16746; 20 Dec 95 18:12 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id GAA09151 for dbi-users-real; Wed, 20 Dec 1995 06:37:56 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from CHILD.PRODIGY.CS.CMU.EDU (CHILD.PRODIGY.CS.CMU.EDU [128.2.242.220]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id GAA09147 
          for <dbi-users@fugue.com>; Wed, 20 Dec 1995 06:37:54 -0800
Received: from [127.0.0.1] by CHILD.PRODIGY.CS.CMU.EDU id aa05330;
          20 Dec 95 9:37 EST
Reply-To: desilva+@cmu.edu
To: dbi-users@fugue.com
Subject: Keeping an Oracle connection open
Date: Wed, 20 Dec 1995 09:37:34 -0500
Message-ID: <5328.819470254@CHILD.PRODIGY.CS.CMU.EDU>
From: Rujith de Silva <Rujith_S_DeSilva@child.prodigy.cs.cmu.edu>

-----BEGIN PGP SIGNED MESSAGE-----

Is there any way to have an exiting process NOT close an open lda?

I have a WWW server that gets an Oracle connection (lda), then accepts an
HTTP request, forks off a child, and lets the child use the lda.  The
trouble is, after processing the request, the child automatically closes
the lda when exiting (its DESTROY method is probably getting called).  This
makes the lda unusable for the parent as well.  Is there any way to get
around this?

Versions: SunOS 4.1.3_U1, perl 5.002 beta, DBI 0.65, DBD::Oracle 0.27,
          Oraperl 1.23

Later,
Rujith.

Rujith de Silva.  1-(412) 268-3620.  desilva+@cmu.edu
http://www.cs.cmu.edu/~desilva/
PGP public key available by finger.

-----BEGIN PGP SIGNATURE-----
Version: 2.6.2

iQCVAwUBMNgfqYkharavxuYRAQFUaAQAsDHNLoCr+bMLbunymfJ+I47gsuRHNbFD
Ucsz1atvsZ/UDjHy6syoNMj4IoDMm8o3ruGdJUFLktZ5HG3+4fGEHO78H6J+MilK
oz/Kd7tCYNXrXnSjEg4qYe4GEFX/rYkPK9b5eO54yBfuALtqf6FZrABZjbHnBp+c
MPrHAQTg84s=
=qZxC
-----END PGP SIGNATURE-----
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12260-21@oink>;
          Thu, 21 Dec 1995 07:20:40 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819501050:10033:1; Wed, 20 Dec 95 23:10:50 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa09786; 20 Dec 95 23:10 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA10433 for dbi-users-real; Wed, 20 Dec 1995 13:11:39 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from colossus.cse.psu.edu (root@colossus.cse.psu.edu [130.203.1.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id NAA10429 
          for <dbi-users@fugue.com>; Wed, 20 Dec 1995 13:11:37 -0800
Received: from localhost by colossus.cse.psu.edu with SMTP id <78355>;
          Wed, 20 Dec 1995 16:11:31 -0500
X-Mailer: exmh version 1.6.1 5/23/95
To: "Li, Alexander" <AlexLi@msmail.hsii.ccare.com>
cc: dbi-users@fugue.com
Subject: Re: DBD::Oracle failed on make test -- ora_login fail
In-reply-to: Your message of "Wed, 20 Dec 1995 13:51:00 EST." <30D85B78@msgw.hsii.ccare.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Wed, 20 Dec 1995 16:10:21 -0500
From: John D Groenveld <groenvel@cse.psu.edu>
Message-Id: <95Dec20.161131est.78355@colossus.cse.psu.edu>

> but never just "sqlplus" even my ORACLE_SID is set.  After talking to 
> someone who
> is more an expert in Oracle, you cannot run sqlplus on a client machine w/o
> a "fully qualified" name and connect string.

Wait, now you have me confused. With SQLNet V1, there was a neat variable 
TWO_TASK that would let you do this. TWO_TASK has gone a way with SQLNet V2
because you can now have aliases which specify the driver, host, and database
name. Perhaps Tim should add "which version of SQLNet" to the vital 
information needed when posting a problem.
Then again, its been a long time since I used Oracle RDBMS v6 and SQLNetv1. :)

> I'm going to move all the tools to the Oracle server box for now.  But is 
> there anyone
> out there tried running the DBD tool on a client machine?

Yes, what does the below code give you on your client? I'm assuming you are
using SQLNetV2, so the only Oracle environment variable you need is TNS_ADMIN.

What I plan to do is set up my Solaris X86 machine as my webserver. I'll 
install
Oracle on the PC and then remove it after DBPerl is working. Then, I'll have
my CGI scripts on the X86 machine use SQLNet2 to access my Oracle SPARCServers.

Good luck,
John
groenvel@cse.psu.edu

#!/usr/bin/perl
use Oraperl;
$lda = &ora_login("", "scott\@SQLNET2Alias","tiger") || die "ora_login: 
$ora_errno: $ora_errstr\n";
$csr = &ora_open($lda,"select sysdate from dual");
while (@row = &ora_fetch($csr)) {
  print @row,"\n";
}
&ora_close($csr);
&ora_logoff($lda);

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12260-22@oink>;
          Thu, 21 Dec 1995 07:20:49 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819501254:11815:1; Wed, 20 Dec 95 23:14:14 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa11643; 20 Dec 95 23:13 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA10564 for dbi-users-real; Wed, 20 Dec 1995 13:37:16 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from voro.lbl.gov (voro.lbl.gov [131.243.64.29]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id NAA10560 
          for <dbi-users@fugue.com>; Wed, 20 Dec 1995 13:37:14 -0800
Received: from voro (localhost [127.0.0.1]) by voro.lbl.gov (8.6.12/G) 
          with ESMTP id NAA01182; Wed, 20 Dec 1995 13:33:02 -0800
Message-Id: <199512202133.NAA01182@voro.lbl.gov>
X-Mailer: exmh version 1.6.2 7/18/95
To: "Li, Alexander" <AlexLi@msmail.hsii.ccare.com>
cc: "Sanford M. Dickert" <ncc1701a@isl.stanford.edu>, 
    DBI User List <dbi-users@fugue.com>, Tim Bunce <tim.bunce@ig.co.uk>
Subject: Re: DBD::Oracle failed on make test -- ora_login fail
In-reply-to: Your message of "Wed, 20 Dec 1995 12:51:00 CST." <30D85B78@msgw.hsii.ccare.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Wed, 20 Dec 1995 13:33:02 -0800
From: Mark Dedlow <dedlow@voro.lbl.gov>


> I just realize one thing that I'm doing is *very* different from everyone 
> else.  That is
> I'm running on a true Oracle client machine.  i.e. I have no Oracle server 
> installed
> on the client machine.  Thanks to Tim, I found out sqlplus works only like

Actually, I imagine many people do this... I know I do.

>      sqlplus next/next@v718
> 
> but never just "sqlplus" even my ORACLE_SID is set.  

Think about it for a moment.  Your ORACLE_SID is just a simple
string, like "payroll" perhaps.  How could sqlplus possibly know
where this database resides?  On what network host is it?  sqlplus
needs more info...  but first let's step back a bit.

Oracle client tools (e.g. sqlplus) use the combination of ORACLE_HOME
and ORACLE_SID environment variables to locate a shared memory segment
set up by the Oracle server.  Running in this mode, the client-server
communication is entirely via IPC (Inter Process Communication, e.g. shared 
memory, semaphores, etc.)  If the server is on another machine, clearly 
the processes can't communicate via IPC.   Accordingly, the *environment
variable* ORACLE_SID has no real meaning on client that's on a different
machine than the server.  

(Note that ORACLE_SID is often used to refer to the actual environment
variable, and often just as a casual "name" of a database.)

If the server is on a different machine, there needs to be a different
syntax, which with sqlnet v1 is:

    username/password@T:hostname:ORACLE_SID

Where ORACLE_SID is the ORACLE_SID *on* the remote machine.  Note that
what you are really doing in not connecting to the database server, but
connecting to the sqlnet daemon, which is of course running on the same
machine as the server.  The sqlnet daemon uses the ORACLE_SID *string*
you pass it to "find" the database on the remote server, much the same
way sqlplus would find the server running on the same machine (i.e. IPC).

If you are using sqlnet v2, the syntax is simpler looking, because
the hostname, network protocol, and remote database are hidden away
in a configuration file.  E.g.:

    username/password@payroll

There is a file (/etc/tnsnames.ora, or /var/opt/oracle/tnsnames.ora) that
has something like this:

payroll = 
  (DESCRIPTION = 
    (ADDRESS_LIST = 
        (ADDRESS = 
          (PROTOCOL = TCP)
          (Host = hostname.net)
          (Port = 1521)
        )
    (CONNECT_DATA = (SID = payroll))
  )


Finally, on a client, there is an env variable to sort of serve the
function of ORACLE_SID for remote connections.  It is TWO_TASK.
Thus, this connects me to a remote database:

% setenv TWO_TASK T:hostname:ORACLE_SID
% sqlplus username/password

Note that if you have *both* local and remote databases, and you
have ORACLE_SID *and* TWO_TASK set, and you don't specify a fully
qualified connect string on the command line, TWO_TASK takes precedence
over ORACLE_SID (i.e. you get connected to remote system).

Hope this all makes some sense and helps.

Mark



---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12324-0@oink>;
          Thu, 21 Dec 1995 07:21:09 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819530325:26965:1; Thu, 21 Dec 95 07:18:45 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa26836; 21 Dec 95 7:18 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id UAA11769 for dbi-users-real; Wed, 20 Dec 1995 20:16:26 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from voro.lbl.gov (voro.lbl.gov [131.243.64.29]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id UAA11765 
          for <dbi-users@fugue.com>; Wed, 20 Dec 1995 20:16:24 -0800
Received: from voro (localhost [127.0.0.1]) by voro.lbl.gov (8.6.12/G) 
          with ESMTP id UAA02303; Wed, 20 Dec 1995 20:12:12 -0800
Message-Id: <199512210412.UAA02303@voro.lbl.gov>
X-Mailer: exmh version 1.5.3 12/28/94
To: John D Groenveld <groenvel@cse.psu.edu>
cc: "Li, Alexander" <AlexLi@msmail.hsii.ccare.com>, dbi-users@fugue.com
Subject: Re: DBD::Oracle failed on make test -- ora_login fail
In-reply-to: Your message of "Wed, 20 Dec 1995 16:10:21 EST." <95Dec20.161131est.78355@colossus.cse.psu.edu>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Wed, 20 Dec 1995 20:12:12 -0800
From: Mark Dedlow <dedlow@voro.lbl.gov>

> Wait, now you have me confused. With SQLNet V1, there was a neat variable 
> TWO_TASK that would let you do this. TWO_TASK has gone a way with SQLNet V2

It's still there on SunOS and Solaris, and probably other flavors of unix.
Just set TWO_TASK to your sqlnet v2 alias.  On MS Win and Macs, there
are the LOCAL/REMOTE aliases in the CONFIG.ORA that have similar effect.

> Then again, its been a long time since I used Oracle RDBMS v6 and SQLNetv1

And Oracle will stop supporting it pretty soon.  It won't ship with
7.3 and forward.  v2 has many advantages too.

> using SQLNetV2, so the only Oracle environment variable you need is TNS_ADMIN

Actually, you don't *require* that either.  It's only function is to tell
a tool where to find config files (tnsnames.ora, etc.) if they are not in 
any of the standard places.

Mark
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <12324-12@oink>;
          Thu, 21 Dec 1995 07:25:29 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819508208:05301:1; Thu, 21 Dec 95 01:10:08 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa04973; 21 Dec 95 1:09 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id QAA11183 for dbi-users-real; Wed, 20 Dec 1995 16:23:57 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mail1.is.net (root@mail1.is.net [198.69.24.4]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id QAA11179 
          for <dbi-users@fugue.com>; Wed, 20 Dec 1995 16:23:55 -0800
Received: from stimpy.encompass.is.net ([204.180.18.228]) 
          by mail1.is.net (8.6.11/8.6.12) with SMTP id TAA05925;
          Wed, 20 Dec 1995 19:15:19 -0500
Date: Wed, 20 Dec 1995 19:15:19 -0500
Message-Id: <199512210015.TAA05925@mail1.is.net>
X-Sender: terry@yakko
X-Mailer: Windows Eudora Light Version 1.5.2
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
To: dbi-users@fugue.com
From: Terry Greenlaw <terry@encompass.is.net>
Subject: Re: DBD::Oracle failed on make test -- ora_login fail
Cc: Mark Dedlow <dedlow@voro.lbl.gov>

At 01:33 PM 12/20/95 -0800, you wrote:
>

[sql*net info deleted]

>Finally, on a client, there is an env variable to sort of serve the
>function of ORACLE_SID for remote connections.  It is TWO_TASK.
>Thus, this connects me to a remote database:
>
>% setenv TWO_TASK T:hostname:ORACLE_SID
>% sqlplus username/password
>
>Note that if you have *both* local and remote databases, and you
>have ORACLE_SID *and* TWO_TASK set, and you don't specify a fully
>qualified connect string on the command line, TWO_TASK takes precedence
>over ORACLE_SID (i.e. you get connected to remote system).
>
>Hope this all makes some sense and helps.
>
>Mark

ORACLE_SID is really unnecessary to set since TWO_TASK provides the
same functionality in addition to allowing remote connections.

TWO_TASK = P:sid will use the pipe driver for local connections   SQL*Net 1.x
TWO_TASK = T:machine:sid will use TCP/IP (or D for DECNET, etc.) for remote
SQL*Net 1.x conn.
TWO_TASK = dbname will use the info stored in the SQL*Net 2.x configuration
file for local
           or remote connections.

ORACLE_HOME can also be left unset if you aren't using any of Oracle's
executables, but
   error messages may not display, and the current DBD::Oracle generates a
warning
   message (can this be disabled Tim ?).

I've found discouraging the use of ORACLE_SID makes it easier on the users
to see what is
going on. I just wish that TWO_TASK could be renamed, since it makes no
sense to the end
user, and doesn't have the ORACLE prefix on it.

Hope this doesn't fog the issue at hand too much ;-}

tog          
Terry Greenlaw                                           terry@encompass.is.net
Encompass Technologies
(770) 591-8903

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <18913-0@oink>;
          Thu, 21 Dec 1995 17:05:48 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819565506:19959:0; Thu, 21 Dec 95 17:05:06 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-2.mail.demon.net 
          id aa19091; 21 Dec 95 17:04 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id FAA14603 for dbi-users-real; Thu, 21 Dec 1995 05:23:14 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from colossus.cse.psu.edu (root@colossus.cse.psu.edu [130.203.1.2]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id FAA14599 
          for <dbi-users@fugue.com>; Thu, 21 Dec 1995 05:23:12 -0800
Received: from localhost by colossus.cse.psu.edu with SMTP id <78451>;
          Thu, 21 Dec 1995 08:23:12 -0500
X-Mailer: exmh version 1.6.1 5/23/95
To: Mark Dedlow <dedlow@voro.lbl.gov>
cc: dbi-users@fugue.com
Subject: Re: DBD::Oracle failed on make test -- ora_login fail
In-reply-to: Your message of "Wed, 20 Dec 1995 23:12:12 EST." <199512210412.UAA02303@voro.lbl.gov>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Thu, 21 Dec 1995 08:21:51 -0500
From: John D Groenveld <groenvel@cse.psu.edu>
Message-Id: <95Dec21.082312est.78451@colossus.cse.psu.edu>

> > Wait, now you have me confused. With SQLNet V1, there was a neat variable 
> > TWO_TASK that would let you do this. TWO_TASK has gone a way with SQLNet V2
> 
> It's still there on SunOS and Solaris, and probably other flavors of unix.
> Just set TWO_TASK to your sqlnet v2 alias.  On MS Win and Macs, there
> are the LOCAL/REMOTE aliases in the CONFIG.ORA that have similar effect.
> 
> > Then again, its been a long time since I used Oracle RDBMS v6 and SQLNetv1
> 
> And Oracle will stop supporting it pretty soon.  It won't ship with
> 7.3 and forward.  v2 has many advantages too.

All the documentation I've read is that TWO_TASK is a V1 variable. Since V1 is
going away and TWO_TASK is non-descriptive anyway, I recommend that people
phase out its use. Nice to see Oracle try to stay backwards compatable, though.

> > using SQLNetV2, so the only Oracle environment variable you need is TNS_ADMIN
> Actually, you don't *require* that either.  It's only function is to tell
> a tool where to find config files (tnsnames.ora, etc.) if they are not in 
> any of the standard places.

Be careful with this one. Under Solaris 2.4 and Oracle 7.1.6 (but not 7.1.4),
Oracle tools are shipped to check /var/opt/oracle for SQLNetV2 config files,
yet still fail when TNS_ADMIN is not set. In fact, when you truss these tools, 
you see it stat /var/opt/oracle and still die. Oracle Support's response was
that TNS_ADMIN is a required variable. :)
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <20670-2@oink>;
          Fri, 22 Dec 1995 07:06:23 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819567309:03937:0; Thu, 21 Dec 95 17:35:09 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-2.mail.demon.net 
          id aa03601; 21 Dec 95 17:34 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id FAA14611 for dbi-users-real; Thu, 21 Dec 1995 05:26:03 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from actcom.co.il (root@actcom.co.il [192.114.47.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id FAA14607 
          for <dbi-users@fugue.com>; Thu, 21 Dec 1995 05:25:55 -0800
Received: from astea.actcom.co.il by actcom.co.il with SMTP (8.6.12/actcom-0.1) 
          id PAA26621 for <dbi-users@fugue.com>;
          Thu, 21 Dec 1995 15:27:08 +0200 (rfc931-sender: p1.haifa1.actcom.co.il [192.114.47.31])
Message-ID: <30D96124.49C3@actcom.co.il>
Date: Thu, 21 Dec 1995 15:29:08 +0200
From: Leonid Borisov <astea@actcom.co.il>
Organization: Astea Israel
X-Mailer: Mozilla 2.0b3 (Win95; I)
MIME-Version: 1.0
To: dbi-users@fugue.com
Subject: (no subject)
X-URL: http://www.hermetica.com/technologia/DBI/doc/faq.html
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

unsubscibe Leonid Borisov <astea@actcom.co.il>
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <20670-7@oink>;
          Fri, 22 Dec 1995 07:06:56 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819572165:12119:1; Thu, 21 Dec 95 18:56:05 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-2.mail.demon.net 
          id aa11591; 21 Dec 95 18:54 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA15428 for dbi-users-real; Thu, 21 Dec 1995 09:58:39 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from voro.lbl.gov (voro.lbl.gov [131.243.64.29]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA15424 
          for <dbi-users@fugue.com>; Thu, 21 Dec 1995 09:58:37 -0800
Received: from voro (localhost [127.0.0.1]) by voro.lbl.gov (8.6.12/G) 
          with ESMTP id JAA04819; Thu, 21 Dec 1995 09:57:46 -0800
Message-Id: <199512211757.JAA04819@voro.lbl.gov>
X-Mailer: exmh version 1.6.2 7/18/95
To: Alligator Descartes <descarte@hermetica.com>
cc: groenvel@cse.psu.edu (John D Groenveld), dbi-users@fugue.com
Subject: Re: DBD::Oracle failed on make test -- ora_login fail
In-reply-to: Your message of "Thu, 21 Dec 1995 15:01:54 GMT." <199512211501.PAA20918@fruitbat.mcqueen.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Thu, 21 Dec 1995 09:57:46 -0800
From: Mark Dedlow <dedlow@voro.lbl.gov>

> Yeah? I've not had any hassle with 7.1.4/6 on Solaris2.4 for finding the
> V2 config files. I seem to recall it searches $ORACLE_HOME/network/admin 
> and /etc by default. /var/opt/oracle was where the V1 stuff went, like
> the oratab file...............
> 
> I just leave my stuff in /etc usually and symlink to $ORACLE_HOME/network/adm
in
> so's we can upgrade without any real hassles........

Yup, either sym link from /etc (4.1.x or /var/opt/oracle on SVR4) to
$ORACLE_HOME/network/admin, or just make sure there are no bogus 
(e.g. samples) copies there, since the search order is:

$HOME/.tnsnames.ora
$ORACLE_HOME/network/admin/tnsnames.ora
/var/opt/oracle/tnsnames.ora

if TNS_ADMIN is not set.

Mark

---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <20670-10@oink>;
          Fri, 22 Dec 1995 07:07:56 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819575512:08202:2; Thu, 21 Dec 95 19:51:52 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-2.mail.demon.net 
          id aa08059; 21 Dec 95 19:51 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA15711 for dbi-users-real; Thu, 21 Dec 1995 10:51:32 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from localhost (mellon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          with SMTP id KAA15705; Thu, 21 Dec 1995 10:51:30 -0800
Message-Id: <199512211851.KAA15705@toccata.fugue.com>
To: Leonid Borisov <astea@actcom.co.il>
cc: dbi-users@fugue.com
Subject: Administrivia requests...
In-reply-to: Your message of "Thu, 21 Dec 1995 15:29:08 +0200." <30D96124.49C3@actcom.co.il>
Date: Thu, 21 Dec 1995 10:51:29 -0800
From: Ted Lemon <mellon@fugue.com>


To unsubscribe to the mailing list, please visit the DBI mailing list
subscription URL at http://www.fugue.com/dbi.

			       _MelloN_
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <21063-7@oink>;
          Fri, 22 Dec 1995 07:15:21 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819569972:09184:2; Thu, 21 Dec 95 18:19:32 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa08638; 21 Dec 95 18:19 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA15282 for dbi-users-real; Thu, 21 Dec 1995 09:10:53 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from voro.lbl.gov (voro.lbl.gov [131.243.64.29]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id JAA15278 
          for <dbi-users@fugue.com>; Thu, 21 Dec 1995 09:10:51 -0800
Received: from voro (localhost [127.0.0.1]) by voro.lbl.gov (8.6.12/G) 
          with ESMTP id JAA04515; Thu, 21 Dec 1995 09:10:05 -0800
Message-Id: <199512211710.JAA04515@voro.lbl.gov>
X-Mailer: exmh version 1.6.2 7/18/95
To: John D Groenveld <groenvel@cse.psu.edu>
cc: dbi-users@fugue.com
Subject: Re: DBD::Oracle failed on make test -- ora_login fail
In-reply-to: Your message of "Thu, 21 Dec 1995 08:21:51 EST." <95Dec21.082312est.78451@colossus.cse.psu.edu>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Thu, 21 Dec 1995 09:10:05 -0800
From: Mark Dedlow <dedlow@voro.lbl.gov>

> Be careful with this one. Under Solaris 2.4 and Oracle 7.1.6 (but not 7.1.4),
> Oracle tools are shipped to check /var/opt/oracle for SQLNetV2 config files,
> yet still fail when TNS_ADMIN is not set. In fact, when you truss these tools
> you see it stat /var/opt/oracle and still die. Oracle Support's response was
> that TNS_ADMIN is a required variable. :)

My experience is different.  I've been supporting Oracle on Solaris 
continuously thru Solaris 2.1-2.4 and Oracle 7.0-7.2 (and all in between
versions) on many machines with dozens of applications, and I rarely
set TNS_ADMIN (only where I don't want to use /var/opt/oracle).
Here is an excerpt from a truss I just did:

% unsetenv TNS_ADMIN
% truss sqlplus username/password@remotesystem

access("/var/opt/oracle/tnsnames.ora", 0)       = 0
stat("/var/opt/oracle/tnsnames.ora", 0xDFFFC7E0) = 0
open("/var/opt/oracle/tnsnames.ora", O_RDONLY)  = 6
fcntl(6, F_SETFD, 0x00000001)                   = 0
fstat(6, 0xDFFFC558)                            = 0
read(6, " F N D D E V   =  \n    ".., 8192)     = 5240

Clearly, it's working just fine.

In any case, we're getting off into territory probably not of interest
to dbi-users, since TNS_ADMIN isn't used by it (is it?).  

Mark

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <21063-13@oink>;
          Fri, 22 Dec 1995 07:16:18 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819571585:22045:2; Thu, 21 Dec 95 18:46:25 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa21754; 21 Dec 95 18:46 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id JAA15301 for dbi-users-real; Thu, 21 Dec 1995 09:18:36 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from mail-relay1 (mail-relay1.cis.yale.edu [130.132.21.199]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id JAA15297 
          for <dbi-users@fugue.com>; Thu, 21 Dec 1995 09:18:34 -0800
Received: from capitoline.cis.yale.edu by mail-relay1 with SMTP 
          id AA10589 (5.67a/IDA-1.5 for <dbi-users@fugue.com>);
          Thu, 21 Dec 1995 12:17:27 -0500
Received: from morpheus.cis.yale.edu (morpheus [130.132.143.248]) 
          by capitoline.cis.yale.edu (8.6.12/8.6.12) with ESMTP id MAA08601 
          for <dbi-users@fugue.com>; Thu, 21 Dec 1995 12:18:42 -0500
Received: (from rivory@localhost) by morpheus.cis.yale.edu (8.6.12/8.6.12) 
          id MAA08754; Thu, 21 Dec 1995 12:18:40 -0500
Date: Thu, 21 Dec 1995 12:18:40 -0500 (EST)
From: Royal Hansen <royal.hansen@yale.edu>
X-Sender: rivory@morpheus
To: dbi-users@fugue.com
Subject: unsubscribe
In-Reply-To: <30D96124.49C3@actcom.co.il>
Message-Id: <Pine.SOL.3.91.951221121805.8143B-100000@morpheus>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

 unsubscibe 

 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <21404-0@oink>;
          Fri, 22 Dec 1995 07:16:21 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819571303:19789:1; Thu, 21 Dec 95 18:41:43 GMT
Received: from relay-1.mail.demon.net ([158.152.1.140]) 
          by punt-1.mail.demon.net id aa19553; 21 Dec 95 18:41 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by relay-1.mail.demon.net 
          id aa10446; 21 Dec 95 18:40 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id HAA14857 for dbi-users-real; Thu, 21 Dec 1995 07:07:43 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id HAA14853 
          for <dbi-users@fugue.com>; Thu, 21 Dec 1995 07:07:40 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id PAA20918; Thu, 21 Dec 1995 15:01:56 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199512211501.PAA20918@fruitbat.mcqueen.com>
Subject: Re: DBD::Oracle failed on make test -- ora_login fail
To: John D Groenveld <groenvel@cse.psu.edu>
Date: Thu, 21 Dec 1995 15:01:54 +0000 (GMT)
Cc: dbi-users@fugue.com
In-Reply-To: <95Dec21.082312est.78451@colossus.cse.psu.edu> from "John D Groenveld" at Dec 21, 95 08:21:51 am
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 1555


> > And Oracle will stop supporting it pretty soon.  It won't ship with
> > 7.3 and forward.  v2 has many advantages too.
> 
> All the documentation I've read is that TWO_TASK is a V1 variable. Since V1 is
> going away and TWO_TASK is non-descriptive anyway, I recommend that people
> phase out its use. Nice to see Oracle try to stay backwards compatable, though.

Nup, TWO_TASK does still seem to work under V2.............Obvious variable
name to pick, eh?!

> > Actually, you don't *require* that either.  It's only function is to tell
> > a tool where to find config files (tnsnames.ora, etc.) if they are not in 
> > any of the standard places.
> 
> Be careful with this one. Under Solaris 2.4 and Oracle 7.1.6 (but not 7.1.4),
> Oracle tools are shipped to check /var/opt/oracle for SQLNetV2 config files,
> yet still fail when TNS_ADMIN is not set. In fact, when you truss these tools, 
> you see it stat /var/opt/oracle and still die. Oracle Support's response was
> that TNS_ADMIN is a required variable. :)

Yeah? I've not had any hassle with 7.1.4/6 on Solaris2.4 for finding the
V2 config files. I seem to recall it searches $ORACLE_HOME/network/admin 
and /etc by default. /var/opt/oracle was where the V1 stuff went, like
the oratab file...............

I just leave my stuff in /etc usually and symlink to $ORACLE_HOME/network/admin
so's we can upgrade without any real hassles........

-- 
Alligator Descartes	 | "...Nil posse creari De nilo"
descarte@hermetica.com	 |		-- Lucretius, De Rerum Natura I, l.155
http://www.hermetica.com | 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <21063-23@oink>;
          Fri, 22 Dec 1995 07:18:19 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819575145:20598:2; Thu, 21 Dec 95 19:45:45 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id ab20004; 21 Dec 95 19:45 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id KAA15715 for dbi-users-real; Thu, 21 Dec 1995 10:51:35 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from netserve.lasc.lockheed.com (netserve.lasc.lockheed.com [134.5.45.1]) 
          by toccata.fugue.com (8.6.9/8.6.11) with SMTP id KAA15706 
          for <dbi-users@fugue.com>; Thu, 21 Dec 1995 10:51:30 -0800
Message-Id: <199512211851.KAA15706@toccata.fugue.com>
Received: from mip.lasc.lockheed.com by netserve.lasc.lockheed.com 
          with SMTP (1.37.109.4/16.2) id AA20424; Thu, 21 Dec 95 13:49:56 -0500
Received: by mip.lasc.lockheed.com (1.38.193.4/16.2) id AA06477;
          Thu, 21 Dec 1995 13:49:25 -0500
Date: Thu, 21 Dec 1995 13:49:25 -0500
From: Terry Greenlaw <z50816@mip.lasc.lockheed.com>
To: dbi-users@fugue.com
Subject: Re: DBD::Oracle failed on make test -- ora_login fail

> From owner-dbi-users@fugue.com Thu Dec 21 13:24 EST 1995
> Received: from marble.litc.lockheed.com by mip.lasc.lockheed.com with SMTP
> 	(1.38.193.4/16.2) id AA04812; Thu, 21 Dec 1995 13:24:07 -0500
> Return-Path: <owner-dbi-users@fugue.com>
> Received: from toccata.fugue.com (toccata.fugue.com [204.254.239.2]) by marble.litc.lockheed.com (8.6.12/8.6.9) with ESMTP id KAA16842; Thu, 21 Dec 1995 10:32:53 -0800
> Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) id HAA14857 for dbi-users-real; Thu, 21 Dec 1995 07:07:43 -0800
> Precedence: junk
> Sender: owner-perldb-interest@fugue.com
> Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id HAA14853 for <dbi-users@fugue.com>; Thu, 21 Dec 1995 07:07:40 -0800
> Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) id PAA20918; Thu, 21 Dec 1995 15:01:56 GMT
> From: Alligator Descartes <descarte@hermetica.com>
> Message-Id: <199512211501.PAA20918@fruitbat.mcqueen.com>
> Subject: Re: DBD::Oracle failed on make test -- ora_login fail
> To: groenvel@cse.psu.edu (John D Groenveld)
> Date: Thu, 21 Dec 1995 15:01:54 +0000 (GMT)
> Cc: dbi-users@fugue.com
> In-Reply-To: <95Dec21.082312est.78451@colossus.cse.psu.edu> from "John D Groenveld" at Dec 21, 95 08:21:51 am
> X-Pants: ** The return address of this email should be: descarte@hermetica.com
> X-Mailer: ELM [version 2.4 PL24]
> Content-Type: text
> Content-Length: 1555      
> Status: R


> > > And Oracle will stop supporting it pretty soon.  It won't ship with
> > > 7.3 and forward.  v2 has many advantages too.
> > 
> > All the documentation I've read is that TWO_TASK is a V1 variable. Since V1 is
> > going away and TWO_TASK is non-descriptive anyway, I recommend that people
> > phase out its use. Nice to see Oracle try to stay backwards compatable, though.

> Nup, TWO_TASK does still seem to work under V2.............Obvious variable
> name to pick, eh?!

TWO_TASK is still the one to use until Oracle comes up with something a
little more understandable like ORACLE_DB.


Boring details of Oracle history follow....

On many platforms, Oracle can be configured in 2 seperate ways. The front and
back end code can be linked together into one executable, but this has alot
of problems with security since user applications are running DB kernel calls
as the user. To solve this, the front and back end code were seperated. The
front end is run in the user's process space, and the back end runs as a
privledged user. The two tasks communicate through an O.S. specific IPC
mechanism. On VMS, it's the mailbox driver; on Unix, it's the pipe driver (or
fast pipe mechanism). The driver to use is stored in the environment variable
TWO_TASK. This split also allows the front and back ends to reside on seperate
machines enabling client-server computing. Many people inside Oracle believe
the early adoption of this split was the primary reason that Oracle became
#1. They weren't forced to redesign base components when client/server
computing got hot.

tog


> -- 
> Alligator Descartes	 | "...Nil posse creari De nilo"
> descarte@hermetica.com	 |		-- Lucretius, De Rerum Natura I, l.155
> http://www.hermetica.com | 



Terry Greenlaw (on-site @ Lockheed Martin)               Encompass Technologies
z50816@mip.lasc.lockheed.com                             terry@encompass.is.net

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <21404-13@oink>;
          Fri, 22 Dec 1995 07:18:51 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819577331:07980:1; Thu, 21 Dec 95 20:22:11 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa07747; 21 Dec 95 20:21 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id LAA16008 for dbi-users-real; Thu, 21 Dec 1995 11:32:28 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from cs.utah.edu (cs.utah.edu [128.110.4.21]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id LAA16004 
          for <dbi-users@fugue.com>; Thu, 21 Dec 1995 11:32:26 -0800
Received: from lal.cs.utah.edu by cs.utah.edu (8.6.12/utah-2.21-cs) id MAA09885;
          Thu, 21 Dec 1995 12:32:33 -0700
Received: by lal.cs.utah.edu (8.6.12/utah-2.15sun-leaf) id MAA23464;
          Thu, 21 Dec 1995 12:32:31 -0700
Date: Thu, 21 Dec 1995 12:32:30 -0700 (MST)
From: Jonathan Olson <jbolson@lal.cs.utah.edu>
To: dbi-users@fugue.com
Subject: unsubscribe
Message-ID: <Pine.SOL.3.91.951221123212.22208A-100000@lal.cs.utah.edu>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII


unsubscribe me

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <21063-35@oink>;
          Fri, 22 Dec 1995 07:21:23 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819591840:25516:1; Fri, 22 Dec 95 00:24:00 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa24056; 22 Dec 95 0:23 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id NAA16623 for dbi-users-real; Thu, 21 Dec 1995 13:17:26 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id NAA16619 
          for <dbi-users@fugue.com>; Thu, 21 Dec 1995 13:17:20 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id VAA24741; Thu, 21 Dec 1995 21:11:54 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199512212111.VAA24741@fruitbat.mcqueen.com>
Subject: Re: TNS_ADMIN (was Re: DBD::Oracle failed on make test -- ora_login
To: dedlow@voro.lbl.gov (Mark Dedlow)
Date: Thu, 21 Dec 1995 21:11:53 +0000 (GMT)
Cc: groenvel@cse.psu.edu, dbi-users@fugue.com
In-Reply-To: <199512211952.LAA05507@voro.lbl.gov> from "Mark Dedlow" at Dec 21, 95 11:52:23 am
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 2097


[cc'd back into the list]

> > With SQL*DBA: Release 7.1.6.2.0 I can reproduce my error. My log book
> 
> Oh, SQL*DBA!!  I thought we were talking about *users*,
> meaning to me, developers and end-users, not DBA's.
> 
> SQL*DBA often behaves differently than all the other "client"
> tools (sqlplus, reports, forms, etc, which generally behave 
> consistently as a family). 

Indeed so. In fact, against my logbook, SQL*DBA has almost *twice* the number
of reported bugs and patches than any other product ( with the exception
of Oracle Applications! ). 

> And speaking of "going away"... SQL*DBA is no longer officially
> supported, at least according to some documentation.  Other documentation
> could be seen as conflicting (i.e. it says "use SQL*DBA", and they
> ship it.  But then I just installed Forms 2.3 from the *latest*
> version of Oracle Financials!!!!, so "support" is a pretty fuzzy term;
> they are still shipping stuff you haven't been able to even *buy* for 
> years)

Again, yes. Forms2.3 stopped shipping years back apart from on Financials...
I'll tell you this, once we lost one tape from our Financials suite, coule
we get Oracle to find a replacement for the Forms module? 

Uh-uh. Half the Oracle support guys didn't believe Financials ran with 2.3.
The other half thought I was winding them up!

8-)

> In any case, I advise against using SQL*DBA as the "reference" behavior...

Agreed. It's about the most un-clienty app bundled with the RDBMS.

> Mark
> 
> PS. Have you tried Server Manager yet?  ("next-generation" DBA tool)

Complete and utter rubbish, IMHO. I ended up writing one of my own. If
anyone's interested in seeing what stage it was at around 7 months ago
when I last had a minute to work on it, they're welcome to the source code!

I've also got one that runs under DBI and DBD::Oracle which may be more 
worthwhile? Anyone interested in pooling resource to complete the design
and write? Tk-based?

-- 
Alligator Descartes	 | "...Nil posse creari De nilo"
descarte@hermetica.com	 |		-- Lucretius, De Rerum Natura I, l.155
http://www.hermetica.com | 
---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <02553-20@oink>;
          Mon, 25 Dec 1995 07:10:34 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819656243:09176:1; Fri, 22 Dec 95 18:17:23 GMT
Received: from frigate.doc.ic.ac.uk ([155.198.191.3]) by punt-2.mail.demon.net 
          id as07847; 22 Dec 95 18:16 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Fri, 22 Dec 1995 03:15:33 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id SAA17415 for dbi-users-real; Thu, 21 Dec 1995 18:05:25 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from voro.lbl.gov (voro.lbl.gov [131.243.64.29]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id SAA17411 
          for <dbi-users@fugue.com>; Thu, 21 Dec 1995 18:05:22 -0800
Received: from voro (localhost [127.0.0.1]) by voro.lbl.gov (8.6.12/G) 
          with ESMTP id SAA06873; Thu, 21 Dec 1995 18:04:32 -0800
Message-Id: <199512220204.SAA06873@voro.lbl.gov>
X-Mailer: exmh version 1.6.2 7/18/95
To: Alligator Descartes <descarte@hermetica.com>
cc: groenvel@cse.psu.edu, dbi-users@fugue.com
Subject: Re: TNS_ADMIN (was Re: DBD::Oracle failed on make test -- ora_login
In-reply-to: Your message of "Thu, 21 Dec 1995 21:11:53 GMT." <199512212111.VAA24741@fruitbat.mcqueen.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Thu, 21 Dec 1995 18:04:32 -0800
From: Mark Dedlow <dedlow@voro.lbl.gov>

> From: Alligator Descartes <descarte@hermetica.com>

> > PS. Have you tried Server Manager yet?  ("next-generation" DBA tool)
> 
> Complete and utter rubbish, IMHO. I ended up writing one of my own. If

Hence my quotations around "next-generation" (those are Oracle's words).
I think your description more accurate.

> I've also got one that runs under DBI and DBD::Oracle which may be more 
> worthwhile? Anyone interested in pooling resource to complete the design
> and write? Tk-based?

I'd be curious what you've done in DBI, and might be able/interested
to contribute.  


Mark




---+++---
Received: from punt2.demon.co.uk by oink with SMTP (PP) id <02553-27@oink>;
          Mon, 25 Dec 1995 07:11:56 +0000
Received: from punt-2.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 819656245:09182:1; Fri, 22 Dec 95 18:17:25 GMT
Received: from frigate.doc.ic.ac.uk ([155.198.191.3]) by punt-2.mail.demon.net 
          id at07847; 22 Dec 95 18:16 GMT
Received: from toccata.fugue.com by frigate.doc.ic.ac.uk with SMTP (PP);
          Fri, 22 Dec 1995 03:25:38 +0000
Received: (from daemon@localhost) by toccata.fugue.com (8.6.9/8.6.11) 
          id RAA17314 for dbi-users-real; Thu, 21 Dec 1995 17:38:06 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.9/8.6.11) with ESMTP id RAA17310 
          for <dbi-users@fugue.com>; Thu, 21 Dec 1995 17:38:00 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id BAA25783; Fri, 22 Dec 1995 01:32:23 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199512220132.BAA25783@fruitbat.mcqueen.com>
Subject: Re: TNS_ADMIN (was Re: DBD::Oracle failed on make test --
To: terry@encompass.is.net (Terry Greenlaw)
Date: Fri, 22 Dec 1995 01:32:22 +0000 (GMT)
Cc: dbi-users@fugue.com
In-Reply-To: <199512212344.SAA20787@mail1.is.net> from "Terry Greenlaw" at Dec 21, 95 06:44:58 pm
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 1491


[Oracle DBA products are.....]

> > descarte@hermetica.com wrote:
> >
> >Complete and utter rubbish, IMHO. I ended up writing one of my own. If
> >anyone's interested in seeing what stage it was at around 7 months ago
> >when I last had a minute to work on it, they're welcome to the source code!
> >
> >I've also got one that runs under DBI and DBD::Oracle which may be more 
> >worthwhile? Anyone interested in pooling resource to complete the design
> >and write? Tk-based?
> 
> Sounds great. DBI/TkPerl is the first tool that would actually make this a
> fun project. I also think Severe Mangler, oops I mean Server Manager is 
> completely useless. Let me know what you've got so far. I have some stuff
> from my days at Oracle that may come in handy. 

Right. Here's the plan. Over the period between Xmas and New Year, I'll put
a WWW page up on Hermetica with the sources and stuff we'd like to see in it.

If anyone's interested in doing a bit of it, we can arrange that between us
and divvy up the work accordingly. 

Howzat sound? I'll also put the Pro*C code up there too since it was more
developed, so we could get extra ideas from that, I suppose........

Course, the name "Severe Mangler" sounds just about right........I vote for
it!

> --
> Terry Greenlaw                                           terry@encompass.is.net

-- 
Alligator Descartes	 | "...Nil posse creari De nilo"
descarte@hermetica.com	 |		-- Lucretius, De Rerum Natura I, l.155
http://www.hermetica.com | 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15736-1@oink>;
          Thu, 28 Dec 1995 07:05:55 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 820088469:11658:1; Wed, 27 Dec 95 18:21:09 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa11497; 27 Dec 95 18:20 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.12/8.6.11) 
          id XAA06407 for dbi-users-real; Tue, 26 Dec 1995 23:00:10 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from spsgate.sps.mot.com (spsgate.sps.mot.com [192.70.231.1]) 
          by toccata.fugue.com (8.6.12/8.6.11) with SMTP id XAA06403 
          for <dbi-users@fugue.com>; Tue, 26 Dec 1995 23:00:08 -0800
Received: from mogate (mogate.sps.mot.com) 
          by spsgate.sps.mot.com (4.1/SMI-4.1/Email 2.1 10/25/93) id AA23844 
          for dbi-users@fugue.com; Wed, 27 Dec 95 09:12:51 MST
Received: from emailchd by mogate (4.1/SMI-4.1/Email-2.0) id AA17166;
          Wed, 27 Dec 95 09:12:46 MST
Received: by sterling.sps.mot.com (SMI-8.6/SMI-SVR4) id JAA03271;
          Wed, 27 Dec 1995 09:10:36 -0700
Date: Wed, 27 Dec 1995 09:10:36 -0700
From: sosnicki@sterling.sps.mot.com (Jerry Sosnicki x5426)
Message-Id: <199512271610.JAA03271@sterling.sps.mot.com>
To: dbi-users@fugue.com
X-Mailer: Siren Mail (Motif 2.02 95/05/15)
Mime-Version: 1.0
Content-Id: <252_291_820080635_5@sterling>
Content-Type: text/plain; charset="us-ascii"

unsubscribe sosnicki@sterling.sps.mot.com
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15736-24@oink>;
          Thu, 28 Dec 1995 07:08:21 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 820099552:05992:1; Wed, 27 Dec 95 21:25:52 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa05867; 27 Dec 95 21:25 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.12/8.6.11) 
          id CAA02176 for dbi-users-real; Wed, 27 Dec 1995 02:50:22 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from eve.mscs.mu.edu (eve.mscs.mu.edu [134.48.4.166]) 
          by toccata.fugue.com (8.6.12/8.6.11) with SMTP id CAA02172 
          for <dbi-users@fugue.com>; Wed, 27 Dec 1995 02:50:20 -0800
Received: by eve.mscs.mu.edu (Smail3.1.28.1 #9) id m0tV1zB-0002DUC;
          Wed, 27 Dec 95 13:58 CST
Message-Id: <m0tV1zB-0002DUC@eve.mscs.mu.edu>
From: zobair@marque.mscs.mu.edu (Saima Zobair)
Subject: unsubscribe
To: dbi-users@fugue.com
Date: Wed, 27 Dec 1995 13:58:05 -0600 (CST)
X-Mailer: ELM [version 2.4 PL23]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 38


unsubscribe me from the mailing list
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15736-26@oink>;
          Thu, 28 Dec 1995 07:08:36 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 820099946:08833:0; Wed, 27 Dec 95 21:32:26 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa08365; 27 Dec 95 21:31 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.12/8.6.11) 
          id CAA02122 for dbi-users-real; Wed, 27 Dec 1995 02:22:52 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from coffee.stanford.edu (coffee.Stanford.EDU [36.60.0.11]) 
          by toccata.fugue.com (8.6.12/8.6.11) with ESMTP id CAA02118 
          for <dbi-users@fugue.com>; Wed, 27 Dec 1995 02:22:51 -0800
Received: from isl.Stanford.EDU (isl [36.60.0.10]) 
          by coffee.stanford.edu (8.7.1/8.7.1) with ESMTP id LAA25780 
          for <dbi-users@fugue.com>; Wed, 27 Dec 1995 11:35:38 -0800 (PST)
From: "Sanford M. Dickert" <ncc1701a@isl.stanford.edu>
Received: (from ncc1701a@localhost) by isl.Stanford.EDU (8.7.1/8.7.1) 
          id LAA28342 for dbi-users@fugue.com;
          Wed, 27 Dec 1995 11:35:37 -0800 (PST)
Date: Wed, 27 Dec 1995 11:35:37 -0800 (PST)
Message-Id: <199512271935.LAA28342@isl.Stanford.EDU>
To: dbi-users@fugue.com
Subject: How about working with Oracle 7.2.2.3?


I am in a quandry about whether or not I should upgrade to 7.2.2.3 if I want
to use DBPerl.  I currently have 7.1.6.2 and I am about to install one or
the other.  Is there any potential problems with using 7.2 with DBPerl?

Thanks in advance.

Sanford Dickert
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <15736-28@oink>;
          Thu, 28 Dec 1995 07:08:50 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 820100081:09770:2; Wed, 27 Dec 95 21:34:41 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa09620; 27 Dec 95 21:34 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.12/8.6.11) 
          id CAA02182 for dbi-announce-real; Wed, 27 Dec 1995 02:51:23 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from eve.mscs.mu.edu (eve.mscs.mu.edu [134.48.4.166]) 
          by toccata.fugue.com (8.6.12/8.6.11) with SMTP id CAA02178 
          for <dbi-announce@fugue.com>; Wed, 27 Dec 1995 02:51:22 -0800
Received: by eve.mscs.mu.edu (Smail3.1.28.1 #9) id m0tV209-0002DUC;
          Wed, 27 Dec 95 13:59 CST
Message-Id: <m0tV209-0002DUC@eve.mscs.mu.edu>
From: zobair@marque.mscs.mu.edu (Saima Zobair)
Subject: unsubscribe
To: dbi-announce@fugue.com
Date: Wed, 27 Dec 1995 13:59:05 -0600 (CST)
X-Mailer: ELM [version 2.4 PL23]
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Length: 46


unsubscribe me from the mailing list

thanks
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <21175-9@oink>;
          Thu, 28 Dec 1995 16:10:25 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 820159748:13373:0; Thu, 28 Dec 95 14:09:08 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa13035; 28 Dec 95 14:08 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.12/8.6.11) 
          id TAA03342 for dbi-users-real; Wed, 27 Dec 1995 19:31:06 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.12/8.6.11) with SMTP id TAA03338 
          for <dbi-users@fugue.com>; Wed, 27 Dec 1995 19:31:04 -0800
Received: from post.demon.co.uk ([158.152.1.72]) by relay-4.mail.demon.net 
          id aa10044; 28 Dec 95 12:43 GMT
Received: from ignite.demon.co.uk ([158.152.8.99]) by relay-3.mail.demon.net 
          id aa14579; 28 Dec 95 12:43 GMT
Received: from toad by oink with SMTP (PP) id <20154-0@oink>;
          Thu, 28 Dec 1995 12:42:48 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA23504;
          Thu, 28 Dec 1995 12:42:13 +0000
Date: Thu, 28 Dec 1995 12:42:13 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512281242.AA23504@toad.ig.co.uk>
To: dbi-users@fugue.com, ncc1701a@isl.stanford.edu
Subject: Re: How about working with Oracle 7.2.2.3?
X-Sun-Charset: US-ASCII
content-length: 375
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: "Sanford M. Dickert" <ncc1701a@isl.stanford.edu>
> 
> I am in a quandry about whether or not I should upgrade to 7.2.2.3 if I want
> to use DBPerl.  I currently have 7.1.6.2 and I am about to install one or
> the other.  Is there any potential problems with using 7.2 with DBPerl?
> 
> Thanks in advance.
> 
> Sanford Dickert

Not that I'm aware of, off-hand.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <24167-5@oink>;
          Fri, 29 Dec 1995 07:06:27 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 820175134:01028:0; Thu, 28 Dec 95 18:25:34 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa00875; 28 Dec 95 18:25 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.12/8.6.11) 
          id XAA03598 for dbi-users-real; Wed, 27 Dec 1995 23:03:13 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.12/8.6.11) with SMTP id XAA03588 
          for <dbi-users@fugue.com>; Wed, 27 Dec 1995 23:03:06 -0800
Received: from post.demon.co.uk ([158.152.1.72]) by relay-4.mail.demon.net 
          id ac26809; 28 Dec 95 16:07 GMT
Received: from ignite.demon.co.uk ([158.152.8.99]) by relay-3.mail.demon.net 
          id aa19659; 28 Dec 95 16:07 GMT
Received: from toad by oink with SMTP (PP) id <20301-0@oink>;
          Thu, 28 Dec 1995 13:05:40 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA23561;
          Thu, 28 Dec 1995 13:05:12 +0000
Date: Thu, 28 Dec 1995 13:05:12 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512281305.AA23561@toad.ig.co.uk>
To: rick@ccomp.com
Subject: Re: DBI Question
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 1089
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: rick@ccomp.com (Rick Clark)
> 
> Tim,
> 
> Please excuse the direct mail.  You probably are inundated with questions like 
> this.

True. Ideally people should ask questions through the mailing lists that way
others can help answer or learn from the answers of others.

> Question: How stable is the Oracle DBI interface for perl 5?  Last I heard,
> and according to the README in ftp.demon.co.uk:/pub/perl/db, it's in the 
> Alpha stage.  Is this information current?  I need a perl/Oracle interface for
> a production system.  Should I use perl4 and oraperl at this time, or perl 5
> and DBI?

Perl4 oraperl is stable (read 'not actively maintained') but is showing its
age (it uses old OCI calls).

The Perl5 DBI interface is unstable (read 'being actively changed') but
the DBD::Oracle driver comes with an Oraperl emulation that is stable and
as near complete as anyone is likely to care.

Tim.

p.s. For the record, I intend to start heavy development on the new ODBC
based DBI mid Jan (approx). Expect lots of noise as we try to resolve design
tradeoffs around that time.

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05913-4@oink>;
          Mon, 1 Jan 1996 07:06:14 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 820271409:09799:1; Fri, 29 Dec 95 21:10:09 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa09479; 29 Dec 95 21:09 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.12/8.6.11) 
          id MAA02655 for dbi-users-real; Fri, 29 Dec 1995 12:31:14 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.12/8.6.11) with SMTP id MAA02634 
          for <dbi-users@fugue.com>; Fri, 29 Dec 1995 12:30:11 -0800
Received: from post.demon.co.uk ([158.152.1.72]) by relay-4.mail.demon.net 
          id ab23884; 29 Dec 95 20:29 GMT
Received: from ignite.demon.co.uk ([158.152.8.99]) by relay-3.mail.demon.net 
          id af04188; 29 Dec 95 20:28 GMT
Received: from toad by oink with SMTP (PP) id <28819-0@oink>;
          Fri, 29 Dec 1995 19:22:01 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA26334;
          Fri, 29 Dec 1995 19:21:31 +0000
Date: Fri, 29 Dec 1995 19:21:31 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512291921.AA26334@toad.ig.co.uk>
To: dbi-users@fugue.com, desilva+@cmu.edu
Subject: Re: Keeping an Oracle connection open
X-Sun-Charset: US-ASCII
content-length: 819
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Rujith de Silva <Rujith_S_DeSilva@child.prodigy.cs.cmu.edu>
> 
> -----BEGIN PGP SIGNED MESSAGE-----
> 
> Is there any way to have an exiting process NOT close an open lda?
> 
> I have a WWW server that gets an Oracle connection (lda), then accepts an
> HTTP request, forks off a child, and lets the child use the lda.  The
> trouble is, after processing the request, the child automatically closes
> the lda when exiting (its DESTROY method is probably getting called).  This
> makes the lda unusable for the parent as well.  Is there any way to get
> around this?

Not currently. I'll make a note of it though.

Meanwhile you could hack in something along these lines:

int
dbd_db_mark_inactive_hack(dbh)
    SV *dbh;
{
    D_imp_dbh(dbh);
    DBIc_ACTIVE_off(imp_dbh);
}

and call it just before exit.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05913-8@oink>;
          Mon, 1 Jan 1996 07:07:03 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 820271545:10783:0; Fri, 29 Dec 95 21:12:25 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa10229; 29 Dec 95 21:11 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.12/8.6.11) 
          id MAA02658 for dbi-users-real; Fri, 29 Dec 1995 12:31:14 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.12/8.6.11) with SMTP id MAA02645 
          for <dbi-users@fugue.com>; Fri, 29 Dec 1995 12:30:58 -0800
Received: from post.demon.co.uk ([158.152.1.72]) by relay-4.mail.demon.net 
          id aa23928; 29 Dec 95 20:29 GMT
Received: from ignite.demon.co.uk ([158.152.8.99]) by relay-3.mail.demon.net 
          id ak04188; 29 Dec 95 20:28 GMT
Received: from toad by oink with SMTP (PP) id <28907-0@oink>;
          Fri, 29 Dec 1995 19:52:07 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA26386;
          Fri, 29 Dec 1995 19:51:39 +0000
Date: Fri, 29 Dec 1995 19:51:39 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512291951.AA26386@toad.ig.co.uk>
To: IPlatacis@aol.com
Subject: Re: Help with perl/oraperl for VAX/VMS
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 2255
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: IPlatacis@aol.com
> 
> Tim,
> 
> I came across your name as I was looking for software needed to run perl on
> our machine.  Perhaps you could provide me with some help to get started.
> 
> I need to create a simple web page that displays information retrieved from
> an Oracle 7 database which is on a VAX/VMS system.  We already have perl5
> loaded.  I have not worked with perl before and the system manager is
> unfamiliar with it also; therefore, I have some questions about what we
> really need to get set up.
> 
> 1.  Can perl be used alone to connect to the database and retrieve the
> records, or is it necessary to get either oraperl or DBperl?

Without something like oraperl or DBperl you have to use pipes. It's
messay and may not work on VMS.

> 2.  If I do need to get oraperl or DBperl, are there versions compatible for
> VAX/VMS?

Not that I know of.

> Where could I find these?  If there are no compatible versions,
> what do you suggest I do to accomplish the task?

Time and/or skill (in inversely proportional amounts).

> 3.  It seems as if oraperl is an extension of perl4 and DBperl is an
> extension of perl5.  Is this true, or can they be interchanged?

Here's the standard reply:

---
Perl4 database interfaces such as oraperl and ingperl will not work
with Perl5.  A new database independent standard interface is being
developed for Perl5.

An oracle module which uses that interface is being developed.
The oracle module includes an oraperl emulation interface.

Drivers are also currently being developed for Ingres, mSQL, DB2,
Informix, and QuickBase.  Other drivers will be developed over time.

Alpha releases of the DBI and DBD::Oracle modules are available from
ftp.demon.co.uk in /pub/perl/db/ but are not recommended for production
use at this time.  The archive is also mirrored by CPAN sites.

For more information and to keep informed about progress you can join
the a mailing list by sending a message to dbi-request@fugue.com or
dbi-request@fugue.com (it may take a few days to be processed) or
preferably subscribe via http://www.fugue.com/dbi

All discussion related to this work should take place on the mailing list.
---

> Thank you for your time,
> 
> Ina Platacis
> >>> IPlatacis@aol.com <<<

---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05913-10@oink>;
          Mon, 1 Jan 1996 07:07:19 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 820271545:10761:1; Fri, 29 Dec 95 21:12:25 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa10321; 29 Dec 95 21:11 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.12/8.6.11) 
          id MAA02688 for dbi-users-real; Fri, 29 Dec 1995 12:36:16 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from gw.home.vix.com (gw.home.vix.com [192.5.5.1]) 
          by toccata.fugue.com (8.6.12/8.6.11) with ESMTP id MAA02684 
          for <dbi-users@fugue.com>; Fri, 29 Dec 1995 12:36:15 -0800
Received: by gw.home.vix.com id AA05263; Fri, 29 Dec 95 12:36:15 -0800
X-Btw: vix.com is also gw.home.vix.com and vixie.sf.ca.us
Received: from post.demon.co.uk ([158.152.1.72]) by relay-4.mail.demon.net 
          id aa23889; 29 Dec 95 20:29 GMT
Received: from ignite.demon.co.uk ([158.152.8.99]) by relay-3.mail.demon.net 
          id ae04188; 29 Dec 95 20:28 GMT
Received: from toad by oink with SMTP (PP) id <28754-0@oink>;
          Fri, 29 Dec 1995 18:47:33 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA26297;
          Fri, 29 Dec 1995 18:47:06 +0000
Date: Fri, 29 Dec 1995 18:47:06 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512291847.AA26297@toad.ig.co.uk>
To: dbi-users@fugue.com, patricia@earthweb.com
Subject: Re: DBD::Oracle 'make test' fails
X-Sun-Charset: US-ASCII
Content-Length: 1305
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Patricia Ju <patricia@earthweb.com>
> 
> I recently compiled and installed perl 5.001n and DBI 0.63.  I was 
> successful in compiling and installing DBD::mSQL.  Compiling DBD::Oracle
> seemed to be okay as well.  However, when running 'make test' I get
> the following errors.
> 
> Please help.  I've got live scripts that are hurting due to the lack
> of Oracle..

Sorry for the delay (I can't recall if I've replied to this or not).

> PERL_DL_NONLAZY=1 /usr/local/bin/perl -I./blib/sun4-solaris -I./blib
> -I/usr/local/lib/perl5/sun4-solaris -I/usr/local/lib/perl5 -e 'use
> Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
> t/base..............install_driver(Oracle) failed: Can't load
> './blib/sun4-solaris/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle:
> ld.so.1: /usr/local/bin/perl: fatal: relocation error: symbol not found:
> DBIc_ACTIVE_KIDS: referenced in
> ./blib/sun4-solaris/auto/DBD/Oracle/Oracle.so at
> /usr/local/lib/perl5/DynaLoader.pm line 136. 

Upgrade to the latest DBI and DBD::Oracle. The tend to get released together
and DBD::Oracle tends to use the latest features of the DBI.

(It's good to see PERL_DL_NONLAZY=1 is proving useful)

Also Perl5.001n is not recommended for general use. It has problems.
Stick with 5.001m for now.

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05913-12@oink>;
          Mon, 1 Jan 1996 07:07:38 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 820271740:12321:0; Fri, 29 Dec 95 21:15:40 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa11613; 29 Dec 95 21:14 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.12/8.6.11) 
          id MAA02729 for dbi-users-real; Fri, 29 Dec 1995 12:42:24 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.64]) 
          by toccata.fugue.com (8.6.12/8.6.11) with SMTP id MAA02725 
          for <dbi-users@fugue.com>; Fri, 29 Dec 1995 12:42:16 -0800
Received: from post.demon.co.uk ([158.152.1.72]) by relay-4.mail.demon.net 
          id ab24319; 29 Dec 95 20:33 GMT
Received: from ignite.demon.co.uk ([158.152.8.99]) by relay-3.mail.demon.net 
          id aa05237; 29 Dec 95 20:33 GMT
Received: from toad by oink with SMTP (PP) id <29126-0@oink>;
          Fri, 29 Dec 1995 20:32:06 +0000
Received: by toad.ig.co.uk (5.0/SMI-SVR4) id AA26438;
          Fri, 29 Dec 1995 20:31:04 +0000
Date: Fri, 29 Dec 1995 20:31:04 +0000
From: Tim Bunce <Tim.Bunce@ig.co.uk>
Message-Id: <9512292031.AA26438@toad.ig.co.uk>
To: shahram@smartt.com
Subject: Re: DBPerl
Cc: dbi-users@fugue.com
X-Sun-Charset: US-ASCII
content-length: 666
Organization: Paul Ingram Group, Software Systems, +44 1 483 424424


> From: Shahram <shahram@smartt.com>
> 
> -- [ From: Shahram * EMC.Ver #2.5.02 ] --
> 
> Hello Tim
> 
> I have read the document on DBperl.  In on part of document you have
> mentioned the
> ftp site:   ftp.demon.co.uk  /pub/perl/db/dbperl   

Just /pub/perl/db

> Can I use DBperl?

You could.

> what would you suggest for a shareware database engine?

I don't use any shareware database engines. Perhaps someone else could
send you some suggestions.

> Sorry if my questions are too basic.

For more info see http://www.hermetica.com/technologia/DBI
and http://www.fugue.com/dbi.

> Thanks
> 
> Shahram Mojtabavi
> Vancouver, Canada
> (shahram@smartt.com)

Tim.
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <06234-22@oink>;
          Mon, 1 Jan 1996 07:14:46 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 820432764:07732:2; Sun, 31 Dec 95 17:59:24 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa07579; 31 Dec 95 17:59 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.12/8.6.11) 
          id JAA02522 for dbi-users-real; Sun, 31 Dec 1995 09:26:17 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.12/8.6.11) with ESMTP id JAA02518 
          for <dbi-users@fugue.com>; Sun, 31 Dec 1995 09:26:13 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id RAA17369 for dbi-users@fugue.com; Sun, 31 Dec 1995 17:21:12 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199512311721.RAA17369@fruitbat.mcqueen.com>
Subject: WIP
To: dbi-users@fugue.com
Date: Sun, 31 Dec 1995 17:21:11 +0000 (GMT)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 533


Right guys, gals and Tim.

I've drawn up a list of stuff I'm currently doing wrt DBI which is at:

	http://www.hermetica.com/descarte/wip.html

If anyone's interested in helping ( I hope so! ), then let me know and we'll
open discussions somewhere sometime soon. Some of the stuff could be quite
spiffy.

If someone's interested that hasn't got WWW access, let me know.

Regards.

-- 
Alligator Descartes	 | "...Nil posse creari De nilo"
descarte@hermetica.com	 |		-- Lucretius, De Rerum Natura I, l.155
http://www.hermetica.com | 
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <06234-24@oink>;
          Mon, 1 Jan 1996 07:15:05 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 820438738:21752:1; Sun, 31 Dec 95 19:38:58 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa21299; 31 Dec 95 19:38 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.12/8.6.11) 
          id LAA02625 for dbi-users-real; Sun, 31 Dec 1995 11:15:40 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from srvr7.engin.umich.edu (root@srvr7.engin.umich.edu [141.212.2.69]) 
          by toccata.fugue.com (8.6.12/8.6.11) with ESMTP id LAA02621 
          for <dbi-users@fugue.com>; Sun, 31 Dec 1995 11:15:38 -0800
Received: from srvr5.engin.umich.edu (srvr5.engin.umich.edu [141.212.2.89]) 
          by srvr7.engin.umich.edu (8.6.12/8.6.4) with ESMTP id OAA10224 
          for <dbi-users@fugue.com>; Sun, 31 Dec 1995 14:16:00 -0500
Received: from zaphod (pm002-07.dialip.mich.net [141.211.7.143]) 
          by srvr5.engin.umich.edu (8.6.12/8.6.4) with SMTP id OAA10961 
          for <dbi-users@fugue.com>; Sun, 31 Dec 1995 14:15:36 -0500
Message-ID: <30E6EFF2.7237@umich.edu>
Date: Sun, 31 Dec 1995 14:17:54 -0600
From: Dan DeMaggio <dmag@umich.edu>
Organization: None
X-Mailer: Mozilla 2.0b3 (WinNT; I)
MIME-Version: 1.0
To: dbi-users@fugue.com
Subject: (no subject)
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

I have been doing some thinking about the DBI spec and ODBC. I think it
needs to 'refocus' for lack of a better term.  Here's why:

1) ODBC will/has become the cross-platform database interface standard 
(there are MANY companies shipping Mac and Unix ODBC drivers). Therefore, 
DBI should _not_ try to compete with it.

2) Programatically, ODBC stinks. It's not an elegant standard. It has 56 
Functions, some of wich have 20 or 30 sub-functions. It makes you think in
terms of statement handles. What do statement handles (as a concept) have
to do with databases? Nothing!

Therefore, what we need is an Elegant and Logical way to get to databases,
*NOT* another 'standard'.  Once we design this nice interface, THEN we write
the 'back-end' code to implement this interface for all kinds of datbases
(including ODBC, Oracle, mSQL, etc.)

--------------------------------- Architecture:
I propose an object-oriented approach. Imagine the following objects:
  - Database objects (allows login, etc)
    - Table objects (created by queries or pre-existing)
      - Field objects (contain data, but also have 'metadata' properties)

To quote Larry: "Easy things should be easy.  Hard things should be 
possible."  Therefore, the first program will be simple:

   $d = new DBI::Oracle::Database "DSN=database;UID=dmag;PWD=none;";
   $t = $d->query("select count(*) from table");
   print $t->field(0)->value;

Real perl hackers would write:

   print DBI::Oracle::Database::new("DSN=blah;")->
                       query("select 'hello world'")->field(0);

I don't know about you, but it gives me a warm fuzzy feeling inside when I
can write it all on one line like that. ;) Next, we want to do complicated
things like parameter queries, non-sequential reads, access metadata...

   $d = new DBI::Oracle::Database "DSN=database;UID=dmag;PWD=none;";
   $t = $d->query("select ? from table",PARAMETER_QUERY);
   $t->parameter(0) = "foobar";
   $t->execute;
   while( $t->fetchrow(+2) )
    { print $t->field(0)->name . $t->field("fred")->datatype; }

It's extensable because you know *WHERE* to extend it. You don't just add
another function, you add properties and methods to an object.. [The above is
just an example.  I'm not trying to define the standard, just show what it
could look like.  My next release of the ODBC driver for NT Perl will look
much like this.]

---------------------------------- Dan's DBI Commandments:
The DBI base package should:

 - Be a package 100% entirely written in Perl only. Did I mention that this
   would not involve using C code in any way whatsoever?

 - Probably be the base class for all Drivers. (like TIEHASH)

 - Define constants and provide stubs for missing functionality.

 - Contain default implementations of some methods that can be decomposed
   into more basic functions. Of course, this behavior can be over-ridden in
   the individual driver modules.

 - Should let the autoloader load the drivers (via 'use').

-  May assist the user in dynamically discovering the drivers at run-time.
   Question: Can I find out what implementations of TIEHASH are installed on my
   computer??

 - Provide simple and understandable functionality. Preformance is secondary.


The DBI base package should _not_:

 - Include any C whatsoever. One could write a driver that connects to a database 
   using TCP/IP and sends textual SQL queries. Thus, everything on the client
   would be 100% written in perl.

 - Specify the format of ANY 'C' functions or structures.

 - Be the central switch to dispatch calls to the drivers.

 - Hold data or know ANYTHING about which handles are assigned to which
   drivers, or what statements are assigned to which handles. See below.


Each DBI::Driver should:

 - Be completely object oriented. In fact, it should probably inherit from DBI.
   (i.e. "@ISA = ('DBI')"

 - Override (provide implementations for) some or all DBI methods.

 - Keep track of all open connections and handles.

 - Be the only code that knows or cares what functions are in the native
   (i.e. machiene specific) C library.

 - Be the only one to know about C structures. [i.e. C structs should not be
   part of the DBI API]

 - Pay me millions of dollars in royalties. Ok, maybe not.

 - store connection handle information anywhere it wants (i.e.
   $self->{'handle'} might be a good place. But then again, maybe it's in
   $self->{'connection'}. Only the driver writer knows or cares.

 - Only return object refrences and user data (i.e. no actual statement handles
   floating around the main program).

---------------------------------- Conclusion:

Maybe the above is just a polite way of saying "let's throw away the current
DBI spec." Or maybe I'm talking about a front-end to DBI. Or maybe what I'm
talking about isn't what you are talking about.  Discussion?

P.S.: I'm sending this to dbi-users because, well, I think it makes DBI easier to 
use. I hope all the developers are on this list. (if not, they can e-mail me ;)

-- 
Dan "http:www-personal.umich.edu/~dmag" DeMaggio (dmag@umich.edu)
---+++---
Received: from punt.demon.co.uk by oink with SMTP (PP) id <05913-62@oink>;
          Mon, 1 Jan 1996 07:15:36 +0000
Received: from punt-1.mail.demon.net by mailstore for dbperl@ig.co.uk 
          id 820450152:04301:0; Sun, 31 Dec 95 22:49:12 GMT
Received: from toccata.fugue.com ([204.254.239.2]) by punt-1.mail.demon.net 
          id aa04094; 31 Dec 95 22:48 GMT
Received: (from daemon@localhost) by toccata.fugue.com (8.6.12/8.6.11) 
          id OAA00695 for dbi-users-real; Sun, 31 Dec 1995 14:17:56 -0800
Precedence: junk
Sender: owner-perldb-interest@fugue.com
Received: from fruitbat.mcqueen.com (pillshovel.mcqueen.com [194.72.106.246]) 
          by toccata.fugue.com (8.6.12/8.6.11) with ESMTP id OAA00691 
          for <dbi-users@fugue.com>; Sun, 31 Dec 1995 14:17:54 -0800
Received: (from descarte@localhost) by fruitbat.mcqueen.com (8.6.12/8.6.12) 
          id WAA19070 for dbi-users@fugue.com; Sun, 31 Dec 1995 22:12:58 GMT
From: Alligator Descartes <descarte@hermetica.com>
Message-Id: <199512312212.WAA19070@fruitbat.mcqueen.com>
Subject: Oracle Severe Mangler
To: dbi-users@fugue.com
Date: Sun, 31 Dec 1995 22:12:56 +0000 (GMT)
X-Pants: ** The return address of this email should be: descarte@hermetica.com
X-Mailer: ELM [version 2.4 PL24]
Content-Type: text
Content-Length: 680


Hi.

I've setup some mailing lists pertaining solely to the Oracle Severe Mangler
product that is being currently prototyped.

The product is akin to Oracle's Server Manager, but is written in perl5,
Tk and DBI/DBD::Oracle.

The addresses of the mailing lists, for anyone that is interested are:

	severe-dev-request@hermetica.com
	severe-users-request@hermetica.com
	severe-announce-request@hermetica.com

If you wish to subscribe, please send a message body containing:

	subscribe your_email_address

Regards.

-- 
Alligator Descartes	 	  | "...Nil posse creari De nilo"
descarte@hermetica.com	 	  |	-- Lucretius, De Rerum Natura I, l.155
http://www.hermetica.com/descarte | 
---+++---
