When modeling a database structure for PostgreSQL, we use a number of basic object names, such as table1, table2. In older versions, we also named new relationships with names like table1_table2. This general naming convention is sufficient in many cases, however, it was necessary to change these names manually. For example, when renaming table1 to customer. In this example, it was a good idea to change e.g. the name of the relationship, the name of the index, the alternative key, etc.
In Luna Modeler it is possible to synchronize these names automatically.
Basic object names
![Naming conventions for PostgreSQL - basic database object names](https://www.datensen.com/blog/wp-content/uploads/naming-conventions.webp)
After renaming table1 to user
- New name (1)
- Primary key name (2)
- Alternate key name (3)
- Index name (4)
![Changes after renaming table1 to user](https://www.datensen.com/blog/wp-content/uploads/naming-conventions-synchronized.webp)
Custom names
Also in this version, you have the option to keep custom object names. Therefore, if you override a name (1) that does not match the naming conventions set, it will be used and not overridden. If you decide to use automatic synchronization later, just click on the Reset name icon (2).
![Naming conventions and custom names](https://www.datensen.com/blog/wp-content/uploads/naming-conventions-custom-names.webp)
Naming convention settings
In the project settings (1 and 2), you can enable Naming conventions (3), choose whether or not to use synchronization for the PostgreSQL project and whether or not to include object names in the resulting SQL script (4).
![Naming conventions and synchronization settings for PostgreSQL.](https://www.datensen.com/blog/wp-content/uploads/naming-conventions-settings.webp)
Generated SQL script
An example of generated SQL script for PostgreSQL
![Script generated for PostgreSQL](https://www.datensen.com/blog/wp-content/uploads/naming-conventions-generated-sql-script.webp)
#