PowerDesigner supports reverse engineering and generation through both scripts and live database connections.
In this section:
Statements for script generation, script reverse engineering, and live database generation are identical, whereas live database reverse engineering may require specific queries.
The processes of generation and reverse-engineering can be defined as follows:
Generation - statements are parsed and variables are evaluated and replaced by their actual values taken from the current model. The same statements are used for script and live database generation.
Reverse engineering – may be performed by:
Script - PowerDesigner parses the script and identifies the different statements thanks to the terminator (defined in Script\Sql\Syntax). Each individual statement is "associated" with an existing statement in the DBMS definition file in order to commit the variables in the reversed statement as items in a PowerDesigner model.
Live database connection - special queries are used to retrieve information from the database system tables. Each column of a query result set is associated with a variable. The query header specifies the association between the columns of the resultset and the variable. The values of the returned records are stored in these variables which are then committed as object attributes.
For more information on variables, see Optional strings and variables.