perform_operation


Description:

public bool perform_operation () throws Error

After population this with all data this method may be called to trigger code and modify user database.

This is the main method to work with database. For retrieving information from database to an xml file use parse_cnc and write_node.

Connection can be added as a property using @set call and should be opened to use this method. See open method for reference.

Only table can be created. Views are ignored

Each table from database compared with each table in the DbCatalog instance. If the table doesn't exist in database, it will be created (CREATE_TABLE). If table exists in the database and xml file, all columns will be checked. If columns are present in xml file but not in the database it will be created (ADD_COLUMN). If column exists but has different parameters, e.g. nonnull it will not be modified.

Note: Pkeys are not checked. This is a limitation that should be removed. The corresponding issue was open on gitlab page.

Parameters:

this

a DbCatalog object