Tgdbm , by Stefan Vogel, provides an easy to understand interface to the Gdbm. Gdbm uses extendible hashing and stores key/value pairs, where each key must be unique.
Tgdbm can be used for transparently accessing and storing tcl- arrays (persistant arrays). An array is attached to the gdbm-file as a handle. With this you can set an array-entry which is stored or updated transparently in the corresponding gdbm-file.
Tgdbm is meant to be used in Tcl-Applications which has to store some small/medium amount of data. In many cases there is not enough data to be stored, so that a "real" database is justified. But though there is only a small amount of data, you often have to use an efficient way to store them (not just write them in a plain text-file).
Qgdbm is wrapped around Tgdbm and provides a more convenient way to store and retrieve data. It is however not a replacement for a "professional" database. But serves well for applications which simply have to store a small/medium amount of data which fits into a simple table-structure. With Qgdbm you can access information from gdbm-files in an SQL-like fashion. Not really SQL, but a more Tcl-adopted SQL, let's name it TSQL for (Tcl or Tiny(?)-SQL).
Because Tgdbm is provided as a loadable Tcl-Module, it can be easily integrated into any Tcl-Application.