我将java与mysql数据库结合使用,当我尝试运行测试时,我收到一条消息:org.dbunit.dataset.datasetexception:java.sql.sqlsyntaxerrorexception:信息\架构中的未知表“my\ table”看起来dbunit无法访问表的元数据。你知道吗?谢谢
wrrgggsh1#
我也遇到过同样的问题。现在看来 DBUnit (2.6.0)与的最新版本不兼容 mysql-connector-java . 我修改了 mysql-connector-java 至 5.*.* .如果它不起作用。您可以尝试自己指定模式。要做到这一点,你需要创建一个 IDataBaseConnection 豆
DBUnit
mysql-connector-java
5.*.*
IDataBaseConnection
@Bean("mysqlTestSource") public IDatabaseConnection databaseConnection(DataSource dataSource) throws SQLException, DatabaseUnitException { return new MySqlConnection(dataSource.getConnection(), YOUR_SCHEMA_NAME); }
然后要求dbunit通过向测试类添加此注解来使用此连接
@DbUnitConfiguration(databaseConnection = "mysqlTestSource")
希望有帮助。
8oomwypt2#
可能是架构混乱的问题-模棱两可的NameException faq条目应该可以解决这个问题。
2条答案
按热度按时间wrrgggsh1#
我也遇到过同样的问题。现在看来
DBUnit
(2.6.0)与的最新版本不兼容mysql-connector-java
. 我修改了mysql-connector-java
至5.*.*
.如果它不起作用。您可以尝试自己指定模式。要做到这一点,你需要创建一个
IDataBaseConnection
豆然后要求dbunit通过向测试类添加此注解来使用此连接
希望有帮助。
8oomwypt2#
可能是架构混乱的问题-模棱两可的NameException faq条目应该可以解决这个问题。