# Utilities and sample programs

While working with tclodbc I have created numerous small utility procedures and programs for different purposes. These programs usually are quick non-general hacks, as scripts often tend to be. Thus most of them do not have any value as general utilities.

However, I have had some requests for more comprehesive examples of tclodbc programming. For this purpose I have included in tclodbc 2.1 some utility programs as well as some example programs that take use of them. The samples include e.g. creating, dumping and loading of a simple MS Access database, some date/time conversion functions and sql code generating utilities. Also, an of example of using tkTable widget with tclodbc is also provided.

# Important note from author

tclodbc as whole is provided on an "as is" basis, without any warranties whatsoever. This concerns the utility and sample programs as well as the extension itself. Utility programs are especially small and simple, and most propaby won’t work with every platform or dbms. Therefore I am not very interested in receiving e-mail about bugs or fixes in the utility programs. If they are of help to the users, good, if they are not, that’s how it is. Anyway, they are naturally written in tcl and may provide some insight for using tclodbc and also a good template for writing your own utilities. The bug reports of the actual extension are naturally still welcome and very much appreciated.

## Sample programs

The sample programs are copied in directory samples below the tclodbc installation directory. Most of the programs are best run in plain tclsh, except tktable.tcl, which should be run in wish. The sample programs include basic documentation in the form of tcl comments.

## Utility procedures

Utility procedures are included in several tcl files that are copied to tclodbc installation directory. The procedures are sourced in namespace ::tclodbc when running setup.tcl. So the utilities are normally called with namespace suffix. Example:

tclodbc::SqlShell db

Because of the use of namespaces in packaging, tcl 8.0 is required with the utilities

The utilities are documented in some level in accompanying utilref.htm