Home | 10% - Off! | New | VCL | DB-Aware | Tools | DB Tools | Apps | Samples | .NET | .NET DB-Aware | .NET Tools | .NET Samples | Kylix | Docs | Bold | Discussion | Sites | Tips | DPFL | Authors | Uploads | RSS | Store | Advertisement | About
DB-Aware Components

DB Access
Direct DB Access
MS Access
MS Excel
Pervasive DB
MS Other
Memory Tables
Interbase and Firebird
DB-Aware Components > Direct DB Access > Memory Tables  

Companies News:

IBSurgeon FirstAID 4.0 - new version of Firebird recovery tool
IBSurgeon FirstAID 4.0 - new version of Firebird recovery tool IBSurgeon is glad to announce version 4 of FirstAID: an ultimate recovery tool for Firebird and InterBase databases. FirstAID 4.0 introduces new level of recovery rate - up to 95% of corrupted databases can be fixed. Now FirstAID highlights all problematic tables with corrupted metadata and suggest when to use external metadata mechanism to achieve better results. FirstAID 4.0 allows free and full preview of data in the corrupted database. More details and download
Want to know more ?


AidAim SQLMemTable v.8.00FNC 4458 - 10167 k 26 Feb 2014
By AidAim Software LLC. SQLMemTable is a fast and easy-to-use in-memory table and query VCL for Delphi and C++ Builder. SQLMemTable includes three visual components:
  • TSQLMemTable, which is a fast and easy in-memory TTable replacement;
  • TSQLMemQuery that provides a subset of SQL'92 operators;
  • TSQLMemBatchMove which is very close to TBatchMove and supports almost all of its functionality.
