Hi Nathan. I’m working with the person who posted this question. Thanks for getting back to us so quickly.
I’m finding that for IDENTITY, Liquibase is not automatically substituting some generic numeric type if the database is Oracle. I’m a bit of newbie here, and I may be doing something wrong.
I have put together a programmatic interface to Liquibase, like this:
final Liquibase liquibase = new Liquibase(relativeLogFile, fileSystemFileOpener, db);
final String parms = "driver=" + driverName + ", url=" + url + ", defaultSchemaName=" + dbName + ", username=" + user + ", password=" + pswd + ", diffTypes=data, generateChangeLog";
final File file = new File("MyOutput.xml");
final FileWriter txt = new FileWriter(file);
final PrintWriter out = new PrintWriter(txt);
liquibase.update(parms, out);
When I plug in an Oracle url and driver, with a ChangeSet originally build from H2 (which supports IDENTITY), the resulting Update Database Script still tries to make fields IDENTITY.
Also, in your forum from a couple years ago, you seemed to say you were intentionally NOT handling this particular issue:
http://liquibase.jira.com/browse/CORE-137
(Frankly, I wouldn’t want to handle this issue either!)
We can work with the other solutions you suggested, but I wanted to confirm that I’m not missing something here, and we’ll need to handle IDENTITY in a special way. Is that right?
Thanks again for your help.