5. Introduction

The main pgModeler feature, the database modeling, would be almost useless if the export, import, and diff don't exist. This is because often the user who is working on a database model needs to do real tests of the structure being created by exporting the model to a server in order to make the needed validations. In other moments, the user needs to generate a graphical representation from an existent database that was not generated from a model so reverse engineering will be used in order to achieve the desired result.

Now, in order to keep any changes synchronized between the model and the database, or even between two databases, the user will need to run the diff process which will analyze them pointing out any divergences and generating the needed code to keep the involved entities almost the same. For those reasons, these features are of great importance in the modeling process as a whole.

Since some of these operations are “invasive” to the database, to be able to execute them without any issues it is needed that at least one connection is configured with a privileged user. A privileged user is not necessarily the superuser but a role that is capable of creating a database (for the export process) and with privileges to read the system catalogs (in case of import and diff). Refer to the previous chapter, section Connections settings, to see how to configure connections in pgModeler.

In order to open the export dialog, use the menu File > Export or just click the icon located on the left toolbar at the main window. In the same way, the import dialog can be activated through the menu File > Import or by clicking the icon . Finally, to trigger the diff dialog use the File > Diff or click the icon .


Jun 15, 2023 at 10:28