in

The ORM Foundation

Get the facts!

Adding Support for Additional Databases

Last post Thu, Sep 18 2008 11:15 by Matthew Curland. 1 replies.
Page 1 of 1 (2 items)
Sort Posts: Previous Next
  • Thu, Sep 18 2008 10:51

    • rjperes
    • Top 100 Contributor
    • Joined on Thu, Sep 18 2008
    • Posts 4

    Adding Support for Additional Databases

    Hi,

    What would it take to add support for additional databases, apart from SQL Server, PostgreSQL, Oracle, MySQL, DB2 and SQL Standard?

    What I mean is: what classes are involved in the process of generating the DDL scripts for each of these DBs, and how can I implement support for additional ones, such as, for example, Access?

     

    Thanks,

     

    Ricardo Peres

    Filed under:
  • Thu, Sep 18 2008 11:15 In reply to

    Re: Adding Support for Additional Databases

    All of the DDL generation is done with overrides to the SQL standard generation. The code is written in XSLT. To add your own DDL flavor:

    1. Add a generator file to C:\Program Files\Common Files\Neumont\DIL\Transforms based on an existing DDILto*.xslt file
    2. Add a registry entry under HKEY_LOCAL_MACHINE\SOFTWARE\Neumont\ORM Architect for Visual Studio 2005\Generators and/or HKEY_LOCAL_MACHINE\SOFTWARE\Neumont\ORM Architect for Visual Studio 2008\Generators based on one of the other DDILtoDBTARGET registry entries

    These transforms take a single input format, which makes them a little easier to debug than some of the other transforms. Open your XSLT in VS, put an appropriate breakpoint either the DDILtoSQLStandard.xslt file or your own, make sure your XSLT is activate and use the XSLT menu to start a debug session. You will be prompted for the input file, which will be the DDIL format generator for one of the other databases.

    Adding import for other databases does take some code, you need to add classes for a specific provider type in the Tools\DatabaseImport directory. This is a little harder because it involves rebuilding the NORMA code, which should generally only be attempted if you do not have a setup install of NORMA.

     -Matt

Page 1 of 1 (2 items)
© 2008-2024 ------- Terms of Service