always feels odd to swallow an exception.  DataAccessException is the root of the exception hierarchy, so it catches anything that can go wrong taking to the database, not just the table not existing.  Most database will support "drop table if exists", hsql, mysql, postress..  So us the sql and then log the exception