pgModeler simplifies database design by supporting the creation of both basic and advanced objects. Whether you're defining a simple column or working with complex elements like user-defined languages, functions, operators, and more, the tool provides intuitive, easy-to-use forms to streamline the process.
pgModeler automatically generates all necessary columns and constraints when users link tables using relationships. This feature eliminates repetitive tasks and significantly boosts productivity.
pgModeler offers versatile export options, allowing users to save models as SQL scripts, PNG images, SVG files, or data dictionaries in HTML format. Additionally, models can be deployed directly to a PostgreSQL server for seamless integration.
Through its reverse engineering feature, pgModeler can generate accurate and reliable models from existing databases, making it easier to understand and modify complex database structures.
As an open-source tool, pgModeler provides full access to its source code and the contents of any generated file. All files created by pgModeler are XML-based, ensuring compatibility and allowing users to easily edit or process them using third-party software.
In the event of an unexpected quit, users won't lose their work—pgModeler automatically saves temporary models with the most recent changes and restores them on the next startup, ensuring peace of mind and continuity.
To prevent broken references or rule violations during the design phase or when exporting models to PostgreSQL, pgModeler performs regular validations. This feature ensures the creation of highly accurate, error-free database models.
With a comprehensive set of configuration options, pgModeler offers users the flexibility to customize nearly every aspect of its functionality, tailoring the tool to their specific needs.
Using the diff feature, users can generate SQL scripts by comparing a model to a database or two databases to each other. These scripts contain all the necessary commands to seamlessly synchronize the involved entities.
pgModeler includes a straightforward yet powerful database management module, enabling users to execute SQL commands, explore database objects, and manage data with ease.
The CLI provides a robust set of operations that can be executed without the need for the GUI. Key features include the export process, which can be integrated into third-party scripts to automate deployment workflows, and the model file fix, which repairs a model's structure to restore its loadability (this feature is also available in the GUI).
The SSH tunnel adds a layer of security even in the absence of an SSL certificate when connecting to a remote PostgreSQL server. pgModeler offers a convenient way to configure and launch SSH tunnels quickly and efficiently.
The split database model file format (.sdbm) is designed to enhance version control for model files by storing the XML code of each object in separate files. This approach makes it easier to track changes made to individual database objects, particularly when multiple team members collaborate on the same model.
This feature saves all details about the currently open SQL execution tabs, including typed commands and browsed databases, into a dedicated configuration file. When pgModeler is restarted, users can restore their previous session with a single click, eliminating the need to manually browse databases or reload saved commands into the SQL execution widget.
This feature allows developers to test their queries using variables, which are dynamically replaced with actual values at the moment of execution, streamlining the query testing process.
pgModeler provides a user-friendly interface for executing commands like pg_dump, pg_dumpall, pg_restore, and psql. This feature was designed with users who are less comfortable with command-line tools in mind, enabling them to dump and restore databases effortlessly without ever leaving pgModeler's graphical interface.
This feature enables the creation of constraints, indexes, and relationships directly from the objects selected in the design view, eliminating the need to open editing forms or fill out multiple fields, speeding up the database design process.
This feature allows users to search for specific objects and open their corresponding editing dialogs without the need for mouse clicks, significantly enhancing productivity.
Other notable features include an object finder for navigating large models, a plugin development interface, support for geospatial data types (as implemented by the PostGIS extension), a translatable user interface, and much more. For a comprehensive overview of all pgModeler's features, visit the official documentation.