TMS Data Modeler
The ultimate tool for modeling databases with an easy and simple interface.
v3.3.6 (September 19, 2019)Version history
- Improved : Support for XMLType data type in Oracle.
- Fixed : Before generating DROP COLUMN statements in SQL Server, it's now generating DROP CONSTRAINT statements associated to the column.
- Fixed : "More colors..." option was not working for fill and text color of diagram objects.
- Improved : Added support for range types in PostgreSQL (daterange, int4range, etc.)
- Fixed : Firebird 3 did not include data type "Numeric (Identity)"
- New : PostgreSQL 11 support, avoiding the error "p.proisagg does not exist. perhaps you meant to reference the column p.prolang"
- Improved : Arguments for OnClassGenerated event now includes references to Table and Sequence attribute. Used in the example Adding Schema Name to Table Attribute.
- Fixed : Performing project checking in ElevateDB projects now reports wrong field size for char/binary fields with size higher than 1024.
- New : "Scripting" button in Tools tab in ribbon, opens a full scripting IDE for low-level and advanced manipulation of the existing data dictionary.
- Improved : List of tables in the Generate Script dialog is now sorted.
- Fixed : PostgreSQL database importer was not correctly retrieving foreign keys with same name in different tables.
- Fixed : Fields in primary keys were being nullable when using nullable domains. It broke backward compatibility, fields in primary keys should always be not null.
- Improved : There is now a check box "Specific" for the "Not null" field. When the field has a domain associated to it, this new check box allows explicitly control if the NOT NULL flag should come from domain or you would want to ignore the domain setting and use a specific value for the field.
- Fixed : Foreign keys with multiple fields (relationships with composite keys) not being correctly imported from Oracle databases.
- Fixed : Project window maximizing automatically in some situations.
- Fixed : Null/NotNull checkbox was disabled for fields associated with logical domains.
- Fixed : SQL Server ALTER TABLE ADD COLUMN statement was not including constraint name for default values.
- Fixed : Firebird behavior with domains: size, not null and constraint was not being retrieved from domain.
- New : Support for Interbase 2017
- Fixed : Firebird/Interbase connection was not working in some situations
- Fixed : Error when importing MySQL 8 databases (Table 'mysql.proc' doesn't exist)
- Fixed : Data Modeler version information in VCL Subscription Manager showing incorrect after automatic update.
- Fixed : SQLite database import was wrongly considering SQLite "TEXT" datatype as a (char) blob. Now it's considered as regular string (VARCHAR).
- Fixed : Importing SQLite tables with field names starting with number was raising error.
- New : Database metadata objects available in customization script events.
- Fixed : Connecting to MS SQL Server LocalDB was raising an error "SQL Server does not exist or access is denied"
- Fixed : Exporting descriptions with single quotes to Aurelius classes was generating invalid Pascal code. The single quotes are now duplicated to form valid Pascal strings.
- New : OnUnitGenerated event in TMS Aurelius Export customization script.
- Improved : Table list in Mappings Tab of TMS Aurelius Export Dialog is now sorted in alphabetical order.
- Improved : Added OID type for PostgreSQL databases.
- New : Source code preview in Aurelius export.
- New : Option to export TMS Aurelius classes to several different units.
- New : Modern User Interface.
- New : Model names in TMS Aurelius export.
- New : Customization scripts in TMS Aurelius export.
- Improved : Documentation has received a significant review.
- Fixed : Checkboxes for defining specific default and check constraint were not being enabled correctly.
- Fixed : "Access Violation" error when clicking Exit or double click menu button.
- Fixed : SQL Server primary key constraint ignoring field order (asc/desc)
- Improved : Register entities option checked by default (Aurelius Export)
- Improved : Installers for trial and registered versions now signed to minimize Windows warnings and false antivirus alerts
- Improved : AllButRemove is default option for association cascade type (Aurelius Export)
- Fixed : Data Modeler not appearing as "installed" in TMS Subscription Manager
- New : Firebird 3 support
- Fixed : When generating Aurelius classes, constructor implementation is now calling inherited constructor
- Improved : PostgreSQL support for data types JSON and JSONB
- New : Option to explicitly define the type of the field/property when exporting model to Aurelius classes
- New : Support for PostgresSQL
- New : Zoom tab in ribbon makes it easier to define diagram zoom, zoom to 100% or zoom to fit all
- New : Export to Aurelius allows defining cascade types for associations
- New : Advanced connection options for ElevateDB databases
- Improved : Trigger editor now expands to the whole window area making it easier to write trigger code
- Fixed : Several errors reported by automatic error report (mostly Access Violations in some specific situations)
- New : Diagram navigator allows overview of entire diagram and easy navigation/zooming using navigation cursor
- Improved : Automatic selection of last used connection when importing database structure
- Fixed : Timestamp fields correctly imported from Oracle databases
- Fixed : Rare AV when generating Aurelius classes unit
- Fixed : Oracle reverse engineering was retrieving wrong size for NVarchar2 fields
- Fixed : MySQL reverse engineering was not correctly importing multi-column foreign keys
- Fixed : Import SQLite tables with /*..*/ comments in DDL command
- Fixed : ElevateDB reverse engineering was retriving foreign keys incorrectly when composed of more than one field
- New : Support for ElevateDB Unicode Server (in addition to existing support to ANSI servers)
- Improved : Support for Windows 8
- Improved : ElevateDB server name configuration can accept both IP address and host name
- Improved : Connection settings in NexusDB reverse engineering now displays available servers automatically
- Fixed : Incorrect NexusDB reverse engineering when connecting to 3.10 and 3.11 databases using internal server
- New : TMS Aurelius Export: option to define Sequence attribute for each entity class
- New : Licensing tool which provides a much better, easier way to register Data Modeler
- New : Find toolbar button makes easy to find a table in diagram by name
- New : "Duplicate table" feature available in diagram toolbar button and popup menu in table list
- Improved : Id properties exported to TMS Aurelius are now read-write instead of read-only.
- Improved : Better error message when exporting to Aurelius source code fails due to file system error
- New : Support for TGuid properties and Guid/Uuid generators in Aurelius export
- New : Option to display relationship description/caption in diagram
- Improved : SQLite reverse engineering sets a default size for varchar and decimal data types, when not specified
- Improved : Firebird now differentiates unique indexes from unique constraints
- Improved : Clearer message when updating Data Modeler to avoid confusion with Windows/Data Modeler restart
- Improved : Better error message when trying to use unsupported versions of MySQL server
- Improved : Better detection of Firebird/Interbase database server version
- Fixed : Wrong Alter Table statement in Firebird databases (add non-nullable column)
- Fixed : When adding new trigger, syntax was incorrect for Firebird database
- Fixed : Uncommon error when importing Firebird databases (RDB$DESCRIPTION column unknown)
- Fixed : Script viewer window now being presented correctly in multi-monitor desktops
- Fixed : Multi-line descriptions now handled correctly when exporting to Aurelius classes
- Fixed : Issues with SQLite reverse engineering (incorrect SQL parsing)
- Fixed : Aurelius source generator now generates Int64 properties for database fields of type BIGINT and equivalents
- Fixed : Aurelius exporting foreign key fields that were part of primary key was incorrect when the property name was being changed manually by the user
- Fixed : All reproduceable automatic error reports up to release date
- Fixed : Access Violation in Aurelius source code generator (automatic report)
- New : Support for SQLite 3.7 databases
- New : Option for specifying dynamic properties in class when exporting to TMS Aurelius
- New : Aurelius export now has an option to singularize table names (convert plural table names into singular class names)
- Improved : Project check now checks if fields in a relationship have the same size, besides being of same type
- Improved : Hint for recent files in menu makes it easier to see full file name
- Improved : Better saving of form position and state (maximized/minimized)
- Fixed : Parent and child fields in relationship could have different data types in some cases (varchar with different sizes)
- Fixed : MySQL drop index and drop foreign key statements had incorrect syntax
- Fixed : Issue with ribbon menu when windows is set to use big-sized fonts
- Fixed : Internal issue with having duplicated id's for objects
- Fixed : Duplicated drop constraints in sql server when both default value and constraint default name were changed
- Fixed : Double data types were being imported incorrectly in MySQL
- Fixed : Automatic reports 0001187, 0001162, 0001238
- Fixed : 0001084 [Comparer] Firebird-Merge Function-Stored Procedure-No input parameters generate a header with an integer type but no variable name
- Fixed : 0001083 [Comparer] Firebird - Using Merge Function - Stored Procedure scripts Terminator missing
- Fixed : 0000748 [SQL Script] Check creation order of objects in SQL Script (firebird)
- New : Window to find a table in diagram using Ctrl+F
- New : New diagram popup menu options "All Keys and Indexes" in diagram context menu
- New : Import field descriptions from SQL Server
- New : Export classes to TMS Aurelius framework
- New : Diagram popup menu option to create relationship using selected table
- New : Automatically selects a child field when creating a new relationship if same field name and type as parent
- New : "Find in Diagram" popup menu option in table list makes it easy to find a table in the diagram
- New : "Find field..." option to search for fields in field grid in table editor. Can also use Ctrl+Shift+F
- Improved : Put close button on tabs
- Improved : Deleting a field causes grid flickering and scrolling
- Fixed : Dragging a table to a scrolled or zoomed diagram puts the table at wrong position
- New : Script generation and comparison for object comments (Firebird)
- New : Object comments imported from Firebird databases in reverse engineering
- Fixed : Minor bug fixes
- New : ElevateDB support added
- Fixed : Various smaller improvements & fixes
- New : Support for MS SQL Azure
- New : Check version of database server before perform reverse engineering
- Fixed : Window state not restored when main form is maximized
- New : Persistence of size and position of windows
- New : Option to set text colour on notes.
- New : Option "Select all" in diagram context menu.
- New : Option "Close all except this" in tabs context menu.
- New : Keyboard shortcuts and context options on interface.
- Improved : Resizing of controls in table editor.
- Fixed : Use of NULL/NOT NULL constraints in SQL script for computed columns (SQL Server).
- Fixed : Not null option in child field created automatically for a non-identifying relationship
- Fixed : Issues with suggestion of fields in Child Table when creating a relationship.
- Fixed : Issues with editing of domain fields.
- Fixed : Issues with editing of check constraint fields.
- Fixed : Issues in reverse engineering from MySQL databases.
- Fixed : Issue importing UTF8 defined fields from Firebird databases.
TMS Data Modeler
View licensing FAQ
- License for commercial use
- Free priority support through email and forum