Hi there,

first of all, many thanks to Thomas Poling" for supplying his code about the database generator, i'm looking forward to work with it. I really think this could be a very valuable addition to EmpireDB. I compiled the code he supplied, read the documentation and tried to execute it with a hsql-database some of my fellow students and i designed 2 years ago. Unfortunately i could not get it running out of the box. I had to make the following two adjustments in order to get the classes generated.

CHANGE 1:    dbcodegen.db.Database:73
ResultSet tables = dbMeta.getTables(schemaName, null, "", new String[] {"TABLE"});
changed to:
ResultSet tables = dbMeta.getTables(null, schemaName, null, new String[] {"TABLE"});

CHANGE 2:    dbcodegen.db.Table:161
      ResultSet pkRs = dbMeta.getPrimaryKeys(null, schema, tableName);
changed to:
      ResultSet pkRs = dbMeta.getPrimaryKeys(schema, null, tableName);

The generated classes contain a lot of compilation errors, as the templates contain a few imports/references to classes like "tfmm.persistence.generated.TfmmDatabase". I'm going to play around with the templates soon and let you know more about my results.

Benjamin


Thomas Poling schrieb:
Greetings All:
Attached is the code generator to create table/record classes based on database schema meta-data.
Please read the Word document in the docs folder first.
I only have a MySQL database so I haven't tried to make it flexible enough to use with other databases. I'm hoping someone with a little more DB experience can investigate what it would take to use it with other databases. Please note that in the src folder all the classes under the tfmm folder are NOT part of the code generator. They are mostly the code that was generated based on my database. I've included the scripts for this database under the dbscripts folder. You can also ignore the EnumType class for now - I wanted to allow conversion between constrained strings in the DB and java enumerated types, but haven't gotten to this yet. Let me know what you think and if we might be able to use this as a starting point for something that could be included in a future release of EmpireDB. Thanks, Tom


Reply via email to