From: <ms...@us...> - 2008-10-30 19:12:56
|
Revision: 8508 http://wonder.svn.sourceforge.net/wonder/?rev=8508&view=rev Author: mschrag Date: 2008-10-30 19:12:34 +0000 (Thu, 30 Oct 2008) Log Message: ----------- dropTables convenience method Modified Paths: -------------- trunk/Wonder/Frameworks/Core/ERExtensions/Sources/er/extensions/jdbc/ERXJDBCUtilities.java Modified: trunk/Wonder/Frameworks/Core/ERExtensions/Sources/er/extensions/jdbc/ERXJDBCUtilities.java =================================================================== --- trunk/Wonder/Frameworks/Core/ERExtensions/Sources/er/extensions/jdbc/ERXJDBCUtilities.java 2008-10-30 16:04:52 UTC (rev 8507) +++ trunk/Wonder/Frameworks/Core/ERExtensions/Sources/er/extensions/jdbc/ERXJDBCUtilities.java 2008-10-30 19:12:34 UTC (rev 8508) @@ -708,6 +708,38 @@ } /** + * Drops tables, primary keys, and foreign keys for the tables in the + * given model. + * + * @param channel + * the channel to use for execution + * @param model + * the model to drop tables for + * @throws SQLException + * if something fails + */ + public static void dropTablesForModel(EOAdaptorChannel channel, EOModel model) throws SQLException { + ERXJDBCUtilities.dropTablesForEntities(channel, model.entities()); + } + + /** + * Drops tables, primary keys, and foreign keys for the given list of + * entities. This is useful in your Migration #0 class. + * + * @param channel + * the channel to use for execution + * @param entities + * the entities to drop tables for + * @throws SQLException + * if something fails + */ + public static void dropTablesForEntities(EOAdaptorChannel channel, NSArray<EOEntity> entities) throws SQLException { + ERXSQLHelper sqlHelper = ERXSQLHelper.newSQLHelper(channel); + String sqlScript = sqlHelper.createSchemaSQLForEntitiesWithOptions(entities, channel.adaptorContext().adaptor(), sqlHelper.defaultOptionDictionary(false, true)); + ERXJDBCUtilities.executeUpdateScript(channel, sqlScript); + } + + /** * Creates tables, primary keys, and foreign keys for the tables in the * given model. This is useful in your Migration #0 class. * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |