Mergeant manipulates two kinds of data: data provided by the DBMS and data provided by the user. The association of these two kinds of data enables Mergeant to perform some powerfull work. The data provided by the user completes the description of the database given by the DBMS (mainly more details about the structure).
When user defined data is given in place of DBMS data, it is given higher priority and is used instead of the one provided by the DBMS.
As of version 0.x, Mergeant automatically knows about the following elements in a database:
users: all the declared users in a given database will be recognized.
tables and views: all the tables and views will appear to the user, with their respective owner, and the structure of each table or view (individual fields and their attributes, and primary keys).
sequences: will also appear (with their owner).
data types: all the data types that can be used in a database will appear. Data types are the database builtin ones, and, if the DBMS supports it, some user defined ones.
functions: all the functions in the database will appear, wether they are functions or aggregates, and "system" or user-defined (if the DBMS supports it). The number and data types of each of the arguments are checked when using those functions.
foreign keys: this is planned but not yet implemented.
The user is allowed to provide informations about:
relations between fields of two tables (or within a single table).
comments on tables, or fields of tables: they can sometimes not be stored in the DBMS (either because there is no writing access or because the DBMS does not support it), so Mergeant allows the user to give comments on tables, fields, etc.
plugins usage: Mergeant can be extended using plugins (plugins are associated to data types and can be used to define a personnalized way of representing and interracting with data); the way plugins are used is chosen by the user.
the connection parameters: except the passwords, they will be saved.
all the information related to queries and the associated forms.