DatabaseGenerator
The DatabaseGenerator package creates interface modules for a given object schema, which allow persistant storage of perl modules in a mysql database. The DatabaseGenerator module is only required at creation time.
Multiple Database Access
Multiple Schema Support
Simplified Access Methods
Single Object Acess Module
A single access module is created for all objects. Stub modules are created for each module to enable special object methods.
Multiple schemas which are imported into different databases of the same database server can be integrated into a single object-model
The access methods for object creation and deletion as well as getting and setting object attributes have been simplified to take attribute/value pairs for selection instead of an ordered list of values.
Within one database server, any number of databases can be accessed.
DatabaseGenerator allows you to integrate multiple object schemas. In the following, a single object schema, which is made persistant in a distinct database will be called a module. Multiple modules can be integrated into a single project. To do this, create multiple schemas with the same project name.
DatabaseGenerator schemata are written in comprehensive xml. See 'DatabaseGeneratorExample.xml' for details.
In order to deploy a DatabaseGenerator schema, create a perl script, using this package. Execute DatabaseGenerator->deploy, passing the xml-filename and the destination directory. DatabaseGenerator then creates an sql file to import into your module database, a directory with stubs for all object classes and a perl module which controls access to the objects of your schema. Also, if no project module exits, it is created. If a project module of that name already exists, the new schema will be automatically integrated.
For information about accessing objects of your schemata, please refer to the documentation of the DBObject module.
The deploy function creates all necessary files from the passed schema