dbunitを使用してデータベースのバックアップを作成していますが、インポートおよびエクスポートが可能です。私のアプリケーションは、いくつかのデータベースエンジン、MySQL、PostgreSQL、SQLServer、H2、Oracleを使用することができます。Oracle + dbunitはAmbiguousTableNameExceptionを取得します
次のコードで上記の作業罰金のすべて:
// Connect to the database
conn =BackupManager.getInstance().getConnection();
IDatabaseConnection connection = new DatabaseConnection(conn);
InputSource xmlSource = new InputSource(new FileInputStream(new File(nameXML)));
FlatXmlProducer flatXmlProducer = new FlatXmlProducer(xmlSource);
flatXmlProducer.setColumnSensing(true);
DatabaseOperation.CLEAN_INSERT.execute(connection,new FlatXmlDataSet(flatXmlProducer));
しかし、オラクルに、私はこの例外を取得:docsから
!ENTRY es.giro.girlabel.backup 1 0 2012-04-11 11:51:40.542
!MESSAGE Start import backup
org.dbunit.database.AmbiguousTableNameException: AQ$_SCHEDULES
at org.dbunit.dataset.OrderedTableNameMap.add(OrderedTableNameMap.java:198)
at org.dbunit.database.DatabaseDataSet.initialize(DatabaseDataSet.java:231)
at org.dbunit.database.DatabaseDataSet.getTableMetaData(DatabaseDataSet.java:281)
at org.dbunit.operation.DeleteAllOperation.execute(DeleteAllOperation.java:109)
at org.dbunit.operation.CompositeOperation.execute(CompositeOperation.java:79)
at es.giro.girlabel.backup.ImportBackup.createData(ImportBackup.java:39)
at es.giro.girlabel.backup.handlers.Import.execute(Import.java:45)
ありがとう、私はすでにこの問題を解決しましたが、あなたが言及した解決策1でした。 –
私は[spring-dbunit](https://github.com/excilys/spring-dbunit)を使用していますが、ソリューション1)はシステムプロパティ[spring.dbunit.schema](https:// github .com/excilys/spring-dbunit/issues/18)。 –