TMS RemoteDB

Set of Delphi components that allows you to create high performance, cross-platform, scalable, 3-tier database applications


v2.7.0.1 (May 27, 2020)

Version history

Version History



  • New : Support for Delphi 10.4 Sydney.
  • Fixed : TXDataset.AutoApply property not working when the key field itself was modified.


  • Fixed : Using two parameters with the same name, differentiated just by a number (param1, param2), the same param value were being used for both params.
  • Fixed : "Field not found" when using master-detail mechanism (regression from last version).


  • New : Batch updates (Array DML) mechanism for improved performance when inserting, updating or deleting several records at the same time. It is used both client-side (to use a single request to send SQL statement and all parameters at once) and server-side (to execute a single SQL statement in the database passing all parameters for all rows.


  • New : Integration plugin for Report Builder from Digital Metaphors. More info in this Youtube video.


  • New : Support for Android 64-bit platform (Delphi 10.3.3 Rio).


  • Fixed : Error "Field is of unknown type" in blob fields when updating records using AutoApply.
  • Fixed : Correct handle of fields of type ftOraClob. Now they have the same behavior as ftMemo.
  • Fixed : AutoApply was not working when field names had spaces. If you were editing a record and modified a field which name had a space (like "Contact Name") and tried to Post the record using AutoApply, an error would be raised.


  • Improved : Optimizations have been implemented, performance has been improved, especially when retrieving big amount of data and/or executing many statements that use many query parameters each.
  • Fixed : Previous version had broken compatibility with NexusDB integration, it's now fixed.
  • Fixed : A SQL syntax error were being raised when using AutoApply and more than one field were modified by the dataset.


  • New : TRemoteDBDatabase.ClientId property allows identifying clients in server.
  • New : TMS RemoteDB VCL Server Wizard makes it easy to create a new RemoteDB server application using design-time components.
  • New : Server-side events OnDatabaseCreate, OnDatabaseDestroy, BeforeStatement and AfterStatement. Data is provided in IDatabaseInfo and IStatementInfo with full information about the database connections and statements being executed.
  • New : Automatic data modification using TXDataset properties: AutoApply and KeyFields. Allow for automatic data modification by executing UPDATE, INSERT and DELETE SQL statements.
  • New : Administration API for retrieving server status (database connections including last accessed time, client id, etc.) and dropping database connections.


  • Fixed : Basic authentication was being enforced even when UserName and Password properties were empty strings.


  • New : TRemoteDBServer component provides design-time support to create server-side RemoteDB server.
  • Improved : RemoteDB simple demo updated to use the new TRemoteDBServer component.


  • Improved : Increased performance when using TGenericDatabase and executing SQL statements (non-SELECT).
  • Fixed : Error when using SQL syntax with double colon, e.g. PostgreSQL type cast - ::varchar(20).


  • Fixed : TXDataset was creating invalid parameters in some situations, for example in stored procedures with code like A := B.


  • Improved : Exception raised by the client is now ERemoteDBRequestException and includes the status code of the HTTP response.


  • New : TRemoteDBDatabase.OnHttpClientCreate event.
  • New : TRemoteDBDatabase.BeforeConnect and AfterConnect events.
  • Improved : TXDataset.Execute function now returns the number of rows affected by the operation.


  • New : TXDataset.ParamByName method.


  • New : TRemoteDBDatabase.OnRequestSending property.


  • Improved : RemoteDB IDBStatement now implements IDBDatasetStatement
  • Fixed : AV when setting TXDataset.Database property to a TGenericDatabase without having is Connection property set.


  • New : Option for custom proxy configuration for Windows clients or automatic proxy detection on Windows 8.1 and later
  • New : Delphi 10.2 Tokyo Support


  • Fixed : Memo parameter values not being sent correctly when using TDatasetProvider
  • Fixed : Index out of bounds when using TXDataset as a dataset provider and dbGo (ADO) at RemoteDB server side


  • New : Support for IProviderSupport allows using RemoteDB dataset (TXDataset) as a dataset provider - for example, in a setup using TClientDataset + TDatasetProvider + TXDataset


  • New : Delphi 10.1 Berlin support


  • New : Design-time wizard to create new RemoteDB Server with a few clicks
  • Fixed : Error when executing SQL statements with string literals containing quotes or double quotes.


  • New : Delphi 10 Seattle support


  • Fixed : Setting TRemoteDBDatabase.Connected to true at design-time was causing error at runtime


  • New : Support for Delphi XE8


  • Fixed : Client sending wrong data in memo fields with empty strings


  • Improved : Installer


  • New : TGenericDatabase component allows using TXDataset to connect to database servers directly in old client-server style
  • New : Support for Advantage Database Server
  • Improved : Server database objects lifetime: now objects expire right after timeout period has passed
  • Improved : Client transactions now can get longer than timeout of server db objects, RemoteDB keeps server-side objects alive automatically
  • Fixed : Wrong initial values when inserting a record using TXDataset in Delphi XE4 and up
  • Fixed : Sporadic "CoInitialize not called" error in RemoteDB demo
  • Fixed : Server issues when queries caused infinite deadlocks
  • Fixed : Error with long-running queries that take longer than timeout of server db objects


  • New : Added Delphi XE7 support


  • New : TXDataset.Unidirectional property improves memory usage and performance when using dataset in forward-only (unidirectional) mode.
  • New : TRemoteDBDatabase.Timeout property allows specifying lifetime of inactive database connections on server side.
  • Improved : Server now returns a better error message if a transaction commit/rollback request fails.
  • Fixed : Server instability in rare situations when connection/disconnection to database at server side raised errors.
  • Fixed : Error when executing data modification SQL statements (Insert, Delete, Update) using Open method instead of Execute, when using SQL-Direct and some other specific components.

for Delphi XE2, XE3, XE4, XE5, XE6, XE7, XE8, 10 Seattle, 10.1 Berlin, 10.2 Tokyo, 10.3 Rio (Prof/Enterprise/Architect)

View licensing FAQ
  • License for commercial use: Single developer license, Small team license, Site license
  • Includes full source code
  • Free 1 year updates and new releases
  • After 1 year, a 70% discount renewal is offered for a one year extension (offer valid for 30 days)
  • Free priority support through email and forum

Single developer license

license for 1 developer € 395

order now
add to cart

Small team license

license for 2 developers € 595

order now
add to cart

Site license

unlimited developers in the company € 1355

order now
add to cart

CreditCards and PayPal Accepted

This product is also available in the following bundle(s):