From: Tom Poindexter <tpoindex@nyx.net> Subject: [ANNOUNCE] Sybtcl-3.0b2 Date: 7 Dec 1998 09:07:20 -0800 Sybtcl-3.0b2 is available for downloading at: http://www.neosoft.com/tcl/ftparchive/sorted/databases/Sybtcl-3.0b2/3.0b2/sybtcl-3.0b2.tar.gz ftp://ftp.neosoft.com/pub/tcl/sorted/databases/Sybtcl-3.0b2/3.0b2/sybtcl-3.0b2.tar.gz Changes since 3.0b1: -fixed handle index error in sybconnect when additional optional arguments are used. -fixed some test cases to be aware of 'select into' dboption. -fixed sybmon and sp_who to work without TclX, include in 'install-tools' makefile target. -enhanced wisqlite to include writing to a file when fetching rows, allow columnar or column delimited output (tab, space, other char) -Windows DLL and Macintosh .shlb are supplied. (Windows users- use WinZip to unpack .tar.gz files!!) The README is attached: Tom Poindexter tpoindex@nyx.net ............................................................................... Sybtcl - Tcl interface to Sybase database server * * Copyright 1992 Tom Poindexter and U S WEST Enhanced Services, 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 June, 1992 * Tom Poindexter, Denver Colorado * tpoindex@nyx.cs.du.edu [[[All intervening version tags elided. --JDM.]]] *----------------------------------------------------------------------- * Version 3.0 December, 1998 * Tom Poindexter, Denver Colorado * tpoindex@nyx.net * WHAT IS SYBTCL? Sybtcl is an extension to Tool Command Language (Tcl) that provides access to a Sybase Database server. Sybtcl adds additional Tcl commands that login to a SQL Server, pass SQL code, read results, etc. Sybtcl 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. Sybtcl features: -supports multiple connections to the same or different SQL Servers -provides "nextrow" processing for regular and compute return rows -converts results to strings and returns rows as Tcl lists -allows user defined null values to be returned -stored procedures can be executed and return values accessed -accesses column names, lengths, and datatypes of rows & return values -provides feedback of SQL Server and DB-Lib messages -reads/writes text or image datatypes to files Sybtcl does not: -perform row buffering or browse mode -bulk copies -support two phase commit on multiple servers WHERE TO GET SYBTCL ftp://ftp.neosoft.com/pub/tcl/sorted/databases/Sybtcl-3.0b2/3.0b2 or http://www.neosoft.com/tcl/ftparchive/sorted/databases/Sybtcl-3.0b2/3.0b2 ACKNOWLEDGEMENTS John Ousterhout (john.ousterhout@scriptics.com) 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@datamig.com) for sybperl, which gave me the inspiration to write Sybtcl. REQUIREMENTS Since Sybtcl 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 Sybase Databaser Server. Additionally, you must have the Sybase Open Client (aka "DB-Library") package that provides header files and object libraries; Sybtcl must be linked with libsybdb.a. Sybtcl 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 - 8.0p2 ftp.scriptics.com:/pub/tcl8_0/tcl8.0p2.tar.gz Tk - 8.0p2 ftp.scriptics.com:/pub/tcl8_0/tk8.0p2.tar.gz also avaible at http://www.scriptics.com http://www.tclconsortium.org http://www.neosoft.com/tcl Extended Tcl - 8.0.3 ftp.neosoft.com /pub/tcl/TclX/tclX8.0.3.tar.gz Sybase SQL Server - 4.x, System 10, or System 11 Sybase Open Client / DB-Lib (CT-Lib in a pinch, see INSTALL) see the newsgroup comp.lang.tcl for general Tcl discussion and the Tcl Frequently Asked Questions. I've built Sybtcl in Sequent PTX 1.3 (System V 3.2), SunOS 4.1.x, Solaris 2.5, Dec Unix, HPUX 9.x/10.x, Linux/ELF (RedHat 5.2), and Windows NT 4.0/95/VC++ 4.0, MacOS 8.1/MPW. Other users have reported successful compiles on: SGI Irix IBM AIX SCO Unix LINUX You can now get Sybase Adaptive Server Enterprise 11.0.3 for *free*, including the necessary DB-Lib. Get yours at: http://www.sybase/com/adaptiveserver/linux http://www.redhat.com http://www.caldera.com http://www.suse.com WINDOWS NT/95/98/00 AND MACINTOSH Windows: A DLL for Windows NT/95 is supplied in the ./win directory. Run 'tclsh80 install.tcl' to install. See the win/README.win file for more information. Please note!! I'm not suppling a .zip file for Windows. The popular WinZip program can unpack .tar.gz files. Save the distribution file on your Windows machine, using .tgz instead of .tar.gz for best results. Windows users must have a Sybase client installation on their machines. I've built the DLL with Open Client 11.5, but it should build with anything 10.0.3 and higher. The DLL was compiled with Microsoft VC 4.0. Macintosh: A Macintosh PowerPC shared library is in the ./mac directory. Run 'install.tcl' by starting the 'Tcl 8.0 Shell', and typing 'source install.tcl'. You'll need the de facto Stuff-it program, or similar to unpack the .shlb.hqx file. 'Fetch' can also decode BinHex files during an FTP session also. Macintosh users must have a Sybase client installation on their machines. I've built the shared lib with Open Client 10.0.4, using the 'CFM (FAT)' libraries. The shared lib was compiled with Apple's MPW MrC compiler. You can get Apple MPW for *free* at: http://www.apple.com/developer http://developer.apple.com/sdk/index.html I didn't make a 68k version. Let me know if you get a 68k version working. SAMPLES Some samples are included using the Extended Tcl tcl(1) and wishx(1) interpreters. In particular, the "wisqlite" (Windowing ISQL) program is a handy replacement for Sybase's Isql in an X11 environment. See ./samples/README.samples plus each file's comments and code. MAN PAGE You're in luck! I've written one. OTHER DOCUMENTATION Sybtcl is explained in greater detail in "Tcl/Tk Tools", edited by Mark Harrison, and published by O'Reilly and Associates. "Tcl/Tk Tools" is a new book that covers many of the popular Tcl extensions, written by the authors of each extension (I wrote the chapters on Sybtcl and Oratcl.) 1st Edition published September 1997, ISBN: 1-56592-218-2 See your local bookstore, or try: http://www.softpro.com http://www.amazon.com http://www.ora.com http://www.barnesandnoble.com BUG REPORTS Comments, suggestions, et.al., should be mailed to me or posted to comp.lang.tcl if general enough nature. Hell, you can even mail to me if you like Sybtcl! Mail bug reports to: tpoindex@nyx.net If you post a question or bug report to comp.lang.tcl, I may not see it, so please copy me also. Please ALWAYS include: -version of Sybtcl -version of Tcl, Tk, and TclX -version of Sybase server and DB-Libary -version of your operating system -switches used with configure (see config.status) -compiler used, stock cc or Gcc -samples of SQL or Sybtcl code causing problems -relevant database table definitions, views, procedures SYBTCL WWW PAGE I keep terse, but usually up to date 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 listserv@ucolick.org and in the body of the message write subscribe tcldb 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 make make install make install-tools Didn't work? You'll have to read the INSTALL file. Maybe you should read it anyway. NOTE!!! I strongly advise that you build Tcl with the '--enable-shared' option. Sybtcl uses information that Tcl's configure finds, particularly information about compiling and linking for dynamic shared libraries. Sybtcl by default builds a shared library. See the INSTALL file for additional notes. OTHER Try out the Sybtcl C API. It allows your C programs to access Sybase using the Sybtcl model. It's experimental; please mail to me if it works for you, or if you have improvements. See ./sybtcl-capi/* See the file CHANGES for changes in versions of Sybtcl. -finis- -- Tom Poindexter tpoindex@nyx.net http://www.nyx.net/~tpoindex/ [[Send Tcl/Tk announcements to tcl-announce@mitchell.org Send administrivia to tcl-announce-request@mitchell.org Announcements archived at http://www.findmail.com/list/tcl_announce/ The primary Tcl/Tk archive is ftp://ftp.neosoft.com/pub/tcl/ ]]