SQLMemTable does not require BDE and provides all the TTable functions such as master / detail relationship, filtering, searching, sorting, blob fields, key and range methods, as well as some advanced features like blob fields compression and Unicode support.SQLMemTable provides the following services:
  • SQL (DML and DDL) commands support;
  • support (SQL'99 compliance);
  • Stored Functions and Procedure support
  • BatchMove component;
  • master / detail relationship;
  • Database Designer - design-time editor for TSQLMemDatabase
  • creating, renaming, emptying, deleting and restructuring tables;
  • creating, editing, deleting, browsing and searching for records;
  • creating and deleting multiple indexes;
  • calculated and lookup fields;
  • filtering support;
  • BLOB fields compression;
  • importing from and exporting to any dataset in fast and easy way;
  • internationalization / localization and Unicode support.
SQLMemTable is a fully functional in-memory database system; it includes table, query and batch move components as well as useful utility (with source code), demos and comprehensive help. SQLMemTable does not require BDE or any external drivers and has small footprint.
Fully functional
Source: On purchase/registration
Source Price: $295
Download: C2k10 C2k6 C2k7 C2k9 CB5 CB6 CB64 CBXE CBXE2 CBXE3 CBXE4 CBXE5 D2005 D2006 D2007 D2009 D2010 D5 D6 D7 DXE DXE2 DXE3 DXE4 DXE5 DXE64  Register NowHomepage

KbmMemTable v.5.52FWS 529 k 25 Feb 2007
By Components4Developers. If you have ever wanted to store data temporarily in your Delphi, C++ Builder or Kylix application, and you at the same time wanted full access to the data as if they were stored in a database table, you have the right solution here. kbmMemTable is a full TDataset compatible in memory table loaded with functionality.
  • Std.version is Free/Infoware.
  • Pro version is free for holders of kbmMW commercial developer licenses.
  • No need for the BDE. Make a full fledged application with data storage using only kbmMemTable.
  • Fastest memory table around.
  • Full expression filtering supported for Delphi 5/6/7/8 and BCB 5/6.
  • Advanced index support incl. filtered indexes and allot more.
  • Full support for search and locate both using indexes and not.
  • International sort orders supported for indexes.
  • In memory compression of data.
  • Full range of fields supported incl. blobs.
  • Full support for all data aware controls.
  • Easy interaction with other TDataset descendants.
  • Supports multiple cursors to the same physical in memory data.
  • Full support for transactions (StartTransaction, Commit, Rollback).
  • Supports Win32, Linux and safe .Net code.
  • and much more...

Fully functional
Source: Included
Download: CB2k6 CB3 CB4 CB5 CB6 D2005 D2006 D3 D4 D5 D6 D7  Hot Stuff!We realy use it !Homepage

Memory Dataset v.3.11FNC 1704 k 18 Dec 2014
By Gregor Markowski. The TMemoryDataset is a perfect replacement for Delphi TClientDataset.

I have created this component with minimum programming code and tried to achieve the maximum functionality Wherever the original Borland code was not optimal I have overridden it, but generally I’ve tried to take the maximum advantage of Borland code.You will be amazed at the potentiality and efficiency of TMemoryDataset component - TMemoryDataset not only allocates circa 1/3 of the memory that TClientDataset allocates but also is much faster in opening and creating indexes (especially multiple field indexes)

The package contains also TTreeDataset component that is a descendant of TMemorydataset.

Here are some features of the TMemoryDataset component:

  • no Midas and no external DLLs are used, TMemoryDataset is written in pure pascal code
  • borland TDatasetProvider functionality is integrated into TMemoryDataset, and property ProviderOptions implements apropriate TDatasetProvider options
  • cascade updates are performed on nonTMemoryDataset datasets as well, if detail dataset has properties MasterFields and IndexFieldNames
  • unlike TClientDataset, TMemoryDataset method ApplyUpdates doesn't perform Commit, so You can apply updates for multiple datasets in one transaction, by explicit call Commit method of Database assosiated with DefaultDestDataset after last call of ApplyUpdates
  • You can use TMemoryDataset with nonSQL based datasets as well
  • You can create fields in field editor without any link to other dataset or just use a dataset as FieldDefsSource, or set DefaultSrcDataset or DefaultDestDataset; if DefaultSrcDataset and DefaultDestDataset are different use the DefFieldValueAssignment (avByFieldIndex, avByFieldName,avByFieldNo) to link fields between the datasets
  • create indexes by setting IndexFieldNames; You can use 'desc' and 'cs' keywords to create descanding or casesensitive index for example: 'field1name desc cs; field2name;field3name cs;field4name desc';
  • by setting ranges, You don't need to think if field is indexed descending or ascending, TMemoryDataset will allways take values greater (or equal depending on KeyExclusive value) then lower value of range values and lower (or equal) then greater value of range values
  • ingenious algorithms for FASTEST creating of multiple field indexes and exact and nearest record locating
    • sorting on fkLookup fields (if LookupDataset allows to set index on LookupResultField it means there is IndexFieldDefs/IndexName or IndexFieldNames published property) without allocating any additional memory, sorting algorithm uses index in LookupDataset
    • a Calculated field can also be sorted; if it has an equivalent sort order in a fkData field, then put this fkData field name into Origin property of the calculated field
  • full support for FASTEST filtering (especially when using 'IN' expressions: 'aField in (value1,value2,..., valueN)'
  • MasterSourceFields are defined regardless of IndexFieldNames, it means You can sort detail Dataset as You want without loosing link to MasterSource
    • in opposite to TClientDataset,TDatasetField is natively used in connection with MasterSource, showing in simply way details in TDBGrid descendants
    • in dsInsert state, TMemoryDataset assigns for You MasterFields values to appropriate LinkedFields automatically
    • You can use Borland Field Link Designer at design-time to set relationship between master-detail fields
  • records are stored with minimum allocation of memory (string fields occupy actual length); there are 2 strategies of storing data (property StorageModel):
    • smVariableFieldsOffsets - minimum amount of memory is allocated for fields data (each null field value takes just one bit of memory)
    • smFixedFieldsOffsets - little more memory used for fields storage but faster creation of fields indexes and faster locating on searched records
  • all field types are fully supported
  • property StoreEmptyStrAsNull; if set to True then:
    • strings with 0 length or containing only whitespaces are stored as null
    • memory is saved in smVariableFieldsOffsets StorageModel
  • property StoreZeroAsNull for TNumericField descendants; if set to True then:
    • zero values are stored as null
    • negative values are placed before nulls in sort order
    • more clarity is given when browsing data in TCustomDBGrid descendants
    • memory is saved in smVariableFieldsOffsets StorageModel
  • SparseArrayElementCount published property lets You set the way of storing array fields:
    • -1 means all array elements are created in TArrayField Fields property
    • 0 means all array elements are stored but only one child field named 'Array_Elements' is created, but still You have access to each array element
    • >0 defines the maximum chilld field count that can be created and accessed
    • if array field is created in field editor it is highly recommended to use TmArrayField for which You can set value of property Size at design time
  • extreme fast locating of required records; nearest locate methods let You search with options (nloLowestDifference, nloKeyExclusive)
  • LoadDataFromTextFile method allows import not only text fields but multiline Memos and Blobs (in form of hexadecimal strings) as well
  • You can use TMemoryDataset in You Delphi IDE without any restrictions
  • try DEMO-exe to see an example of using TMemoryDataset (including TADTField)

Trial (work while IDE is running)
Source: None
Exe-Demo Included
Download: D2006 D2007 D6 D7  Discuss product

THKMemTab v.1.1bFWS 32 k 12 Mar 1999
By Harri Kasulke. THKMemTab is a memory-based Dataset with Data-Aware components support developed for storing Temporary Data in Memory using MemoryStreams. Doesn't need the BDE. Supports primary Dataset- and Field access Methods but no Indexing, Filtering or Sorting. Supported Field types: ftString, ftBoolean, ftFloat, ftSmallInt, ftInteger, ftDate, ftTime.
Fully functional
Source: Included
Download: D3  

TMemDataset v.2.16SW 602 k 24 Jun 2006
By Alain Brunet. The TMemDataset is a unique fully indexable memory table that works like a TTable. Records and indexes are stored in RAM. TMemDataset does not require BDE. Can be used by any application that replace the BDE with some other 3rd party's database engines. Support Blob fields. Easy to use 'OrderBy' property for sorting. Support Ranges and filters, Lookup and Calculated fields etc.. Cheap alternative for client/server (OLE) data transfer.
Trial (work while IDE is running)
Source: On purchase/registration
Price: $45
Download: D4 D5 D6 D7  Register NowHomepage

TreeDataset v.1.17FNC 1939 k 18 Dec 2014
By Gregor Markowski.

TTreeDataset as a descendants of TMemoryDataset lets You handle tree data structures in very easy way. For example a descendant of TCustomDBGrid needs just a few methods to be overriden to work with TTreeDataset.

    main features
  • if You attach a data source then poLoadDataOnOpen in ProviderOptions lets You decide if all nodes are loaded on open; if the option is excluded then tree is builded dynamically according to the progress of node expanding
  • when dataset is filtered then You can use FilteredRecordHandling to decide if not filtered out descendants of filtered out record can be attached to the nearest not filtered out ancestor or excluded from the tree
  • in multiparent tree data structure all data is preserved on changing parent and no additional memory is allocated
  • following published properties let You adjust any visual-data aware component for TTreeDataset access
    • Depth - the level of the node; root branch starts with 0
    • HasChildren and Expanded - for correct visualization of expand buttons; by setting Expanded to True or False You can expand or collapse node
    • IsLastChild (if needed IsFirstChild as well) and IsAncestorLastChild - for drawing of tree lines; IsAncestorLastChild returns a string of 'Depth' count character indicators: 'F' for False and 'T' for True where first character indicates if ancestor on root branch is last child, and so on...

Try DEMO-exe to see an example of a random generated human population.

Trial (work while IDE is running)
Source: None
Exe-Demo Included
Download: D2006 D2007 D6 D7  Discuss product

VirtualTable v.9.6FW 880 - 3989 k NEW
18 Nov 2015
By Devart. TVirtualTable component is a TDataSet descendant, that represents an in-memory data storage to develop in Delphi, C++Builder, Lazarus (and Free Pascal) on Windows, Mac OS X, iOS, Android, Linux, and FreeBSD for both 32-bit and 64-bit platforms. To add fields to virtual table call AddField method. Immediately after creating virtual table it will be empty. You then define new fields or load existing table files so that virtual table object becomes initialized and ready to be opened.

When you close virtual table it will discard its record set. To keep data you entered at design-time for later use you may wish to include voStored option in Options property. At run-time you need to call SaveToFile method explicitly to store modifications to the file that later may be retrieved back into the virtual table by calling LoadFromFile method.
Fully functional
Source: On purchase/registration
Source Price: $99.95

Download: C2k10 C2k6 C2k7 C2k9 CB6 CBXE CBXE2 CBXE3 CBXE4 CBXE5 CBXE6 CBXE7 CBXE8 CX D2006 D2007 D2009 D2010 D6 D7 DX DXE DXE2 DXE3 DXE4 DXE5 DXE6 DXE7 DXE8  Register NowHomepage

News from our Sponsors

  Develop and debug service applications easy then ever
SvCom is an integrated package of classes and tools for development of service applications and use of NT Security framework. Currently SvCom components work under all flavours of Windows.
  • Deploy NT Service applications under Windows 9x/ME and NT/ 2000/ XP/ 2003/ 2008/ Windows 7/ Windows 8
  • Develop and debug NT services using either Windows 95/98 or NT/ 2000/ XP/ 2003/ 2008/ Windows 7/ Windows 8 - using the same classes and the same function calls (!!!)
  • Advanced service debugging (Extremely useful, when you service is not just "Hello, World!")
  • Many more features...
more... more...

  Displaying, editing and printing hypertext documents
TRichView is a suite of native Delphi/C++Builder components (VCL) for displaying, editing and printing hypertext documents. ScaleRichView is a set of VCL components for WYSIWYG editing (“What You See Is What You Get”), created basing on TRichView and RichViewActions. ScaleRichView uses TRichView engine for document rendering, but it repaginates, scales and draws pages in its own way. more... more...

Advertising on Torry's Delphi Pages


Sort order
Quick Search
Exact phrase

Advertising on Torry's Delphi Pages

Guest Book
Guest Book

Sign-up for Torry newsletter
and get free component pack !



Subscribe to news in RSS 2.0 format!Subscribe to news in RSS 2.0 format!
Bookmark and Share
Up | Home | 10% - Off! | New | VCL | DB-Aware | Tools | DB Tools | Apps | Samples | .NET | .NET DB-Aware | .NET Tools | .NET Samples | Kylix | Docs | Bold | Discussion | Sites | Tips | DPFL | Authors | Uploads | RSS | Store | Advertisement | About
Copyright © Torry's Delphi Pages Torry's Delphi Pages Notes? Comments? Feel free to send...

The Ultimate Source of Object Pascal and Delphi Programming Knowledge.

Copyright © 1996-2015
All trademarks are the sole property of their respective owners
Privacy Policy