Index of /tcl/ftparchive/sorted/packages-7.6/databases/oratcl-2.5b1

      Name                   Last modified     Size  Description

[DIR] Parent Directory 18-Dec-99 07:01 - [   ] CHANGES 09-May-97 12:37 4k [   ] README 09-May-97 12:37 9k [DIR] conf-tcl-74/ 29-Jan-99 12:24 - [DIR] doc/ 29-Jan-99 12:24 - [CMP] oratcl-2.5b1.tar.gz 09-May-97 17:01 323k [DIR] oratcl-capi/ 29-Jan-99 12:24 - [DIR] samples/ 29-Jan-99 12:24 - [DIR] win/ 29-Jan-99 12:24 -


Oratcl -  Tcl interface to Oracle database server


 * Oracle interface to Tcl
 *
 * Copyright 1993 Tom Poindexter and U S WEST Advanced Technologies, Inc.
 *
 * Permission to use, copy, modify, and distribute this software and its
 * documentation for any purpose and without fee is hereby granted, provided
 * that the above copyright notice appear in all copies.  
 * Tom Poindexter and U S WEST make no representations about the suitability 
 * of this software for any purpose.  It is provided "as is" without express or
 * implied warranty.  By use of this software the user agrees to 
 * indemnify and hold harmless Tom Poindexter and U S WEST from any 
 * claims or liability for loss arising out of such use.
 *
 *-----------------------------------------------------------------------
 * Version 1.0 July, 1993
 * Tom Poindexter, Boulder Colorado
 * tpoind@advtech.uswest.com  or  tpoindex@nyx.cs.du.edu   
 *-----------------------------------------------------------------------
 * Version 2.0 November, 1993
 * Tom Poindexter, Boulder Colorado
 * tpoind@advtech.uswest.com  or  tpoindex@nyx.cs.du.edu   
 *-----------------------------------------------------------------------
 * Version 2.1 February, 1994
 * Tom Poindexter, Boulder Colorado
 * tpoind@advtech.uswest.com  or  tpoindex@nyx.cs.du.edu   
 *-----------------------------------------------------------------------
 * Version 2.11 April, 1994
 * Tom Poindexter, Boulder Colorado
 * tpoind@advtech.uswest.com  or  tpoindex@nyx.cs.du.edu   
 *-----------------------------------------------------------------------
 * Version 2.2 October, 1994
 * Tom Poindexter, Denver Colorado
 * tpoindex@nyx.cs.du.edu      <<<note new address!
 *-----------------------------------------------------------------------
 * Version 2.3 August, 1995
 * Tom Poindexter, Denver Colorado
 * tpoindex@nyx.cs.du.edu 
 *-----------------------------------------------------------------------
 * Version 2.4 September, 1996
 * Tom Poindexter, Denver Colorado
 * tpoindex@nyx.net
 *-----------------------------------------------------------------------
 * Version 2.41 December, 1996
 * Tom Poindexter, Denver Colorado
 * tpoindex@nyx.net
 *-----------------------------------------------------------------------
 * Version 2.5 May, 1997
 * Tom Poindexter, Denver Colorado
 * tpoindex@nyx.net
 *
 *



WHAT IS ORATCL?

Oratcl is an extension to Tool Command Language (Tcl) that provides access
to a Oracle Database server.  Oratcl adds additional Tcl commands that 
login to an Oracle Server, pass SQL code, read results, etc.  Oratcl was 
inspired by similar tools written for Perl (sybperl, oraperl) but was written 
from scratch instead of borrowing on the work of either Perl extension.

Oratcl was based on my earlier effort with Sybtcl.  The sample program
"wosql" is a direct descendent of Sybtcl's "wisql".


Oratcl features:
  -supports multiple connections to the same or different Oracle Servers
  -sends Sql code or anonymous PL blocks to the server
  -supports nonblocking (asynchronous) SQL execution (Oracle 7.2+)
  -caches return rows from the server for efficiency
  -converts results to strings and returns rows as Tcl lists
  -allows cursor variables to be returned from PL/SQL (Oracle 7.2+)
  -allows user defined null values to be returned
  -Version 7 stored procedures can be executed and return values accessed
  -accesses column names, lengths, and datatypes of rows & return values
  -provides feedback of Oracle messages and codes
  -reads/writes long columns to files
  -commit, rollback, and autocommit options



ACKNOWLEDGEMENTS

	John Ousterhout (ouster@sprite.berkeley.edu) for Tcl and Tk -
	    wonderful software in my opinion.

	Karl Lehenbauer (karl@NeoSoft.com) and 
	    Mark Diekhans (markd@Grizzly.com) for Extended Tcl -
	    more good stuff.

	Michael Peppler (mpeppler@itf0.itf.ch) for sybperl, which gave me
	    the inspiration to write Oratcl.  


REQUIREMENTS

Since Oratcl is an extension to Tcl, you should already have Tcl, or be
prepared to get it via Ftp [sites listed below].

Of course, you must also have access to a Oracle Databaser Server.  
Oratcl must be linked with the Oracle OCI libraries.

Starting with version 2.4, Oratcl supports building a dynamic load library on
systems that support dynamic loading.  If you build static libraries and
executables, I recommend building with Extended Tcl.

