I wish to use ddlutils to compare two schemas to see if they are identical, and if not, where. I am starting with Oracle but will include DB2 plus some java based database for testing very soon.

I have the following snippet:

   private static Database getDatabase(String schema, String url,
           String username, String password, String name, Properties p)
           throws SQLException {
Connection jdbcConnection = DriverManager.getConnection(url, username,
               password);

       JdbcModelReader r = new JdbcModelReader();
       String thiscatalog = null;
       String thisschema = schema;
       Database d = r.getDatabase(jdbcConnection, thiscatalog, thisschema,
               new String[] {});
       Table[] t = d.getTables();
       System.out.println(Arrays.asList(t));

       return d;
   }

which I call like this:

           d = getDatabase(schema, url, username, password, name, p);
           new DatabaseIO().write(d, "vmtra03-axs.xml");

which returns the tables I expect (after upgrading to the 10g JDBC driver). It does not, however, return index information on the tables, which is needed too. I looked in the code, and saw that apparently this requires additional invocations to get loaded, but wanted to ask on the status on the list first.

I also expect to have to deal with sequences, but have not gotten that far yet.

Could a knowledgeable person let me know how to include index information to what I have?

Best Regards,
--
 Thorbjørn

Reply via email to