| **Navigation:**  ISAM File Drivers > TopSpeed Database Driver >====== TopSpeed: Overview ====== | [[topspeed database driver.htm|{{btn_prev_n.gif|Previous page}}]][[coming future.htm|{{btn_home_n.gif|Return to chapter overview}}]][[topspeed driver strings.htm|{{btn_next_n.gif|Next page}}]] | | || The TopSpeed Database file system is a high-performance, high-security, proprietary file driver for Clarion development tools. It is //not //file compatible with the Clarion file driver's data. Data tables, keys, indexes and memos can all be stored together in a single DOS file. The default file extension is *.TPS. A separate "Transaction Control File" uses the *.TCF extension by default. The TopSpeed driver can optionally store multiple tables in a single file. This lets you open as many data tables, keys, and indexes as necessary using //a single DOS file handle//. This feature may be especially useful when there are a large number of small tables, or when a group of related files are normally accessed together. All keys, indexes, and memos are stored internally. {{tipbox.jpg|TipBox.jpg}} **When multiple tables share a single DOS handle, the first OPEN mode applies to all the tables within the file.** In addition, the TopSpeed file system supports the** BLOB** data type (Binary Large OBject), a field which is completely variable-length and may be greater than 64K in size. A BLOB must be declared before the RECORD structure. Memory for a BLOB is dynamically allocated and de-allocated as necessary. For more information, see //BLOB //in the //Language Reference.// | **Files:** | **ClaTPSL.LIB** | Windows Static Link Library | | | **ClaTPS.LIB** | Windows Export Library | | | **ClaTPS.DLL** | Windows Dynamic Link Library | {{tipbox.jpg|TipBox.jpg}} **This driver offers speed, security, and takes up fewer resources on the end user's system.** **TopSpeed:Specifications** **TopSpeed:Data Types** **BYTE, SHORT, USHORT, LONG, ULONG, SREAL, DECIMAL, REAL** **STRING, CSTRING, PSTRING, MEMO, GROUP, BLOB, DATE, TIME** **TopSpeed:File Maximums/Specifications** **File Size : 2 GB** **Records per File : Limited to the file size (see below).** **Record Size : 15,000 bytes** **Field Size : 15,000 bytes** **Fields per Record : 15,000** **Keys/Indexes per File: 240** **Key Size : 15,000 bytes** **Memo fields per File: 255** **Memo Field Size : 64,000 bytes** **BLOB fields per File: 255** **BLOB Size : Hardware dependent (Max size 640 MB)** **Open Data Files : Operating system dependent** **Table Name : 1,000 bytes** **Tables per DOS File :  Limited only by the maximum DOS file size--approximately 2^32 bytes (4,294,967,296).** **Concurrent Users per File: 1024** {{notebox.jpg|NoteBox.jpg}} The Topspeed record ID uses an unsigned LONG, but due to the way the driver does read/write locking the number of bytes that can be in a file is 2Gb. The limit on the number of records is actually much lower than 2Gb because that 2Gb size limit also includes keys and record headers. The actual limit on records is (2Gb - key data - header data)/record size. So the number of records is only limited by the size of the file.