DbSchema 8 Release Notes
DbSchema 8.5.0
CSV Editor for Large Files
DbSchema include now a CSV Editor for large files. The editor can open files up to 500 million of records, depending on the record size.
Report and Application Designer
The DbSchema Reports was renamed to Analytic Applications. The designer was improved.
Now it is easier to create charts.
New Look
We improved our default theme.
Other improvements
- Feature: Snowflake connection using private key
- Feature: Implement functions, procedures and trigger comments into the database
- Feature: Right-click copy to clipboard message dialogs
- Feature: Oracle use GENERATED AS IDENTITY
- Feature: Groovy scripts rename com.wisecoders.dbs.diagram.model.Location to com.wisecoders.dbs.diagram.model.Point
- Bug: MongoDb rename collections and objects
- Bug: MongoDb use ‘int’ instead of ‘integer’ data type
- Bug: Query Builder exclude table won’t remove it from the generated SQL
- Bug: HTML5 documentation fix special character
- Bug: Fix unreadable red error message in result pane
- Bug: Improve connectivity layer, for better code and correctly closing the SQL dead statements
- Bug: Fixes in SQL Parser
- Bug: Snowflake support varchar() without length
- Bug: Vertica reverse engineer table and column comments
DbSchema 8.4.5
Reverse Engineer using DDL
This feature allows reverse-engineering the schema by parsing the CREATE TABLE DDL statements.
This is available now for MySql, MariaDB, Oracle, Redshift, Snowflake, Sqlite, and Vertica.
Enable this option from the Database Selection Dialog, shown before the Connection Dialog.
The same option can be enabled from ‘Model /Settings / Reverse Engineer’.
Pan and Zoom HTML5 Database Documentation
Zoom the HTML5 diagram vector image using CTRL + mouse wheel and pan (scroll ) by dragging the image using the right mouse button.
Detect Virtual Foreign Keys
When the database does not contain foreign keys, DbSchema can create virtual foreign keys. The virtual foreign keys will be saved in the model file, without creating them in the database.
In the Layout menu, you can find a dialog that will automatically detect virtual foreign keys.
There are two methods to detect them:
- By matching columns by names
- By parsing the SQL statements from the database history cache for SELECT statements with JOINS. The joined columns are used for creating virtual foreign keys.
Matching columns by name is usually searching first for the primary keys, and trying to find other columns and data types in other tables,
with the same name.
Databases like Snowflake have no Primary Keys. In this case, you can disable the ‘Referred Column is Primary Key’ checkbox.
Save Results as JSON
In the SQL Editor Result Pane, there is an option to save the result as JSON.
Other Improvements
- Feature: HTML5 generates documentation using Groovy has one more method in Layout.
- Feature: Improve PDF documentation
- Feature: Introduce wizard in Reports sub-tables
- Feature: The format used in browse and SQL results for numbers is configurable from Model / Settings / DbSchema General
- Feature: Upgrade to JavaFX 17
- Feature: Upgrade MongoDB JDBC Driver libraries
- Bug: Disable column reordering for Sqlite, which creates issues in metatable.
- Bug: Fix issue when refreshing the model and foreign key should be dropped in the database.
- Bug: SQL text indentation issue
DbSchema 8.4.4
Feature: Improve connection dialog
The database selection is done in a separate dialog
In the next dialog we also have a separate combobox for the JDBC Driver and the JDBC URL template.
From the JDBC template combo you can choose also to edit the JDBC URL.
In the next release we will continue to improve the connection dialog.
Feature: Support for Databricks
Databricks is now officially supported in DbSchema.
Feature: Add setting ‘Commit after SELECT’ in Model / Settings / Transaction. Postgres uses AutoCommit off, and this enabled.
We do ‘SET AUTOCOMMIT OFF’ in DbSchema, in order to let users explicit commit the transactions.
If you do, for example, an update and the number of modified rows is higher than expected, you can rollback the transaction.
For Postgres and MySql this may create issues, as SELECT statements are also opening a transaction, which will lock the table.
Therefore, we introduced the ‘Commit after SELECT’ which automatically commits the transaction after an SELECT statement.
Feature: Execute Reports as stand-alone Webserver
Database reports are saved as stand-alone running files .dbsr. They can be started using DbSchema -r
Feature: Improve HTML5 documentation look
We also have upgraded the bootstrap libraries, used in the documentation and Reports
Further Improvements
- Feature: Renew the Windows Code Sign certificate. This caused a decrease of reputation in Windows Defender. Is a matter of time to get the reputation back.
- Bug Fix: Refresh Schema from DB would reverse engineer all tables even if only few were selected
- Bug Fix: Improve the database reports
DbSchema 8.4.3
Introduce Logical Design
DbSchema can do logical design.
You can create entities with attributes and relations, which will map to tables, columns, and foreign keys in the physical model.
The relations can have a logical type.
Inside the layout, you can create different shapes and arrows.
From the menu, you can generate the physical model from the logical model.
Use different converters to map the data types from logical to physical names,
convert the table or column names and the column default values.
The logical design feature is released as a beta feature. We are happy to get feedback from you.
MySql Reverse Engineer the Schema Using SHOW CREATE TABLE
This feature has to be enabled from the Model / Settings / Reverse Engineer dialog.
During reverse engineer, this will deduce the table structure by parsing the output of the SHOW CREATE TABLE command.
This feature is more precise and will load more table parameters compared to the traditional reverse engineer from the database metatables.
For now, this feature has to be enabled manually. Later we will make it the default setting.
Other Features
- Postgres comment on sequences
- Improve SQL auto-completion
- MongoDB reverse engineer relations using DBRef
- Add prepend/append scripts to the schema
- Improvements in data generator and groovy patterns
Bug Fixes
- Hive drop column issue
- Include all tables by foreign key issue
- Crash saving project file when closing DbSchema with ALT-F4
- Improve Views and User Data Type support
- Enable the save project on table color or options change
- Snowflake autoincrement
- Editor tabs cannot be closed or selected
DbSchema 8.4.2
New SQL Parser
DbSchema can deduce the schema structure and diagrams by parsing SQL scripts from the file.
Then you can use DbSchema to document the model, edit it, create new layouts, or deploy it on different databases.
DbSchema 8.4.2 has a new SQL Parser, which is much more flexible. It can parse all database scripts, including Snowflake, SqlServer, Postgres, MySql, Oracle, with partition indexes, sorting, and clustering specifications.
Please write us if you find any statement which is not correctly parsed.
Markdown Database Documentation
DbSchema can export now documentation in Markdown format.
Reports Designer
We redesigned the reports designer.
You have to press the Design button to edit the report. Then you can click any cell to edit or create a component.
We got less feedback about the reports designer, please write us about your experience with it! Together we can make it a very powerful tool.
Other Features
- Feature: Prepare code for implementing Logical Design using DbSchema
- Feature: Sqlite supports renaming columns
- Feature: Hive - fix add & drop column, cluster, partition and skew keys
- Bug: MySql & MariaDB datetime and timestamp precision
- Bug: Reverse engineer Postgres functional columns.
- Bug: Export data on large tables for more than 10k rows.
- Bug: Postgres drop column cascade
- Bug: Fix Elasticsearch JDBC URL
DbSchema 8.4.1
Implement Mongodb Validation Rules.
Validation rules are used to ensure a collection has a given structure.
All inserts and updates into a collection should match the validation rule.
When creating a new collection or field, DbSchema will also implement the validation rule.
Reverse engineering the schema will deduce the schema from the validation rule, if a validation rule is available.
Please write us about MongoDB features.
Add SqlServer Fulltext Index.
Include role in Snowflake connection
Sometimes, connecting to Snowflake you will see no tables in DbSchema.
In this case you may need to set a role in the connection.
Other Features
- Feature: Use System Proxies by default
- Feature: Include role in Snowflake connection
- Feature: Improve dark theme
- Bug: SqlServer comments in multiple databases
- Bug: SqlServer identity synchronization issue
DbSchema 8.4.0
- Feature Support Google Cloud Spanner
- Feature Snowflake reverse engineer faster
- Feature Hive partitioning, clustering, sorting
- Feature Better look on large monitors
- Feature Auto-place only on a group
- Feature Improve diagram look
- Feature Rename Data Analyst to Reports
- Bug Improve SQL Result Pane and Data Explorer result column size
- Bug Issue when renaming SQL Editors
- Bug Zoom using mouse wheel issue on Linux
- Bug MongoDb insertMany() didn’t work fine. Fix require to drop the driver. Reconnecting will automatically download the latest driver.
- Bug Help dialog didn’t work properly
- Bug Result pane column width
DbSchema 8.3.5
- Feature Sample project will be downloaded from the website
- Feature Support multiple SSH Tunnels
- Feature Sqlite explain plan
- Feature Upgrade Redshift JDBC driver
- Feature Improve Quick Tour
- Feature Integrate Elasticsearch
- Feature PostgreSQL support partitions
- Feature Snowflake reverse engineer unique constraints
- Feature Better SQL parsing thanks to new JSqlParser libraries
- Bug Better rendering on Windows monitors with scaling enabled ( by notebooks is 125% default )
- Bug Improvements for Windows with scaling 125%
- Bug Download JDBC drivers from web directly when showing the connection dialog.
- Bug Sqlite reverse engineer foreign keys
- Bug Dropping column won’t drop foreign keys using this column
- Bug Issue with Groovy libraries after upgrading DbSchema
- Bug Sqlite reverse engineer issue
- Bug Change column name letter case
DbSchema 8.3.4
Launch DbSchema Analyst BI
Analyst BI is a tool for creating charts and database reports.
This is a sample database report:
A full tutorial is available here.
Improve SQL editor color scheme and rendering
The color schemes has changed.
Support MonetDB
DbSchema can connect, reverse engineer schema and manage MonetDB databases.
Bug in Relational Data Editor
Fix problem with resizing columns in Relational Data Editor.
Improve space in the Synchronization dialog.
Improve space in the Synchronization dialog.
DbSchema 8.3.3
Launch DbSchema Community Version
We created two DbSchema Editions: Community and Pro.
There is a single download package, which will start the Free edition after download.
From the menu you can choose to evaluate the Pro Edition.
Improve the Relational Data Editor
Better editing functionalities, improve menu, table header more compact.
Integrate ThoughtSpot Database
This is a new database that we added to our list.
Trebuchet MS Diagram Font
Now we use Trebuchet MS font for diagrams.
HTML5 Documentation
Add option to generate documentation images in separate SVG files.
Upgrade OpenJDK and OpenJFX Libraries
Upgrade to OpenJDK 15 and OpenJFX 15.0.1
Sqlite autoincrement
Sqlite reverse engineer column autoincrement
Connection Properties. Support Oracle Kerberos Authentication
We added a field to the Connection Dialog for setting connection properties.
This is used for example by Oracle Kerberos Authentication.
Redesign Forms and Reports
The Forms and Reports designer will work directly over the generated form or report.
We are working to add charts to the designer.
In the next versions we will create a powerful BI tools out of it.
Bug Fixes
- Generating PDF with TOC fix error
- SSH Tunnel conflict with local running database.
- Relational Data Editor when foreign key is over multiple columns.
- Data loader on large files may wrong evaluate the MANDATORY (not null) for new tables. Therefore we create all columns as nullable.
- SQL Editor issues with Japanese text
- Column dialog default value automatic add comma bug
DbSchema 8.3.2
Improve connection dialog
Now can choose to build URL automatic or manual.
PDF Documentation
Generating PDF documentation can read the comments as mouse over tooltips. Now the tooltips are showing faster and stable.
Integrate Azure Synapse
Azure Synapse is available as a distinct entry in the database list.
Integrate TimescaleDB
Table dialog has an option field where you can add the
statement for creating the hyper table.
Postgres Constraints DEFERRABLE
DbSchema does correctly reverse engineer ‘DEFERRABLE’ and ‘INITIALLY DEFERRED’ constraints specification.
SQL Parser from SELECT
For example, in this image DbSchema can deduce the schema from the SELECT statement.
This feature is accessible in the Welcome pane by choosing ‘Open SQL file and deduce schema’ or
from the SQL editor like here.
The automation scripts which were accessing the parser should be adapted to the new API.
Support for MongoDb Views
DbSchema does reverse engineer and can also create Views for MongoDB.
MongoDB Virtual Foreign Relations
They work now also for referring fields from sub-documents. The relational data editor can explore data from both collections.
Improve Dark Theme
Sync Settings Dialog
With DDL pre/post scripts and sync filter. Pre and post scripts are migrated from local settings to the project.
Code Samples Dialog
The dialog is accessible from the SQL Editor menu and Synchronization Settings Dialog.
It shows code samples which can be used for DbSchema automations, synchronization filter or forms and reports.
Improve Data Export Task
The Data Export Task was improved for better compatibility with all databases.
Bug Fixes
- Save the model file in the same folder as the one where it has been open
- Issue when generating PDF documentation
- Postgres reverse engineer timestamp
- Postgres reverse engineer identity columns
DbSchema 8.3.1
DbSchema ‘Model’
Rename ‘DbSchema Project’ to DbSchema Model. Use this all over the menus and website.
Editable JDBC URL
Connection dialog, the JDBC URL is editable directly in the first tab.
Documentation Improvements
HTML5 and PDF documentation omit description column if empty. Also improve documentation TOC.
Data Importer & Loader
Data Importer use serialization for XLSX files - avoid memory issues for large input files.
Use batches for Data Importer and Data Generator for faster data insert.
Synchronization Dialog
Improve Schema Synchronization dialog.
Editable Schema Catalog
Schema catalog is editable in the Schema dialog
Unique Keys / Indexes
In Index Dialog added checkbox to implement unique indexes via constraint (ALTER TABLE ADD CONSTRAINT) or index (CREATE UNIQUE INDEX). This should solve also some issues when dropping unique indexes.
MongoDb Data Generator
MongoDB Data Generator and Data importer use batches. New MongoDb driver deployed.
Improve diagram font size
Make SQL text readable by increasing SQL Editor font size.
Bug Fixes
- Issues with Unique index and Unique Keys. Synchronization skips the differences between this two.
- Issue with SqlServer reverse engineer Foreign Keys.
- Oracle correct reverse engineer VARCHAR2(length CHAR).
- Postgres create view having ‘with(exp)’ failing.
- Synchronization dialog ‘Generate Script Button’ does not work by second click.
- Open large project files with many browse and query editors is opening all of the editors.
- Fix error dialog position. Sometimes they show on the very left side of the screen.
- Reverse engineer Postgres User-Defined Type as enum. The values were not quoted.
- Relational Data Editor edit enumeration columns.
Version 8.2.12 - Jul 3.07.2020
- Feature Improve MongoDb support for ISODate()
- Feature Improve reverse engineer selection dialog
- Feature Improve virtual foreign keys dialog
- Bug Fix flickering tooltip on icons
Version 8.2.11 - Jun 15.06.2020
- Bug Loose zoom when dragging new table in layout
- Bug Sqlite reverse engineer multiple foreign keys between two tables
- Bug Issue in schema selection dialog
- Bug Relational Data Editor edit date time bug fix
- Feature Project / Settings / Export Schema Script - add option for pre and post scripts to be attached to exported schema script
- Feature Support reading comments by reverse engineer from the SQL files
- Feature Integrate NuoDb
- Feature SQL result pane status and error combo use Monospaced font
- Feature Option to compare two schemas
- Feature Improve dark theme
- Feature Redshift reverse engineer diststyle
- Feature Improve PDF documentation
- Feature Customizable UI Scaling added in Project / Appearance
Version 8.2.10 - Mai 6.05.2020
- Feature Review Sqlite data types
- Feature Postgres support for types and enums
- Feature Postgres reverse engineer indexe WHERE clause
- Feature Improve Find Virtual Foreign Keys dialog to support multiple databasese
- Feature Vertica improvements
- Feature Improve MongoDb diagram auto-arrange
- Feature New Driver for MongoDb
- Feature Upgrade SqlServer driver to 8.2.2
- Feature Improve Pdf documentation look
- Feature Upgrade to OpenJdk 14 and OpenJFX 14
- Feature Move fast view table data ( CTLR-SHIFT-click table header ) to dialog
- Bug Sqlserver reverse engineer only column collations which are different from the database
- Bug Improve view reverse engineer
- Bug Improve column options dialog
- Bug Data Importer with Excel empty cells
- Bug Postgres drop unique index statement
- Bug Insert data in Relational Data Editor
- Bug Fix for ZoomIn shortcut on Mac
- Bug Fix PDF documenation with Cyrilic text
- Bug Fix show print page borders in combination with zoom
Version 8.2.9 - Mar 27.03.2020
- Feature Column collation and charset. Configurable in synchronization using Project Settings / RDBMS Settings / Sync column options
- Feature Intoroduce JDBC driver for CSV files. Now listed as ‘CSVFiles’ database - directly execute SQL over CSV files.
- Feature Support Firebird domains
- Feature Improve dark theme
- Feature Support for Postgres Arrays in Relational Data Editor
- Feature Snowflake fast list databases
- Feature Improve Contact Support dialog
- Bug MonogoDb insert document
- Bug MySql reverse engineer procedures
- Bug Fix rendering issues in SQL Editor result pane
Version 8.2.8 - Mar 2.03.2020
- Feature Include Apache Ignite Database
- Feature Sybase support multiple databases
- Feature Add description dialog for procedures and functions. Available in right-click pop-up.
- Feature Redesign Forms and Reports
- Feature Reverse engineer collation for PostgreSQL and SqlServer
- Bug Improve synchronization
- Bug Fix threading in schema reverse engineer
- Bug Fix $and statements in MongoDb driver
- Bug Rename index bug crashes script generation
- Bug PostgreSQL reverse engineer indexes with ‘order asc’
- Bug postgreSQL 9.x and before reverse engineer identity columns to ‘nextval’
Version 8.2.7 - Jan 28.01.2020
- Feature Data generator edit dialog cell notification to press ENTER
- Feature Improve error dialog
- Feature New logic for Views. We store the complete view definition, including CREATE VIEW…, with tags for view and schema name.
- Feature Improve Architect Look & Feel
- Bug SQL Editor / Run Script for SqlServer
- Bug Cassandra and MongoDb reverse engineer with the latest JDBC drivers
- Bug SQL Editor error highlight for Redshift
- Bug Layout tooltip moved position after 1 sec
- Bug Copy/Paste in SQL Editor
- Bug Exasol drop functions
Version 8.2.6 - Jan 13.01.2020
- Bug Fix SqlServer schema synchronization issues after adding support for multiple databases. See also the Connection Dialog/Others/Edit Schema Mapping
- Bug Fix export materialized views in Schema / Generate SQL Script
- Bug Fix Mongodb db.collection.count()
- Bug Fix bug in Data Importer for importing tab separated CSV files
- Bug Fix SqlServer add comments on columns
- Feature Improve Welcome screen
- Feature Improve Find Virtual Foreign Keys dialog
- Feature Add table create computed column to Table Dialog.
Version 8.2.5 - Dec 18.12.2019
- Feature Add Apple Notarization required by Mac OS Catalina
- Feature Improvements in SQL Editor / Run Script
- Feature Compatibility improvements for Exasol
- Bug Issue in data type options and saving edited data types from Project / Settings
Bug(Minor): Copy /Paste in SQL Editor find/replace bar
Bug(Major): Closing Frame threading issue may lock the application lock
Version 8.2.4 - Nov 25.11.2019
- Feature Snowflake clustering key
- Feature Exasol improvements
- Feature Improve virtual foreign key finder dialog
- Feature SqlServer show initially only ‘dbo’ catalogs
- Bug Fixes in MongoDb JDBC driver
- Bug Blocking window on Synchronization SQL dialog
- Bug Foreign keys not being saved correctly
Version 8.2.3 - Nov 4.11.2019
- Feature Improve column, table and index options
- Feature Support SqlServer multi-database
- Bug Fix Exasol partition and distribution keys
- Bug Fix locking when ‘show page borders’ was enabled and computer had no configured printer
- Bug For SqlServer show correctly the schemas, triggers and procedures
Version 8.2.0 - Oct 4.10.2019
Feature Complete migration of DbSchema to OpenJfx and OpenJDK.
First version on the market standard technologies and migration to a stable product.Feature Add Postgres options for table, column and indexes: collation, tablespaceName and other.
Feature Update SqlServer and AzureSql driver to