H2 1.4.191。
数据库单元 2.5.1。
如何解决这个问题?
3种情况的代码和结果:
org.dbunit.dataset.NoSuchTableException: category
org.dbunit.dataset.NoSuchTableException: Category
org.dbunit.dataset.NoSuchTableException: CATEGORY
//
<dataset>
<Category categoryId="9223372036854775806"
categoryName="NAME"
categoryParentId="9223372036854775805"/>
</dataset>
//
CREATE TABLE Category (
categoryId INT AUTO_INCREMENT,
categoryName VARCHAR NOT NULL,
categoryParentId INT NOT NULL,
PRIMARY KEY (categoryId)
)
//Check - tried to recreate
org.h2.jdbc.JdbcSQLException: Table "CATEGORY" already exists;
有时,当您使用 dbunit 时,您需要定义尝试使用表的模式,也许您可以尝试添加
<dataset>
<schema.Category categoryId="9223372036854775806"
categoryName="NAME"
categoryParentId="9223372036854775805"/>
</dataset>
如果没有检查您正在使用的数据源,则可能您没有指向正确的数据库或架构。
对于 dbunit 我们有一些特性 http://dbunit.sourceforge.net/properties.html考虑使用Qualified table names
属性如下。
DatabaseConfig dBConfig = dBConn.getConfig(); // dBConn is a IDatabaseConnection
dBConfig.setProperty(DatabaseConfig.FEATURE_QUALIFIED_TABLE_NAMES, true);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)