DBUnit可以选择除NVARCHAR类型之外的所有MsSQL数据库表列。
当我选择NVARHCAR类型列的值时,它会抛出
org.dbunit.dataset.NoSuchColumnException: <table name>.<column name>
这是我的代码;
protected IDatabaseConnection getConnection() throws Exception {
Class driverClass = Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection jdbcConnection = DriverManager.getConnection("jdbc:sqlserver://localhost;databaseName=<dbName>;selectMethod=cursor", "sa", "sa");
return new DatabaseConnection(jdbcConnection);
}
public void test() {
IDataSet databaseDataSet = getConnection().createDataSet();
ITable actualTable = databaseDataSet.getTable("Table");
actualTable.getValue(0, "Description"); // throws exception here. 'Description' is NVARCHAR
}
答案 0 :(得分:1)
当我使用JNetDirect JSQLConnect的驱动程序而不是Microsoft JDBC驱动程序时,它会识别NVARCHAR。 但对于只有1个数据库连接的单个用户来说它是免费的。 我是从here
找到的