DbSchema Database Designer

DbSchema 8 Release Notes

Publish on DbSchema Blog >>>

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.

Free Large File CSV Editor

Report and Application Designer

The DbSchema Reports was renamed to Analytic Applications. The designer was improved.
Now it is more easy to create charts.

Analytic Applications

New Look

We improved our default theme.

New 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.

Reverse Engineer Using DDL

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.

Zoom and pan HTML5 database documentation

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.

Detect 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.

Save 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

Connection 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.

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.

Settings

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

Settings

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.

Chooose Logical Design in Welcome Pane

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.

Relation Type

Inside the layout, you can create different shapes and arrows.

Shapes and Arrwos

From the menu, you can generate the physical model from the logical model.

Generate Physical 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.

Logical Model Converters

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.

MySql Reverse Engineer using SHOW CREATE TABLE

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.

SQL scripts parser

Then you can use DbSchema to document the model, edit it, create new layouts, or deploy it on different databases.

Sample Layout

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.

Markdown Database Documentation

Reports Designer

We redesigned the reports designer.

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.

Reports Designer

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.

Validation rules

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.

MongoDB Diagram

Please write us about MongoDB features.

Add SqlServer Fulltext Index.

SqlServer Full Text 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.

Swnoflake Role

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.

Analyst BI

This is a sample database report:

Database Report

A full tutorial is available here.

Improve SQL editor color scheme and rendering

The color schemes has changed.

SQL Editor

Support MonetDB

DbSchema can connect, reverse engineer schema and manage MonetDB databases.

MonetDB Database Designer

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.

DbSchema Free

Improve the Relational Data Editor

Better editing functionalities, improve menu, table header more compact.

Relational Data Editor

Integrate ThoughtSpot Database

This is a new database that we added to our list.

ThoughtSpot Designer

Trebuchet MS Diagram Font

Now we use Trebuchet MS font for diagrams.

Diagram Font

HTML5 Documentation

Add option to generate documentation images in separate SVG files.

HTML5 Database Documentation

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.

Connection Properties

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.

Forms and Reports

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.

Connection Dialog

PDF Documentation

Generating PDF documentation can read the comments as mouse over tooltips. Now the tooltips are showing faster and stable.

PDF Comments

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.

PostgreSQL Deferrable Constraints

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.

Parse SQL Scripts

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 Views

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

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.

Synchronization Settings

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.

Code Samples

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.

DbSchema Model

Editable JDBC URL

Connection dialog, the JDBC URL is editable directly in the first tab.

Connection Dialog

Documentation Improvements

HTML5 and PDF documentation omit description column if empty. Also improve documentation TOC.

Documentation Annotations

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.

Documentation Annotations

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

Visually Manage Databases using DbSchema

DbSchema is a databases client and visual designer. DbSchema has a free Community Edition, which can be downloaded here.
DbSchema main features include:

DbSchema Designer alt >

Interactive Diagrams

Design tables, column and foreign keys directly in diagrams, by double-clicking them. Changes will be saved to the design model and, if DbSchema is connected to the database also into the database. More.


Connection Dialog alt >

Simple Connection Dialog

Choose the database location, the user and password, and simply get connected. Choose 'Edit Manually' into the JDBC URL combo to enter a custom URL. More.


Relational Data Explorer alt >

Relational Data Explorer

Explore data from multiple tables simultaneously, using foreign keys or virtual foreign keys. Double-click cells to edit the data. More.


Query Builder alt >

Query Builder

Create SQL Queries featuring JOINS, GROUP BY, ORDER BY just using the mouse. More.


SQL Query Editor alt >

SQL Query Editor

Edit and execute SQL Queries. The editor is autocompletion-enabled. More.


Schema Synchronization alt >

Design Schema in Team & Schema Deployment

DbSchema is using the design model, a copy of the schema structure, independent of the database.
The design model can be saved to file and shared in a team.
Connecting to another database you may compare the design model with the database, commit the differences or merge them in the design model. More.


Dark Theme alt >

Dark Theme

Configurable styles & dark theme. More.


Many features are available in the free Community edition.
The Pro edition adds capabilities to save the design to the model file, design schema in team and deploy the schema on multiple databases.


DbSchema can be downloaded for free. No registration is required.