The specific software versions I used:

 
        Tcl - 7.6             ftp.smli.com:/pub/tcl/tcl7.6.tar.Z
        Tk  - 4.2             ftp.smli.com:/pub/tcl/tk4.2.tar.Z
                              also avaible at
                              ftp.neosoft.com:/pub/tcl/mirror/ftp.smli.com
			      and 
			      http://www.neosoft.com/tcl
 
        Extended Tcl - 7.6.0  ftp.neosoft.com
                                /pub/tcl/tclx-distrib/tclX7.6.0.tar.gz


	Oracle SQL Server - Version 6 or Version 7.0, 7.1, 7.2, 7.3   
	Oracle OCI libraries

>>>>>>>	I've put oratcl-2.5.tar.gz on ftp.neosoft.com 
        in /pub/tcl/sorted/databases/oratcl-2.5/oratcl-2.5.tar.gz

	Also available at:  
	http://www.neosoft.com/tcl/ftparchive/sorted/databases

	see the newsgroup comp.lang.tcl for general Tcl discussion and
	the Tcl Frequently Asked Questions.



I've built Oratcl in SunOS 4.1.2 (BSD), Solaris 2.5 (Sys 5.4),
and HP-UX 10.x, and Windows NT 4.0/VC++ 4.0.

Other users have reported successful compiles on: 

Data General DG/UX
Sequent PTX 2.1
IBM AIX
Dec Alpha OSF/1
SGI Irix

(mail to me on a successful port on other platforms; I'll add to this list)


SAMPLES

Some samples are included using the Extended Tcl tcl(1) and wishx(1)
interpreters.    In particular, the "wosql" (Windowing Oracle SQL) program 
is a handy replacement for Sql*Plus for ad hoc queries.  Wosql does not 
attempt to provide any of the report generating and formatting 
capabilities of Sql*Plus.

Also in ./samples is iud_maker, an Oratcl that builds insert-update-delete
applications for a single table.

The ODDIS graphical data dictionary application is included in ./samples/oddis.
OSQL in ./samples/osql - another SQL query tool (requires TclX, [incr tcl], 
Blt).
Check them out!  

See ./samples/README.samples plus each file's comments and code.


MAN PAGE

You're in luck! I've written one.


OTHER DOCUMENTATION

The directory ./doc contains a draft of a chapter I'm writing on Oratcl
for an upcoming book on Tcl extensions, to be published by O'Reilly &
Associates late summer 1997 (?).
 

BUG REPORTS

Comments, suggestions, et.al., should be mailed to me at the above email
address, or posted to comp.lang.tcl if general enough nature.  
Hell, you can even mail to me if you like Oratcl!

Mail bug reports to:	tpoindex@nyx.net

Please *always* include: 
        -version of Oratcl
        -version of Tcl, Tk, and TclX
        -version of Oracle server and OCI libary
        -version of your operating system
        -compiler used, stock cc or Gcc
        -samples of SQL or Oratcl code causing problems
        -relevant database table definitions, views, procedures


KNOWN BUGS !!!

Oracle's 7.1.4 release seems to have introduced several problems with their
Oracle Call Interface (OCI) libraries that Oratcl uses.  Symptoms include
excessively long connect times (2+ minutes) when using Sql*Net, or
possibly "fetch out of sequence" errors when retrieving rows.  Use 
7.0.x or 7.1.6+ OCI libraries if you experience problems with 7.1.4.  

Some users have reported that this bug is still in some versions after
7.1.6, possibly SunOS.  I recommend calling Oracle Tech support. 

*Flash* it seems that some versions of Oracle 7.3 may have this bug
as well :(  Please call Oracle tech support, they need to fix OCI.

See the file OCI714.bug for additional details.

I've also received a few reports of Oratcl (OCI problems again) having some bad 
interaction with Tcl's 'exec' command.  It sounds like OCI and the 'exec'
command are battling over signals.  If you're having problems using 'exec' with
Oratcl, try using 'exec' with in a 'catch' command.   Mail to me on this 
problem if you have any explanations, and again, contact Oracle tech support.


ORATCL WWW PAGE
 
I keep terse, but usually up todate information at: 
	http://www.nyx.net/~tpoindex
 

TCL DATABASE MAILING LIST

A mailing list is available for specific discussions about using Tcl with
databases, including Oratcl, Sybtcl, etc.  Feel free to join and mail to the
list.  The list is hosted by De Clarke.

To subscribe to this list send mail to
 
        tcldb-request@ucolick.org
 
and in the body of the message write
 
        subscribe
 
To unsubscribe... (well, you get the idea).
 
Please remember to write to tcldb-owner with problems about the
list itself, or to postmaster@ucolick.org if you have difficulties
getting through to the tcldb-owner address.  Please do not send
subscribe and unsubscribe messages to the list itself.

 
INSTALLATION
 
Quickie install instructions:
 
        ./configure --prefix=/same/prefix/path/as/with/tcl/configure  \
                    --exec-prefix=/same/exec-prefix/path/as/with/tcl/configure \
                    --enable-shared  #optional shared library
        make
        make install
 
Didn't work? You'll have to read the INSTALL file.  Maybe you should read it
anyway.

If you are having problems trying to build a dynamic load library for
Oratcl (--enable-shared), check the notes in the INSTALL file.


OTHER

Try out the Oratcl C API.  It allows your C programs to access Oracle 
using the Oratcl model. It's experimental; please mail to me if
it works for you, or if you have improvements.  See ./oratcl-capi/*

See the file CHANGES for changes in versions of Oratcl.

-finis-