Design, explore and maintain databases, build compound SQL query statements, manage database user rights, and manipulate data fast and convenient.
AidAim SQLMemTable v.8.00
Description
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.
- 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.
Informations
- Status: Fully functional
- Source: On purchase/registration
- Source price: $295
- Size: 4 458kB
Platforms: CB5, CB6, C2k6, D2006, C2k7, D2007, C2k9, D2009, C2k10, D2010, CBXE, DXE, CBXE2, DXE2, CBXE3, DXE3, CBXE4, DXE4, CB64, CBXE5, DXE5, DXE64, D5, D6, D7, D2005
KbmMemTable v.5.52
Description
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...
Informations
- Status: Fully functional
- Source: Included
- Size: 529kB
Platforms: C2k6, CB3, CB4, CB5, CB6, D2005, D2006, D3, D4, D5, D6, D7
Memory Dataset v.3.11
By Gregor Markowski.
Freeware 18 Dec 2014Description
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)
Informations
- Status: Trial (work while IDE is running)
- Source: None
- Size: 1 704kB
Platforms: D2006, D2007, D6, D7
THKMemTab v.1.1b
By Harri Kasulke.
Freeware + source 12 Mar 1999Description
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.Informations
- Status: Fully functional
- Source: Included
- Size: 32kB
Platforms: D3
TMemDataset v.2.16
By Alain Brunet.
24 Jun 2006Description
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.Informations
- Status: Trial (work while IDE is running)
- Source: On purchase/registration
- price: $45
- Size: 602kB
Platforms: D4, D5, D6, D7
TreeDataset v.1.17
By Gregor Markowski.
Freeware 18 Dec 2014Description
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.
Informations
- Status: Trial (work while IDE is running)
- Source: None
- Size: 1 939kB
Platforms: D2006, D2007, D6, D7
VirtualTable v.9.7
By Devart.
Freeware 12 Jun 2016Description
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.
Informations
- Status: Fully functional
- Source: On purchase/registration
- Source price: $99.95
- Size: 880kB
Platforms: C2k6, D2006, C2k7, D2007, C2k9, D2009, C2k10, D2010, CBXE, DXE, CBXE2, DXE2, CBXE3, DXE3, CBXE4, DXE4, CBXE5, DXE5, CBXE6, DXE6, CBXE7, DXE7, CBXE8, DXE8, C10, D10, C10.1, D10.1, D6, D7, CB6