After hacking away the last couple of days, dbscript finally is able to perform another trick: Importing database schemas from PostgreSQL databases using the Npgsql data provider.
Internally, the database abstraction layer is now completely based on interfaces as sketched in a previous post. Rather than asking a Database Engine object, “can you do this, and can you do this?” giving boolean answers, we ask the object: do you implement a functionality and all the required methods, which is a simple “is” operation.
The other aspect is that the newly created data access layer simplifies handling the differences between the database engines (object types, table columns, etc).
These differences also resulted in a reference from XSLT style sheets to a Database Engine to allow more specific content creation in Document Generators.
So here are the new documentation samples, based on the data model of OpenNMS:
The data diagram of the OpenNMS database schema:
PostgreSQL is the 3rd database engine supported by dbscript, after MS SQL Server and Oracle.
Please note that this version still needs some polish. The most current stable version is available for download here.
Pingback: Creating HTML documentation of PostgreSQL databases « devioblog
Pingback: Version 0.98 of dbscript Released « devioblog
Pingback: Creating Dia Data Diagrams from Database Schema « devioblog