diff --git a/jOOQ-test/.classpath b/jOOQ-test/.classpath
index 8f64bb8089..d051989ac3 100644
--- a/jOOQ-test/.classpath
+++ b/jOOQ-test/.classpath
@@ -21,7 +21,7 @@
-
+
diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/library-jtds.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/library-jtds.xml
new file mode 100644
index 0000000000..dbce0b7c77
--- /dev/null
+++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/library-jtds.xml
@@ -0,0 +1,10 @@
+
+
+
+ net.sourceforge.jtds.jdbc.Driver
+ jdbc:jtds:sqlserver://localhost:1433;databaseName=test;integratedSecurity=true
+ dbo
+
+
+
+
diff --git a/jOOQ-test/launch/GenerationTool Sybase ASE test.launch b/jOOQ-test/launch/GenerationTool Sybase ASE test.launch
index 9d48179cca..a4788c6a77 100644
--- a/jOOQ-test/launch/GenerationTool Sybase ASE test.launch
+++ b/jOOQ-test/launch/GenerationTool Sybase ASE test.launch
@@ -23,7 +23,7 @@
-
+
diff --git a/jOOQ-test/launch/Meta-Generate Sybase ASE sys.launch b/jOOQ-test/launch/Meta-Generate Sybase ASE sys.launch
index a394d7a6b9..1caa5a9098 100644
--- a/jOOQ-test/launch/Meta-Generate Sybase ASE sys.launch
+++ b/jOOQ-test/launch/Meta-Generate Sybase ASE sys.launch
@@ -19,7 +19,7 @@
-
+
diff --git a/jOOQ-test/launch/SQLServerTest (jTDS).launch b/jOOQ-test/launch/SQLServerTest (jTDS).launch
new file mode 100644
index 0000000000..8ae0c892cb
--- /dev/null
+++ b/jOOQ-test/launch/SQLServerTest (jTDS).launch
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/jOOQ-test/lib/jtds-1.2.5.jar b/jOOQ-test/lib/jtds-1.2.5.jar
deleted file mode 100644
index 79ba560b61..0000000000
Binary files a/jOOQ-test/lib/jtds-1.2.5.jar and /dev/null differ
diff --git a/jOOQ-test/lib/jtds-1.3.1.jar b/jOOQ-test/lib/jtds-1.3.1.jar
new file mode 100644
index 0000000000..d86686051f
Binary files /dev/null and b/jOOQ-test/lib/jtds-1.3.1.jar differ
diff --git a/jOOQ-test/lib/sqlite-jdbc-3.7.2.jar b/jOOQ-test/lib/sqlite-jdbc-3.7.2.jar
deleted file mode 100644
index b0bec7b000..0000000000
Binary files a/jOOQ-test/lib/sqlite-jdbc-3.7.2.jar and /dev/null differ
diff --git a/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java b/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java
index 631172cdd8..4b3bc0dbd3 100644
--- a/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java
+++ b/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java
@@ -53,6 +53,7 @@ import java.math.BigDecimal;
import java.math.BigInteger;
import java.sql.Connection;
import java.sql.Date;
+import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.SQLSyntaxErrorException;
@@ -362,6 +363,10 @@ public abstract class jOOQAbstractTest<
}
}
+ else if (e.getMessage().startsWith("Cannot drop")) {
+ continue;
+ }
+
// There is no DROP SEQUENCE IF EXISTS statement in Sybase
else if (e.getClass().getName().startsWith("com.sybase")) {
if (sql.contains("DROP SEQUENCE")) {
@@ -654,19 +659,22 @@ public abstract class jOOQAbstractTest<
jdbc.getPassword() != null ? jdbc.getPassword() :
getProperty(jdbc.getProperties(), "password");
- Class.forName(driver);
- if (StringUtils.isBlank(jdbcUser)) {
- Properties p = new Properties();
-
- if (getClass().getSimpleName().toLowerCase().contains("ingres")) {
- p.setProperty("timezone", "EUROPE-CENTRAL");
- }
-
- return DriverManager.getConnection(getJdbcURL(), p);
+ Properties info = new Properties();
+ if (getClass().getSimpleName().toLowerCase().contains("ingres")) {
+ info.setProperty("timezone", "EUROPE-CENTRAL");
+ }
+ Driver d = ((Driver) Class.forName(driver).newInstance());
+ if (!StringUtils.isBlank(jdbcUser)) {
+ info.put("user", jdbcUser);
+ info.put("password", jdbcPassword);
}
else {
return DriverManager.getConnection(getJdbcURL(), jdbcUser, jdbcPassword);
}
+
+ return d != null
+ ? d.connect(getJdbcURL(), info)
+ : DriverManager.getConnection(getJdbcURL(), info);
}
catch (Exception e) {
throw new Error(e);