Q: Why cannot my database work with MDM?
A: You need to check which versions of each database are supported.
Q: Does MDM support automatic database creation?
A: Yes, MDM supports automatic database creation. However, you need to ensure that the property "db.autoPrepare" in the mdm.conf file is set to "true" (any other value is equivalent to “false”). When the property is set to "true", you may see the following line in the log:
2014-05-14 17:58:45,772 29324 INFO [com.amalto.core.storage.hibernate.HibernateStorage] (main:) Preparing database before schema generation.
When it is set to "false", you may see this:
2014-05-14 13:26:58,107 INFO [com.amalto.core.storage.hibernate.HibernateStorage] *NOT* preparing database before schema generation.
Q: How could I delete all tables and let MDM recreate all the tables in Oracle?
A: The following script allows you to drop all tables in Oracle without deleting or recreating the tablespace.
Note that you need to run this script as the database user, not when connected as system or dba account.
declare v_str1 varchar2(200) := null; cursor get_sql is select 'drop '||object_type||' '|| object_name|| DECODE(OBJECT_TYPE,'TABLE',' CASCADE CONSTRAINTS PURGE') v_str1 from user_objects where object_type in ('TABLE','VIEW','PACKAGE','TYPE','PROCEDURE','FUNCTION','TRIGGER','SEQUENCE') order by object_type,object_name; begin open get_sql; loop fetch get_sql into v_str1; if get_sql%notfound then exit; end if; execute immediate v_str1; end loop; close get_sql; end; /