Short: Database engine for xBase alike databases (v 1.0) Author: Noster-Riede@T-Online.de (Peter "Noster" Riede) Uploader: Noster-Riede T-Online de (Peter "Noster" Riede) Type: dev/misc Version: 1.0 Requires: AmigaOS 2.0 or higher Architecture: m68k-amigaos Language: English OVERVIEW: ----------- THIS LIBRARY IS SHAREWARE. Only developers using this library to develop own applications have to pay the shareware fee, for 'users' the library is for free. See the Installation manual for details. This shared runtime library and the according link library can be used by every application that needs to store information in a database. The library contains all functions that are required to create and edit large databases of several datatables and their according indexes. The library could be used from every programming language that is able to call Amiga shared runtime libraries (C-headerfiles included). The library doesn't provides any graphical user interface (GUI); use whichever you want for your database application, respectively use the database func- tionality from any application. The datatables are organized like XBase-datafiles but they are not compatible to the several XBase-clones. I renounced to make them compatible because I've missed several options by the XBase-datatables. So XBase doesn't support the basic numerical datatypes, XBase use an own format for numerical values stored in the datatables. They use a fixed-point value but since there is no support for fixed-point algebra in any known (known by me) operating-system/hardware this will always result in rounding errors when these values are converted to a floating-point value to do any arithmetics. So I decided to add support for the basic numeric datatypes. This library can store simple integer types as single byte-values, 2 byte words, 4 byte longs, and 8 byte (64-bit) doublelong values and also floating-point values in single or double precision. The datatables also support fixed-point numerical values (simular to XBase), date and time values, strings of fixed and variable length. The library supports simultaneous multiuser access to these files and does the required lockings so the accesses of the different instances are serialized to avoid conflicts. The library supports automatically locking or manual locking of the records of the datatables. Automatically locking will do it for most purposes but manual locking may be required for finetuning of an application. The records of every datatable may be indexed using several indexes. The indexes are stored in own index-files and the keys in these indexes are automatically added/changed/removed, whenever the contents of a record is changed. The keys are build according to a key-expression, that has to be specified for every index. This key-expression allows to combine several columns of a datatable to a single key-value, e.g. in an address-datatable you may combine the columns for the 'name' and 'first name' for an index that is primary ordered by the 'name' and all entries with equal 'name' are ordered by the 'first name'. There are also a couple of supported functions that may be used to manipulate the key-values, e.g. the function "Upper()" that allows to create an index where the case of the strings doesn't matter for the sorting order. Nearly every column-type of the datatables may be indexed, except the columns containg a variable length string (or custom datatypes that are not representable by a string or a 64-bit integer). You should first have a look into the installation manual and then use the developer manual to learn how to create own applications using the Database.library. FEATURES: ----------- - runs on any Amiga with at least AmigaOS 2.0 - supports simultan multiuser access to the database using record locking - supports databases located on network devices - supports several datatypes to be stored in the databases - expandable concept, write your own extensions for custom datatypes to be stored in a database. - any number of indexes per datatable allowing to order and seek for nearly any contents on the database - more than 200 pages english documentation (.guide and .dvi) describing installation, usage, performance, and programming containing several examples and a complete tutorial. - it's very easy to learn how to create own databases using this library - ...(have a look into the documentation contained in this archive) INCLUDED DEVELOPER FILES: --------------------------- - Autodocs - C header files (also protos, pragmas) - several C examples showing how to use the database.library - complete RKM-alike manual (>160 pages) describing the library and its functions including a complete tutorial and additional information, required if own enhancements should be added to the functionality. FILES: -------- This archive should contain the following files: README - this file joinOS.readme - basic information about joinOS.library database.library - the shared database.library joinOS.library - additional library containing support fct. documents/Installation.guide - installation guide as AmigaGuide document documents/Installation.dvi - installation guide as dvi document documents/Developer.guide - developers manual as AmigaGuide document documents/Developer.dvi - developers manual as dvi document autodoc/Database.guide - Autodoc file of the database.library autodoc/joinOS.guide - Autodoc file of the joinOS.library lib/Database.lib - C link-library with additional functions lib/joinOS.lib - C link-library with additional functions include/joinOS/... - C include files required for development examples/... - several example files inclusive source HISTORY --------- - Version 1.0, 10. May 2004 first public release